diff --git a/rhein/page/default_page/default_page.js b/rhein/page/default_page/default_page.js
index dea7a8f..9d2eb9a 100644
--- a/rhein/page/default_page/default_page.js
+++ b/rhein/page/default_page/default_page.js
@@ -4,9 +4,10 @@ $(document).ready(function() {
$('#menu div').removeClass('aktmenuitem');
$(this).addClass('aktmenulink');
$(this).parent().addClass('aktmenuitem');
- $('#content').load('http://mojotrollz.eu/web/rhein/index.php?page='+$(this).attr('page'),function(){
- if($(this).attr('page') == 'anreise'){
- initialize_map();}
+ page = $(this).attr('page');
+ $('#content').load('http://mojotrollz.eu/web/rhein/index.php?page='+page,function(){
+ if(page === 'anreise'){
+ drawmap();}
});
});
});
\ No newline at end of file
diff --git a/rhein/page/default_page/default_page.php b/rhein/page/default_page/default_page.php
index c0bf367..e9273be 100644
--- a/rhein/page/default_page/default_page.php
+++ b/rhein/page/default_page/default_page.php
@@ -4,9 +4,10 @@ class default_page extends SYSTEM\PAGE\Page {
public static function js(){
return ''.
''.
+ ''.
+ ''.
''.
- ''.
- '';
+ '';
}
public static function css(){
return ''.
diff --git a/rhein/page/default_page/googlemap.js b/rhein/page/default_page/googlemap.js
deleted file mode 100644
index 87ecf7f..0000000
--- a/rhein/page/default_page/googlemap.js
+++ /dev/null
@@ -1,18 +0,0 @@
-function initialize_map()
-{
- if (GBrowserIsCompatible())
- {
- var map = new GMap2(document.getElementById("map_canvas"),{ size: new GSize(575,450) });
- map.enableScrollWheelZoom();
- map.setCenter(new GLatLng(49.727620, 8.611300), 14);
- map.addControl(new GSmallMapControl());
- map.addControl(new GMapTypeControl());
-
- var latlng = new GLatLng(49.732810, 8.608990);
- map.addOverlay(new GMarker(latlng,{draggable: true}));
- map.openInfoWindowHtml(latlng,"
Ferienwohnung Rhein
Lange Hart 30");
-
- //var latlng2 = new GLatLng(49.725631, 8.609151);
- //map.addOverlay(new GMarker(latlng2,{draggable: true}));
- }
-}
\ No newline at end of file
diff --git a/rhein/page/default_page/map.js b/rhein/page/default_page/map.js
new file mode 100644
index 0000000..0e5b7a1
--- /dev/null
+++ b/rhein/page/default_page/map.js
@@ -0,0 +1,123 @@
+/*function initialize_map()
+{
+ if (GBrowserIsCompatible())
+ {
+ var map = new GMap2(document.getElementById("map_canvas"),{ size: new GSize(575,450) });
+ map.enableScrollWheelZoom();
+ map.setCenter(new GLatLng(49.727620, 8.611300), 14);
+ map.addControl(new GSmallMapControl());
+ map.addControl(new GMapTypeControl());
+
+ var latlng = new GLatLng(49.732810, 8.608990);
+ map.addOverlay(new GMarker(latlng,{draggable: true}));
+ map.openInfoWindowHtml(latlng,"");
+
+ //var latlng2 = new GLatLng(49.725631, 8.609151);
+ //map.addOverlay(new GMarker(latlng2,{draggable: true}));
+ }
+}*/
+
+var map;
+var layer_mapnik;
+var layer_tah;
+var layer_markers;
+
+function drawmap() {
+ // Popup und Popuptext mit evtl. Grafik
+ var popuptext="Ferienwohnung Rhein
Lange Hart 30
64673 Zwingenberg
";
+
+ OpenLayers.Lang.setCode('de');
+
+ // Position und Zoomstufe der Karte
+ var lon = 8.60884488;
+ var lat = 49.73296614;
+ var zoom = 17;
+
+ map = new OpenLayers.Map('map', {
+ projection: new OpenLayers.Projection("EPSG:900913"),
+ displayProjection: new OpenLayers.Projection("EPSG:4326"),
+ controls: [
+ new OpenLayers.Control.Navigation(),
+ //new OpenLayers.Control.LayerSwitcher(),
+ new OpenLayers.Control.PanZoomBar()],
+ //maxExtent:
+ // new OpenLayers.Bounds(-20037508.34,-20037508.34,
+ // 20037508.34, 20037508.34),
+ numZoomLevels: 18,
+ maxResolution: 156543,
+ units: 'meters'
+ });
+
+ layer_mapnik = new OpenLayers.Layer.OSM.Mapnik("Mapnik");
+ layer_markers = new OpenLayers.Layer.Markers("Address", { projection: new OpenLayers.Projection("EPSG:4326"),
+ visibility: true, displayInLayerSwitcher: false });
+
+ map.addLayers([layer_mapnik, layer_markers]);
+ jumpTo(lon, lat, zoom);
+
+ // Position des Markers
+ addMarker(layer_markers, 8.60884488, 49.73296614, popuptext);
+
+}
+function jumpTo(lon, lat, zoom) {
+ var x = Lon2Merc(lon);
+ var y = Lat2Merc(lat);
+ map.setCenter(new OpenLayers.LonLat(x, y), zoom);
+ return false;
+}
+function Lon2Merc(lon) {
+ return 20037508.34 * lon / 180;
+}
+
+function Lat2Merc(lat) {
+ var PI = 3.14159265358979323846;
+ lat = Math.log(Math.tan( (90 + lat) * PI / 360)) / (PI / 180);
+ return 20037508.34 * lat / 180;
+}
+
+function addMarker(layer, lon, lat, popupContentHTML) {
+
+ var ll = new OpenLayers.LonLat(Lon2Merc(lon), Lat2Merc(lat));
+ var feature = new OpenLayers.Feature(layer, ll);
+ feature.closeBox = true;
+ feature.popupClass = OpenLayers.Class(OpenLayers.Popup.FramedCloud, {minSize: new OpenLayers.Size(300, 180) } );
+ feature.data.popupContentHTML = popupContentHTML;
+ feature.data.overflow = "hidden";
+
+ var marker = new OpenLayers.Marker(ll);
+ marker.feature = feature;
+
+ var markerClick = function(evt) {
+ if (this.popup == null) {
+ this.popup = this.createPopup(this.closeBox);
+ map.addPopup(this.popup);
+ this.popup.show();
+ } else {
+ this.popup.toggle();
+ }
+ OpenLayers.Event.stop(evt);
+ };
+ marker.events.register("mousedown", feature, markerClick);
+
+ layer.addMarker(marker);
+ map.addPopup(feature.createPopup(feature.closeBox));
+}
+
+function getCycleTileURL(bounds) {
+ var res = this.map.getResolution();
+ var x = Math.round((bounds.left - this.maxExtent.left) / (res * this.tileSize.w));
+ var y = Math.round((this.maxExtent.top - bounds.top) / (res * this.tileSize.h));
+ var z = this.map.getZoom();
+ var limit = Math.pow(2, z);
+
+ if (y < 0 || y >= limit)
+ {
+ return null;
+ }
+ else
+ {
+ x = ((x % limit) + limit) % limit;
+
+ return this.url + z + "/" + x + "/" + y + "." + this.type;
+ }
+}
\ No newline at end of file