var map,accoicon;
var startPointType, stopPointType, startLan, startLon, stopLan, stopLon,messages;


function ChangeTabs(Tab)
{
	document.getElementById("tab_1").style.backgroundColor = "#EFEDEA";
	document.getElementById("tab_2").style.backgroundColor = "#EFEDEA";
	document.getElementById("tab_3").style.backgroundColor = "#EFEDEA";
	document.getElementById("tab_4").style.backgroundColor = "#EFEDEA";
	document.getElementById("tab_5").style.backgroundColor = "#EFEDEA";
	document.getElementById("tab_" + Tab).style.backgroundColor ="#6E6D6D";
	
	document.getElementById("tablink_1").style.color ="";
	document.getElementById("tablink_2").style.color ="";
	document.getElementById("tablink_3").style.color ="";
	document.getElementById("tablink_4").style.color ="";
	document.getElementById("tablink_5").style.color ="";
	document.getElementById("tablink_" + Tab).style.color ="#EFEDEA";
}

function ShowBlock (Tab)
{

	document.getElementById("block_details").style.display = 'none';
	document.getElementById("block_packages").style.display = 'none';
	document.getElementById("block_map").style.display = 'none';
	document.getElementById("block_ausstattung").style.display = 'none';
	document.getElementById("block_rooms").style.display = 'none';

	if (Tab==1){ document.getElementById("block_details").style.display = 'block';document.getElementById("acco_right").style.display = 'block'; }
	if (Tab==2){ document.getElementById("block_rooms").style.display = 'block';document.getElementById("acco_right").style.display = 'block'; }
	if (Tab==3){ document.getElementById("block_packages").style.display = 'block';document.getElementById("acco_right").style.display = 'block'; }
	if (Tab==4){ document.getElementById("block_map").style.display = 'block';document.getElementById("acco_right").style.display = 'none'; }
	if (Tab==5){ document.getElementById("block_ausstattung").style.display = 'block';document.getElementById("acco_right").style.display = 'block'; }
	
	ChangeTabs(Tab);

}
		 	
function LoadMap() {			
	
 	if (GBrowserIsCompatible()) {
       	map = new GMap2(document.getElementById("map"));
       	map.setCenter(new GLatLng(47.500412,12.297702), 10);
      	map.setMapType(G_NORMAL_MAP); 
       	map.addControl(new GLargeMapControl());
   		map.addControl(new GMapTypeControl());
      	map.addMapType(G_SATELLITE_3D_MAP);
   		
   		// Icons definieren
     	accoicon = new GIcon();
		accoicon.iconSize = new GSize(12, 12);
		accoicon.iconAnchor = new GPoint(5, 5);
		accoicon.image = "/de/images/vermieter/button_point_low.png";	
		accoicon.infoWindowAnchor = new GPoint(5, 5); 		     		
	
		// Punkt hinzufügen
		Addmarker();
		
		//Karte ausblenden
		//document.getElementById("block_map").style.display = 'none';
		
		// Route
		var startPoint = new Array();
		var endPoint = new Array();
		var startPointType = null;
		var endPointType = null;
		var startPointText = null;
		var endPointText = null;
		
		// Listner für Route
		gdir = new GDirections(map, document.getElementById("route"));
		GEvent.addListener(gdir, "load", onGDirectionsLoad);
		GEvent.addListener(gdir, "error", handleErrors);
		
		// Messages 
		messages = new Array();
		messages['de'] = new Array();
		messages['en'] = new Array();
		
		messages['de']['start'] = "als Start";
		messages['de']['ziel'] = "als Ziel";
		messages['de']['routenplaner'] = "Routenplaner";
		messages['de']['error1'] = "Bitte wÃ¤hlen Sie erst einen Start und Endpunkt aus!";
		messages['de']['error2'] = "Einer der angegebenen Orte konnte nicht gefunden werden, bitte vergewissern Sie sich das die Adresse richtig geschrieben ist.";
		messages['de']['error3'] = "Bitte geben Sie eine gÃ¼ltige Adresse ein";
		messages['de']['error4'] = "Es trat ein unbekannter Fehler bei der internen Kommunikation auf, sollte dieser Fehler wiederholt auftreten wenden Sie sich bitte an uns.";
		
		messages['en']['start'] = "as start";
		messages['en']['ziel'] = "as destination";
		messages['en']['routenplaner'] = "routeplanner";
		messages['en']['error1'] = "Please select one start and destination point.";
		messages['en']['error2'] = "One of the entered addresses cannot be found, please be sure that the address is valid.";
		messages['en']['error3'] = "Please enter a valid address.";
		messages['en']['error4'] = "An unknown error occured. If the error appears several times, pleate contact us.";

	
	}

}

