OSM plugin: new config option to specify the url to fetch maps from

master
Geneviève Bastien 2012-08-06 23:00:31 -04:00 committed by Antoine Beaupré
parent b46e057932
commit 8fb42f42f4
2 changed files with 19 additions and 1 deletions

View File

@ -67,6 +67,13 @@ sub getsetup () {
safe => 0,
rebuild => 1,
},
osm_map_url => {
type => "string",
example => "/tiles/\${z}/\${x}/\${y}.png",
description => "Url to get map tiles from (if none specified, uses the openstreetmap server, see http://wiki.openstreetmap.org/wiki/Creating_your_own_tiles for more info on serving your own tiles)",
safe => 0,
rebuild => 1,
},
}
@ -540,6 +547,8 @@ sub map_setup_code($;@) {
my $name=shift;
my %options=@_;
my $mapurl = $config{osm_map_url};
eval q{use JSON};
error $@ if $@;
@ -556,6 +565,10 @@ sub map_setup_code($;@) {
$options{'kmlurl'} = urlto($map."/pois.kml");
}
if ($mapurl) {
$options{'mapurl'} = $mapurl;
}
return "mapsetup('mapdiv-$name', " . to_json(\%options) . ");";
}

View File

@ -37,8 +37,13 @@ function mapsetup(divname, options) {
numZoomLevels: 18
});
if (options.mapurl) {
var newLayer = new OpenLayers.Layer.OSM("Local Tiles", options.mapurl, {numZoomLevels: 19, isBaseLayer: true});
map.addLayer(newLayer);
} else {
map.addLayer(new OpenLayers.Layer.OSM());
}
map.addLayer(new OpenLayers.Layer.OSM());
if (options.format == 'CSV') {
pois = new OpenLayers.Layer.Text( "CSV",
{ location: options.csvurl,