/* Alle Rechte vorbehalten, insbesondere das Recht auf Vervielfältigung und Verbreitung sowie Übersetzung. 
Kein Teil dieser Homepage darf in irgendeiner Form ohne schriftliche Genehmigung von Simon Richartz reproduziert 
oder unter Verwendung elektronischer Systeme verarbeitet, vervielfältigt oder verbreitet werden.  */

function setFocus() {document.getElementById('start_adresse').focus();}

var directionDisplay;
var directionsService = new google.maps.DirectionsService();
var map;
var distance;
var UebergabePlz;

function saveLog(preis) {
	var jetzt = new Date();
	var tag =  jetzt.getDate();
	if( tag < 10 ) { var tag = "0" + tag }
	var monat =  jetzt.getMonth() + 1;
	if( monat < 10 ) { var monat = "0" + monat }
	var jahr = jetzt.getFullYear();
	var datum = tag + "." + monat + "." + jahr;	
	var stunde = jetzt.getHours();
	if( stunde < 10 ) { var stunde = "0" + stunde }
	var minute = jetzt.getMinutes();
	if( minute < 10 ) { var minute = "0" + minute }
	var uhrzeit = stunde + ":" + minute;
	var start = document.getElementById("startadresse").value;
	var ziel = document.getElementById("zieladresse").value;
	var plz = UebergabePLZ;
	var strecke = String(TotalLength).replace(/\./g,".");
	var dauer = Math.ceil(TotalTimeMinutes);
	var werbung = "nein";
	link = "savelog.php?datum="+datum+"&monat="+monat+"&jahr="+jahr+"&uhrzeit="+uhrzeit+"&start="+start+"&ziel="+ziel+"&plz="+plz+"&tarifort="+tarifort+"&werbung="+werbung+"&strecke="+strecke+"&dauer="+dauer+"&preis="+preis;
	parent.temp.location.href = link;
}

function initialize() {
  directionsDisplay = new google.maps.DirectionsRenderer();
  var germany = new google.maps.LatLng(51.284629,10.29808);
  var myOptions = {
    zoom:5,
    mapTypeId: google.maps.MapTypeId.ROADMAP,
	disableDefaultUI: false,
    center: germany
    }
  map = new google.maps.Map(document.getElementById("maparea"), myOptions);
  directionsDisplay.setMap(map);
}
  
function calcRoute() {
document.getElementById('ladegrafik_1').style.visibility = 'visible';
  var start = document.getElementById("startadresse").value;
  var end = document.getElementById("zieladresse").value;
  var request = {
    origin:start, 
    destination:end,
    travelMode: google.maps.DirectionsTravelMode.DRIVING
	};
  directionsService.route(request, function(result, status) {
    if (status == google.maps.DirectionsStatus.OK) {
	  directionsDisplay.setDirections(result);
	  distance = result.routes[0].legs[0].distance.value; // in m
	  duration = result.routes[0].legs[0].duration.value; // in sek
	  var latlng_start = result.routes[0].legs[0].start_location;
	  reverseGeocoding(latlng_start);
	  }
    });
}
 
function reverseGeocoding(start) {
	var geocoder;
	geocoder = new google.maps.Geocoder();	
	var latlngsplit = String(start).split(",");
	var lat = latlngsplit[0].slice(1);
	var lng = latlngsplit[1].substr(0, latlngsplit[1].length-1);
	var latlng = new google.maps.LatLng(lat, lng);
    if (geocoder) {
      geocoder.geocode({'latLng': latlng}, function(results, status) {
        if (status == google.maps.GeocoderStatus.OK) {
			UebergabePLZ = results[0].formatted_address.substring(0,5);
			if ( isNaN( parseFloat(UebergabePLZ) ) ) { 
				UebergabePLZ = results[1].formatted_address.substring(0,5);
				if ( isNaN( parseFloat(UebergabePLZ) ) ) { 
					UebergabePLZ = results[2].formatted_address.substring(0,5);
					if ( isNaN( parseFloat(UebergabePLZ) ) ) { 
						UebergabePLZ = results[3].formatted_address.substring(0,5);
						if ( isNaN( parseFloat(UebergabePLZ) ) ) { 
							UebergabePLZ = results[4].formatted_address.substring(0,5);
							if ( isNaN( parseFloat(UebergabePLZ) ) ) { 
								UebergabePLZ = results[5].formatted_address.substring(0,5);
									if ( isNaN( parseFloat(UebergabePLZ) ) ) { 
										UebergabePLZ = results[6].formatted_address.substring(0,5);	
									}
								}
							}
						}
					}
				}
			}
		else { UebergabePLZ = 000000 }
		link = "sqldata.php?postleitzahl=" + UebergabePLZ;
		parent.temp.location.href = link;
		}
	)};
}
	
