// Google Maps JavaCode für lw-heute.de

var gInitMapLat = "";
var gInitMapLng = "";
var gInitMapZoom = "";

var gmarkers = [];
var htmls = [];
var to_htmls = [];
var from_htmls = [];
var i=0;

// Erstellt das Markierungssymbol
var greenIcon = new GIcon(G_DEFAULT_ICON);
greenIcon.image = "http://www.google.com/intl/en_us/mapfiles/ms/micons/green.png";
                
// Richtet das GMarkerOptions-Objekt ein
markerOptions = { icon:greenIcon };


function load() {
  if(GBrowserIsCompatible()) {
	if(gPoiEvents.length == 1) {
		gInitMapLat = gPoiEvents[0]["lat"];
		gInitMapLng = gPoiEvents[0]["lng"];
		gInitMapZoom = 7;
	} else { 
		gInitMapLat = 50.5840070;
		gInitMapLng = 8.6782470;
		gInitMapZoom = 7;
	}
	
	map = new GMap2(document.getElementById("map_canvas"));
	map.addControl(new GLargeMapControl());
	map.addControl(new GOverviewMapControl());
	map.addControl(new GMapTypeControl());
	map.setCenter(new GLatLng(gInitMapLat, gInitMapLng), gInitMapZoom);
	window.setTimeout(ShowMap, 0);
  }
}

function ShowMap() {
	mgr = new MarkerManager(map);
	batch = [];
	for(var i=0; i < gPoiEvents.length; i++){
		if(gPoiEvents[i]) {
			var point = new GLatLng(gPoiEvents[i]["lat"], gPoiEvents[i]["lng"]);
			// var tid = gPoiEvents[i]["tid"];
			var html = gPoiEvents[i]["html"];
			var type = gPoiEvents[i]["type"];
			if(type == "route") {
				var marke = createMarkerRoute(point, html);
			} else {
				var marke = createMarker(point, html);
			}
			batch.push(marke);
		}
	}
	mgr.addMarkers(batch, 5);
	mgr.refresh();
}

function createMarkerRoute(point, html) {
    var marker = new GMarker(point,G_DEFAULT_ICON);

    to_htmls[i] = html + '<br>Route: <b>nach hier</b> - <a href="javascript:fromhere(' + i + ')">von hier</a>' +
        '<br>Start Addresse:<form action="http://maps.google.com/maps" method="get" target="_blank">' +
        '<input type="text" SIZE=40 MAXLENGTH=40 name="saddr" id="saddr" value="" /><br>' +
        '<INPUT value="Zeige Route" TYPE="SUBMIT">' +
        '<input type="hidden" name="daddr" value="' + point.lat() + ',' + point.lng() + 
        '"/>';

    from_htmls[i] = html + '<br>Route: <a href="javascript:tohere(' + i + ')">nach hier</a> - <b>von hier</b>' +
        '<br>Ziel Addresse:<form action="http://maps.google.com/maps" method="get"" target="_blank">' +
        '<input type="text" SIZE=40 MAXLENGTH=40 name="daddr" id="daddr" value="" /><br>' +
        '<INPUT value="Zeige Route" TYPE="SUBMIT">' +
        '<input type="hidden" name="saddr" value="' + point.lat() + ',' + point.lng() +
        '"/>';

    html = html + '<br><strong>Route: </strong><a href="javascript:tohere('+i+')">nach hier</a> - <a href="javascript:fromhere('+i+')">von hier</a>';

    GEvent.addListener(marker, "mouseover", function() {
        marker.openInfoWindowHtml(html);
    });
    gmarkers[i] = marker;
    htmls[i] = html;
    i++;
    return marker;
}

function tohere(i) {
    gmarkers[i].openInfoWindowHtml(to_htmls[i]);
}

function fromhere(i) {
    gmarkers[i].openInfoWindowHtml(from_htmls[i]);
}

function createMarker(point, html) {
	var marker = new GMarker(point,G_DEFAULT_ICON);
	// var html = "<b>" + title + "</b><br><a href=\"http://lw-heute.de/index.php?redid=17701&TID=" + tid + "\">Details anzeigen</a>";
	GEvent.addListener(marker, "mouseover", function() {
		marker.openInfoWindowHtml(html);
	});
	return marker;
}

function blow() {
	var oldHeight = document.getElementById('map_canvas').style.height;
	height = oldHeight.split("px");
	if(parseInt(height[0]) < 600) {
		// alert(height[0]);
		newHeight = parseInt(height[0]) + 100 + 'px';
		// alert(newHeight);
		document.getElementById('map_canvas').style.height = newHeight;
	}
}

function shrink(newHeight) {
	var oldHeight = document.getElementById('map_canvas').style.height;
	height = oldHeight.split("px");
	if(parseInt(height[0]) > 300) {
		// alert(height[0]);
		newHeight = parseInt(height[0]) - 100 + 'px';
		// alert(newHeight);
		document.getElementById('map_canvas').style.height = newHeight;
	}
}