function Addaccomarker(feratelid, lat, lon, titel, html,strasse, plz, ort,land){
	
	// Marker
	var point = new GLatLng(lat,lon);
	var marker = new GMarker(point,{icon:accoicon,title:titel});
	map.addOverlay(marker); 
	map.setCenter(point, 14);	
	
	var start = 'class="start" href="javascript:SetAsStartPoint(\''+ titel +'\',\''+ strasse +'\',\''+ plz +'\',\''+ ort +'\',\'Österreich\',\''+ lat +'\',\''+ lon +'\');"';
	var stop = 'class="stop" href="javascript:SetAsStopPoint(\''+ titel +'\',\''+ strasse+'\',\''+ plz +'\',\''+ ort +'\',\'Österreich\',\''+ lat +'\',\''+ lon +'\');"';
	html = html.replace('*START*',start);
	html = html.replace('*STOP*',stop);
	marker.openInfoWindowHtml(html);
	
	// Infowindow
	GEvent.addListener(marker,'click',
		function(){marker.openInfoWindowHtml(html);});	

}	

function countredirect(feratelid,kampagne,language){
	
	var xmlhttp=null;
	var url = 'http://www.hohe-salve.com/'+ language +'/vermieter/countredirect.asp?FeratelID=' + feratelid;		
	
	if (kampagne != "") {url = url + "&CID=" + kampagne}
	
	if (window.XMLHttpRequest){xmlhttp=new XMLHttpRequest();} else if (window.ActiveXObject) {xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); }
	  
	if (xmlhttp!=null)
	  {
	 		xmlhttp.open("GET",url,true);	
	 		xmlhttp.send(null); 	  		
	  }	
	
}

// Startpunkt 
function SetAsStartPoint(titel,strasse,plz,ort,land,lat,lon)
{
	
	startPointType = 'point';
	startLat = lat;
	startLon = lon;
	
	document.getElementById('start_adressetext').innerHTML = '<b>'+ titel +'</b><br/>' + strasse + '<br/>' + plz + ' ' + ort + '<br/>' + land;
	document.getElementById('start_adressetext').style.display = 'block';
	document.getElementById('start_adresselink').style.display = 'block';
	document.getElementById('start_adresse').style.display = 'none';
	

}

// Endpunkt 
function SetAsStopPoint(titel,strasse,plz,ort, land, lat, lon)
{
	stopPointType = 'point';
	stopLat = lat;
	stopLon = lon;
	
	document.getElementById('stop_adressetext').innerHTML = '<b>'+ titel +'</b><br/>' + strasse + '<br/>' + plz + ' ' + ort + '<br/>' + land;
	document.getElementById('stop_adressetext').style.display = 'block';
	document.getElementById('stop_adresselink').style.display = 'block';
	document.getElementById('stop_adresse').style.display = 'none';
}

// Adresse einblenden 
function ShowAdress(typ)
{
	
	if (typ=='start'){startPointType='text';}
	if (typ=='stop'){stopPointType='text';}
	
	document.getElementById(typ + '_adressetext').style.display = 'none';
	document.getElementById(typ +'_adresselink').style.display = 'none';
	document.getElementById(typ +'_adresse').style.display = 'block';	

}

// Route berechnen 
function CalculateRoute() 
{

	from = document.getElementById('start_strasse').value + "," + document.getElementById('start_plz').value + ',' + document.getElementById('start_ort').value + ',' + document.getElementById('start_land').value;
	if (startPointType=='point') {from = startLat + "," + startLon;}
	
	to = document.getElementById('stop_strasse').value + "," + document.getElementById('stop_plz').value + ',' + document.getElementById('stop_ort').value + ',' + document.getElementById('stop_land').value;
	if (stopPointType=='point') {to = stopLat + "," + stopLon;}
	
	gdir.load("from: " + from + " to: " + to ,{ "locale": language });
 	
}

// Route errors
function handleErrors(){
   if (gdir.getStatus().code == G_GEO_UNKNOWN_ADDRESS)
	 alert(messages[language]['error2']);
   
   else if (gdir.getStatus().code == G_GEO_MISSING_QUERY)
	 alert(messages[language]['error3']);
	 
   else	alert(messages[language]['error4']);   
}

// Route loaded
function onGDirectionsLoad()
{ 
	//document.getElementById('block_category_titleopen').style.display="none";
	//document.getElementById('block_category_titleclosed').style.display="block";
	//document.getElementById('block_category_content').style.display="none";
	
}