function ort_uebernehmen() {
                            ort = frames['temp'].document.getElementById('ort').value;
                            calculateRoute();
                           }

function calculateRoute() {
						  TotalLength = (distance/1000).toPrecision(3);
						  duration = parseFloat(duration);
						  TotalTimeMinutes = duration/60;
                               if (ort == "" || UebergabePLZ == "00000") {
                                                               tarifort = "";
                                                               datum = "";
                                                               grundpreis_tag = 2.80;
                                                               grundpreis_nacht = 3.00;
                                                               zuschlag_grossraum = 4.00;
                                                               inklusiv_km_tag = 0;
                                                               inklusiv_km_nacht = 0;
                                                               pausch_preis_tag = 0;
                                                               pausch_km_tag = 0;
                                                               pausch_preis_nacht = 0;
                                                               pausch_km_nacht = 0;
                                                               p1t = 1.70;
                                                               p2t = 1.50;
                                                               p3t = 1.30;
                                                               p4t = 1.30;
                                                               p5t = 1.30;
                                                               x1t = 3;
                                                               x2t = 5;
                                                               x3t = 99999;
                                                               x4t = 99999;
                                                               x5t = 99999;
                                                               gueltigkeit_nachttarif = "Mo. - Sa. 22:00 - 6:00 Uhr,<br>Sonn- und Feiertags";
                                                               p1n = 1.80;
                                                               p2n = 1.60;
                                                               p3n = 1.40;
                                                               p4n = 1.40;
                                                               p5n = 1.40;
                                                               x1n = 3;
                                                               x2n = 5;
                                                               x3n = 99999;
                                                               x4n = 99999;
                                                               x5n = 99999;
                                                               waitt = 22.50;
                                                               waitn = 22.50;
                                                               xt = Math.max((TotalLength-inklusiv_km_tag),0);
                                                               xn = Math.max((TotalLength-inklusiv_km_nacht),0);
                                                               werbung = "nein";
                                                               document.getElementById('alert').style.visibility = 'visible';
                                                              }
                               if (ort != "" ) {
                                                               tarifort = frames['temp'].document.getElementById('tarifort').value;
                                                               datum = frames['temp'].document.getElementById('datum').value;
                                                               grundpreis_tag = parseFloat(frames['temp'].document.getElementById('grundpreis_tag').value);
                                                               grundpreis_nacht = parseFloat(frames['temp'].document.getElementById('grundpreis_nacht').value);
                                                               zuschlag_grossraum = frames['temp'].document.getElementById('zuschlag_grossraum').value;
                                                               inklusiv_km_tag = parseFloat(frames['temp'].document.getElementById('inklusiv_km_tag').value);
                                                               inklusiv_km_nacht = parseFloat(frames['temp'].document.getElementById('inklusiv_km_nacht').value);
                                                               pausch_preis_tag = parseFloat(frames['temp'].document.getElementById('pausch_preis_tag').value);
                                                               pausch_km_tag = parseFloat(frames['temp'].document.getElementById('pausch_km_tag').value);
                                                               pausch_preis_nacht = parseFloat(frames['temp'].document.getElementById('pausch_preis_nacht').value);
                                                               pausch_km_nacht = parseFloat(frames['temp'].document.getElementById('pausch_km_nacht').value);
                                                               p1t = parseFloat(frames['temp'].document.getElementById('km1_tag_preis').value);
                                                               p2t = parseFloat(frames['temp'].document.getElementById('km2_tag_preis').value);
                                                               p3t = parseFloat(frames['temp'].document.getElementById('km3_tag_preis').value);
                                                               p4t = parseFloat(frames['temp'].document.getElementById('km4_tag_preis').value);
                                                               p5t = parseFloat(frames['temp'].document.getElementById('km5_tag_preis').value);
                                                               x1t = parseFloat(frames['temp'].document.getElementById('km1_tag_entfernung').value);
                                                               x2t = parseFloat(frames['temp'].document.getElementById('km2_tag_entfernung').value);
                                                               x3t = parseFloat(frames['temp'].document.getElementById('km3_tag_entfernung').value);
                                                               x4t = parseFloat(frames['temp'].document.getElementById('km4_tag_entfernung').value);
                                                               x5t = parseFloat(frames['temp'].document.getElementById('km5_tag_entfernung').value);
                                                               gueltigkeit_nachttarif = frames['temp'].document.getElementById('gueltigkeit_nachttarif').value;
                                                               p1n = parseFloat(frames['temp'].document.getElementById('km1_nacht_preis').value);
                                                               p2n = parseFloat(frames['temp'].document.getElementById('km2_nacht_preis').value);
                                                               p3n = parseFloat(frames['temp'].document.getElementById('km3_nacht_preis').value);
                                                               p4n = parseFloat(frames['temp'].document.getElementById('km4_nacht_preis').value);
                                                               p5n = parseFloat(frames['temp'].document.getElementById('km5_nacht_preis').value);
                                                               x1n = parseFloat(frames['temp'].document.getElementById('km1_tag_entfernung').value);
                                                               x2n = parseFloat(frames['temp'].document.getElementById('km2_tag_entfernung').value);
                                                               x3n = parseFloat(frames['temp'].document.getElementById('km3_tag_entfernung').value);
                                                               x4n = parseFloat(frames['temp'].document.getElementById('km4_tag_entfernung').value);
                                                               x5n = parseFloat(frames['temp'].document.getElementById('km5_tag_entfernung').value);
                                                               waitt = parseFloat(frames['temp'].document.getElementById('wartezeit_tag').value);
                                                               waitn = parseFloat(frames['temp'].document.getElementById('wartezeit_nacht').value);																
															   werbung = frames['temp'].document.getElementById('werbung').value;												   
                                                               werbung_text1 = frames['temp'].document.getElementById('werbung_text1').value;
                                                              }
                               xt = Math.max((TotalLength-inklusiv_km_tag),0);
                               xn = Math.max((TotalLength-inklusiv_km_nacht),0);

															   var werbung;
															   werbung = "nein";
															   if(UebergabePLZ >= 10001 && UebergabePLZ <= 14199) {werbung = "ja"};
															   if(UebergabePLZ >= 60001 && UebergabePLZ <= 65936) {werbung = "ja"};
															   if(UebergabePLZ == 48455 ) {werbung = "ja"};
															   if(UebergabePLZ == 48465 ) {werbung = "ja"};
															   if(UebergabePLZ == 52146 ) {werbung = "ja"};
															   if(UebergabePLZ == 52134 ) {werbung = "ja"};
															   if(UebergabePLZ == 64546 ) {werbung = "ja"};
															   if(UebergabePLZ >= 74072 && UebergabePLZ <= 74081) {werbung = "ja"};		
															   if(UebergabePLZ == 97653 ) {werbung = "ja"};
															   if(UebergabePLZ >= 65343 && UebergabePLZ <= 65347) {werbung = "ja"};		
													   
							   
                               var gesamtpreis_tag;
                               var fahrpreis_tag;
                               var fahrpreis_tag1;
                               if( TotalLength <= pausch_km_tag ) { var gesamtpreis_tag3 = pausch_preis_tag }
                               if( TotalLength <= 4)                     {var faktor_standzeit_tag = 0.5};
                               if( TotalLength > 4 && TotalLength <= 15) {var faktor_standzeit_tag = 0.35};
                               if( TotalLength > 15)                     {var faktor_standzeit_tag = 0.3};
                               if( TotalLength >  pausch_km_tag ) {
                                                                   if( xt <= x1t )                                         { gesamtpreis_tag1 = grundpreis_tag + (xt * p1t)  + (waitt*(TotalTimeMinutes*faktor_standzeit_tag)/60)  }
                                                                   if( xt > x1t && xt <= x1t+x2t )                         { gesamtpreis_tag1 = grundpreis_tag + (x1t * p1t) + ((xt - x1t) * p2t)  + (waitt*(TotalTimeMinutes*faktor_standzeit_tag)/60)  }
                                                                   if( xt > x1t+x2t && xt <= x1t+x2t+x3t )                 { gesamtpreis_tag1 = grundpreis_tag + (x1t * p1t) + (x2t * p2t) + ((xt - x1t - x2t) * p3t) + (waitt*(TotalTimeMinutes*faktor_standzeit_tag)/60) }
                                                                   if( xt > x1t+x2t+x3t && xt <= x1t+x2t+x3t+x4t )		   { gesamtpreis_tag1 = grundpreis_tag + (x1t * p1t) + (x2t * p2t) + (x3t * p3t) + ((xt - x1t -x2t -x3t) * p4t)  + (waitt*(TotalTimeMinutes*faktor_standzeit_tag)/60)  }
                                                                   if( xt > x1t+x2t+x3t+x4t ) 	                           { gesamtpreis_tag1 = grundpreis_tag + (x1t * p1t) + (x2t * p2t) + (x3t * p3t) + (x4t * p4t) + (( xt - x1t -x2t -x3t - x4t ) * p5t) + (waitt*(TotalTimeMinutes*faktor_standzeit_tag)/60) }
                                                                   var gesamtpreis_tag2 = ((Math.ceil((gesamtpreis_tag1) * 10) ) / 10);
                                                                   if(gesamtpreis_tag2 < 10)                              { var gesamtpreis_tag3 = (gesamtpreis_tag2).toPrecision(3);}
                                                                   if(gesamtpreis_tag2 >= 10 && gesamtpreis_tag2 < 100)   { var gesamtpreis_tag3 = (gesamtpreis_tag2).toPrecision(4);}
                                                                   if(gesamtpreis_tag2 >= 100 && gesamtpreis_tag2 < 1000) { var gesamtpreis_tag3 = (gesamtpreis_tag2).toPrecision(5);}
                                                                   if(gesamtpreis_tag2 >= 1000)                           { var gesamtpreis_tag3 = (gesamtpreis_tag2).toPrecision(6);}
                                                                  }
                               var gesamtpreis_tag_anzeige = String(gesamtpreis_tag3).replace(/\./g,",") + " &euro;";

                               if ( gueltigkeit_nachttarif != "nie" ) {
                                                                       var gesamtpreis_nacht;
                                                                       var fahrpreis_nacht;
                                                                       var fahrpreis_nacht1;
                                                                       if( TotalLength <= pausch_km_nacht ) { var gesamtpreis_nacht3 = pausch_preis_nacht }
                                                                       if(TotalLength <= 4)                     {var faktor_standzeit_nacht = 0.40};
                                                                       if(TotalLength > 4 && TotalLength <= 15) {var faktor_standzeit_nacht = 0.25};
                                                                       if(TotalLength > 15)                     {var faktor_standzeit_nacht = 0.2};
                                                                       if( TotalLength >  pausch_km_nacht ) {
                                                                                                             if( xn <= x1n )                                 { gesamtpreis_nacht1 = grundpreis_nacht + (xn * p1n) + (waitn*(TotalTimeMinutes*faktor_standzeit_nacht)/60)  }
                                                                                                             if( xn > x1n && xn <= x1n+x2n )                 { gesamtpreis_nacht1 = grundpreis_nacht + (x1n * p1n) + ((xn - x1n) * p2n)  + (waitn*(TotalTimeMinutes*faktor_standzeit_nacht)/60) }
                                                                                                             if( xn > x1n+x2n && xn <= x1n+x2n+x3n )         { gesamtpreis_nacht1 = grundpreis_nacht + (x1n * p1n) + (x2n * p2n) + ((xn - x1n - x2n) * p3n)  + (waitn*(TotalTimeMinutes*faktor_standzeit_nacht)/60)  }
                                                                                                             if( xn > x1n+x2n+x3n && xn <= x1n+x2n+x3n+x4n ) { gesamtpreis_nacht1 = grundpreis_nacht + (x1n * p1n) + (x2n * p2n) + (x3n * p3n) + ((xn - x1n - x2n - x3n) * p4n) + (waitn*(TotalTimeMinutes*faktor_standzeit_nacht)/60) }
                                                                                                             if( xn > x1n+x2n+x3n+x4n )                      { gesamtpreis_nacht1 = grundpreis_nacht + (x1n * p1n) + (x2n * p2n) + (x3n * p3n) + (x4n * p4n) + (( xn - x1n - x2n - x3n - x4n) * p5n)  + (waitn*(TotalTimeMinutes*faktor_standzeit_nacht)/60)  }
                                                                                                             var gesamtpreis_nacht2 = ((Math.ceil((gesamtpreis_nacht1) * 10) ) / 10);
                                                                                                             if(gesamtpreis_nacht2 < 10)                                { gesamtpreis_nacht3 = (gesamtpreis_nacht2).toPrecision(3);}
                                                                                                             if(gesamtpreis_nacht2 >= 10 && gesamtpreis_nacht2 < 100)   { gesamtpreis_nacht3 = (gesamtpreis_nacht2).toPrecision(4);}
                                                                                                             if(gesamtpreis_nacht2 >= 100 && gesamtpreis_nacht2 < 1000) { gesamtpreis_nacht3 = (gesamtpreis_nacht2).toPrecision(5);}
                                                                                                             if(gesamtpreis_nacht2 >= 1000)                             { gesamtpreis_nacht3 = (gesamtpreis_nacht2).toPrecision(6);}
                                                                                                            }
                                                                       var gesamtpreis_nacht_anzeige = String(gesamtpreis_nacht3).replace(/\./g,",") + " &euro;";
                                                                      }
                               else {var gesamtpreis_nacht_anzeige = "-"}

                               var entfernung_anzeige = String(TotalLength).replace(/\./g,",") + " Kilometer";
							   var fahrzeit_anzeige = (Math.ceil(TotalTimeMinutes*100))/100;
							   var fahrzeit_anzeige = fahrzeit_anzeige + " Minuten";
                               document.getElementById('fahrpreis_tag').innerHTML = gesamtpreis_tag_anzeige;
                               document.getElementById('fahrpreis_nacht').innerHTML = gesamtpreis_nacht_anzeige;
                               document.getElementById('entfernung').innerHTML = entfernung_anzeige;
							   document.getElementById('fahrzeit').innerHTML = fahrzeit_anzeige;
                               if(ort!="") {document.getElementById('tarifdetails').innerHTML = "<a href='tarifdetails.php?plz=" + UebergabePLZ + "' target='neu' rel='nofollow'>Tarif-Informationen</a>";}
                               if(ort=="") {document.getElementById('tarifdetails').innerHTML = "<a href='tarifdetails_durchschnitt.php' target='neu' rel='nofollow'>Tarif-Informationen</a>";}

                          //   if ( werbung != "ja" && ort != "" ) { document.getElementById('werbung').innerHTML = "<script type='text/javascript'><!-- google_ad_client = 'ca-pub-6192233573926302'; /* Anzeigen */ google_ad_slot = '7317307409'; google_ad_width = 200; google_ad_height = 200; //--> </script> <script type='text/javascript' src='http://pagead2.googlesyndication.com/pagead/show_ads.js'> </script>"}
						  //   if ( werbung != "ja" && ort == "" ) { document.getElementById('werbung').innerHTML = "<script type='text/javascript'><!-- google_ad_client = 'ca-pub-6192233573926302'; /* Anzeigen */ google_ad_slot = '7317307409'; google_ad_width = 200; google_ad_height = 200; //--> </script> <script type='text/javascript' src='http://pagead2.googlesyndication.com/pagead/show_ads.js'> </script>"}
                               if ( werbung == "ja" ) { 
									document.getElementById('werbung').innerHTML = werbung_text1;
									document.getElementById('werbung').style.width = "267px";
									document.getElementById('werbung').style.height = "202px";
									document.getElementById('werbung').style.margin = "0px";
									}
							   document.getElementById('werbung').style.display = 'inline';
							   saveLog(gesamtpreis_tag3);
							   // Adsense-Banner wenn nötig ausblenden
							   if ( werbung == "ja" ) { $('#adsense_banner').fadeOut("slow"); }
							   document.getElementById('ladegrafik_1').style.visibility = 'hidden';
                               document.getElementById('eingabe').style.visibility = "hidden";
                               if(ort!="") { document.getElementById('ergebnisse').style.visibility = "visible"; }
					   		}				   							  

function newRoute() {
                     document.getElementById('eingabe').style.visibility = "visible";
					 document.getElementById('ergebnisse').style.visibility = "hidden";
					 document.getElementById('werbung').style.display = "none";
                    }

function $v( id ) {
                   return (document.getElementById( id ).value != "undefined") ?
                   document.getElementById( id ).value : "";
                  }
				  

				  
