MediaWiki:GeoHack2.js

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια

Μετά την αποθήκευση πρέπει να καθαρίσετε την κρυφή μνήμη (cache) του browser σας για να δείτε τις αλλαγές: Σε Chrome, Firefox, Safari, Internet Explorer και Edge: Κρατήστε πατημένο το Shift και κάντε κλικ στο κουμπί Ανανέωση στην μπάρα εργαλείων.

/* Embed an MAP map on div id="mapEmbed" exists
 * This script is loaded by https://tools.wmflabs.org/geohack/, see also [[Template:GeoTemplate]]
 */
var MAP_class_R = /\bMAP:([\d.+-]+)_([\d.+-]+)_([\d.+-]+)_(\w+)/;
function embedOpenStreetMap() {
    clearInterval(maptimer);
    var mapTarget = document.getElementById('mapEmbed');
    if(mapTarget && MAP_class_R.exec(mapTarget.className)){
        var lat=1.0*RegExp.$1, lon=1.0*RegExp.$2, zoom=RegExp.$3;
        var span = 360.0/(512.0*Math.pow(2,zoom))*720/2;  //WTF?
        iframe = document.createElement('iframe');
        iframe.frameBorder = 0; // IE 6
        iframe.scrolling = 'no';
        iframe.src = "//tools.wmflabs.org/wiwosm/osm-on-ol/embed-labs.html?layer="+RegExp.$4+"&bbox=" + 
           (lon-span*Math.cos(lat*.0175))+','+(lat-span/2)+','+(lon+span*Math.cos(lat*.0175))+','+(lat+span/2)+
            "&marker="+lat+','+lon;
        iframe.height = mapTarget.clientHeight+'px';
        iframe.width = mapTarget.clientWidth+'px';
        iframe.style.position = "relative";
        mapTarget.appendChild(iframe);
    }
}
maptimer = setInterval("if(document.getElementById('mapEmbed'))embedOpenStreetMap()", 200)
setTimeout('clearInterval(maptimer)', 5000)