// Using OpenStreetMap in Wikipedia.
// (c) 2008 by Magnus Manske
// heavily altered by [[m:User:Danmichaelo]], [[m:User:Hoo man]]
// Released under GPL
mw.loader.using('mediawiki.util', function() {
function openStreetMapToggle() {
var a = $( '#coordinates a' ),
link = '',
url = '';
if (a.length === 0) {
return;
}
if ($('#openstreetmap').length > 0) {
$('#openstreetmap').toggle();
return false;
}
$.each(a, function(index, value) {
if ( value.href.indexOf('geohack') === -1 ) {
return true; // Returning non-false is the same as a continue
}
link = value.href;
return false; // break
});
if (link === '') {
return false; // No geohack link found
}
url = '//toolserver.org/~kolossos/openlayers/kml-on-ol.php?lang=' + osm_proj_lang + '&uselang=' + mw.config.get('wgUserLanguage') + '¶ms=' + link.split('params=')[1] + '&title=' + mw.util.wikiUrlencode( mw.config.get( 'wgTitle' ) );
if ( window.location.protocol === 'https:' ) {
url += '&secure=1';
}
$('#contentSub').append(
// src has to be passed using .attr as it could contain malicious html!
$('').attr('src', url)
);
return false;
}
$(document).ready(function() {
var a = $('#coordinates a'),
geohack = false;
if (a.length === 0) {
return;
}
$.each(a, function(index, value) {
if ( value.href.indexOf('geohack') === -1 ) {
return true;
}
if (value.href.indexOf('_globe:') !== -1) {
return true; // no OSM for moon, mars, etc
}
geohack = true;
return false;
});
if (!geohack) {
return;
}
$('#coordinates').append(
' (',
$('' + osm_proj_map + '').click(openStreetMapToggle),
') '
);
});
});