1 function init_wrmap(i, jq_map) {
3 var jq_sledruns = jq_map.children();
6 // Introduce EPSG:3857 as an alias of the built in EPSG:900913 projection (both are the "Google/OSM" projections)
7 var EPSG4326 = new OpenLayers.Projection("EPSG:4326"); // lon/lat
8 var EPSG3857 = new OpenLayers.Projection("EPSG:3857"); // google
11 var map = new OpenLayers.Map(jq_map.context, {
13 displayProjection: EPSG4326,
19 var layer_map = new OpenLayers.Layer.Google("Google Physical", {
20 type: google.maps.MapTypeId.TERRAIN
23 // // Alternative: OSM map
24 // var layer_map = new OpenLayers.Layer.OSM();
26 // // Alternative: Microsoft Bing Maps
27 // var layer_map = new OpenLayers.Layer.Bing({
29 // key: "AgPH3SlIXAwajrJKf0FORQyhTqsP8KIlvtN6RKfvxe6fOB6q6-HFmg8EOFm7LSOA"});
32 var layer_sledruns = new OpenLayers.Layer.Vector("Rodelbahnen", {
33 styleMap: new OpenLayers.StyleMap({
34 "default": new OpenLayers.Style({
35 externalGraphic: "/vorlagen/gmap_rodelbahn_c.png",
41 backgroundGraphic: "/vorlagen/gmap_rodelbahn_c_s.png",
49 "highlight": new OpenLayers.Style({
51 labelOutlineColor: "white",
56 rendererOptions: {yOrdering: true}
58 jq_sledruns.each(function(j, jq_sledrun) {
59 jq_sledrun = $(jq_sledrun);
60 var lon = parseFloat(jq_sledrun.attr('data-lon'));
61 var lat = parseFloat(jq_sledrun.attr('data-lat'));
62 var point = new OpenLayers.Geometry.Point(lon, lat).transform(EPSG4326, EPSG3857);
63 layer_sledruns.addFeatures([new OpenLayers.Feature.Vector(point, {label: jq_sledrun.attr('data-title')})]);
65 map.addControl(new OpenLayers.Control.SelectFeature(layer_sledruns, {
69 renderIntent: "highlight"
73 map.addLayers([layer_map, layer_sledruns]);
74 var lon = parseFloat(jq_map.attr('data-center-lon'));
75 var lat = parseFloat(jq_map.attr('data-center-lat'));
76 var zoom = parseInt(jq_map.attr('data-zoom'));
77 map.setCenter(new OpenLayers.LonLat(lon, lat).transform(EPSG4326, map.getProjectionObject()), zoom);
82 function init_wrmaps() {
83 var jq_maps = $('.wrmap'); // all wrmap <div> elements
84 jq_maps.each(init_wrmap);
88 $(document).ready(init_wrmaps);