var map;
var icon;
var n = 1;
var geocoder;
var marker1;
//var marker;
var latlng;
//var point=[];
var info=[];

var points = [];
var gmarkers = [];
var htmls = [];
var to_htmls = [];
var from_htmls = [];


function load(lat,lon) {
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("map"));
map.setUIToDefault();
latlng = new GLatLng(lat,lon);
map.setCenter(latlng,11); // 12 = Zoomfaktor f&uuml;r die &Uuml;bersicht bei 750x580

// Ein Symbol erstellen
icon = new GIcon();
icon.image = "icon.png";
icon.iconSize = new GSize(38, 17);
icon.iconAnchor = new GPoint(15,15);
icon.infoWindowAnchor = new GPoint(15,15);

setAllIcons();
}
}

function  setAllIcons() {
geocoder = new GClientGeocoder() ;
marker1 = new GMarker(latlng);
map.addOverlay(marker1);
	for (var i=0;i<tankstellen.length;i++) {
		id = tankstellen[i]['id'];
		ort = tankstellen[i]['ort'];
		plz = tankstellen[i]['plz'];
		strasse = tankstellen[i]['strasse'];
		adresse = strasse + ',' + plz + ' ' + ort;
		typ = tankstellen[i]['typ'];
	    lat = tankstellen[i]['lat'];
		lon = tankstellen[i]['lon'];
	    point = new GLatLng(lat,lon);
		info = typ+" "+plz+" "+ort;
		infohtml = "<div style='width:220px;color:#4A135B;font-family:verdana;font-size:12px;font-weight:bold'><a style='text-decoration: none;color:#4A135B\' href=\"/index.php?con=tsfinder_details&login="+login+"&id="+id+"\">"+typ+"</a><hr style='color:#E5F1EB;background-color:#E5F1EB;height:3px;width:220px'><span style='color:#1D8445'>"+plz+" "+ort+"<br>"+strasse+"</span><\/div>";
		var marker = setMarker(point, info, infohtml);
		map.addOverlay(marker);
		
	}
}

// Setze Marker
function setMarker(point,title,html) {
	var marker = new GMarker(point, {icon:icon, title:title} );
	var tabFlag = isArray(html);
	if(!tabFlag) { html = [{"contentElem": html}]; }
   
   to_htmls[n] = html[0].contentElem + '<span style="color:#4A135B;font-family:verdana;font-size:12px;"><br>Route berechnen: <br><b>Hierher<\/b> - <a href="javascript:fromhere(' + n + ')" style="color:#4A135B">Von hier<\/a>' +
           '<br>Startadresse:</span><form action="http://maps.google.com/maps" method="get" target="_blank" style="margin:0px">' +
           '<input type="text" style="color:#4A135B;font-family:verdana;font-size:12px;width:220px" size="40" MAXLENGTH=40 name="saddr" id="saddr" value="" /><br>' +
           '<INPUT value="Los" TYPE="SUBMIT">' +
           '<input type="hidden" name="daddr" value="' + point.lat() + ',' + point.lng() + 
                  // "(" + name + ")" + 
           '"/>';
	// The info window version with the "to here" form open
	from_htmls[n] = html[0].contentElem + '<span style="color:#4A135B;font-family:verdana;font-size:12px;"><br>Route berechnen: <br><a href="javascript:tohere(' + n + ')" style="color:#4A135B">Hierher<\/a> - <b>Von hier<\/b>' +
           '<br>Zieladresse:</span><form action="http://maps.google.com/maps" method="get"" target="_blank" style="margin:0px">' +
           '<input type="text" style="color:#4A135B;font-family:verdana;font-size:12px;width:220px" size="40" MAXLENGTH=40 name="daddr" id="daddr" value="" /><br>' +
           '<INPUT value="Los" TYPE="SUBMIT">' +
           '<input type="hidden" name="saddr" value="' + point.lat() + ',' + point.lng() +
                  // "(" + name + ")" + 
           '"/>';
	// The inactive version of the direction info
	html[0].contentElem = html[0].contentElem + '<span style="color:#4A135B;font-family:verdana;font-size:12px;"><br>Route berechnen: <br><a href="javascript:tohere('+n+')" style="color:#4A135B">Hierher<\/a> - <a href="javascript:fromhere('+n+')" style="color:#4A135B">Von hier<\/a></span>';
	
	if(!tabFlag) { html = html[0].contentElem; }
	GEvent.addListener(marker, "click", function() {
		marker.openInfoWindowHtml(html);
	});
	points[n] = point;
	gmarkers[n] = marker;
	n++;
	return marker;
}

function isArray(a) {return isObject(a) && a.constructor == Array;}
function isObject(a) {return (a && typeof a == 'object') || isFunction(a);}
function isFunction(a) {return typeof a == 'function';}

function tohere(k){
	gmarkers[k].openInfoWindowHtml(to_htmls[k]);
}
function fromhere(k){
	gmarkers[k].openInfoWindowHtml(from_htmls[k]);
}

function ShowRoute(sAction){
	marker.openRouteInfoWindow(sAction);
}
