//-----------------------------------------------------------------------------------------------
//Skripte Angebotsrechner 
//Autor: Anja Machmeier
//Ertellt:April 2005
//aktualisiert: am 01.02.06
//-----------------------------------------------------------------------------------------------

//Javascript ueberpruefen auf aktiv---------------------------------------------------------------

function JavascriptEnabled(){
  if(document.forms[0]) {
    if(document.forms[0].JavascriptAktiv) {
      document.forms[0].JavascriptAktiv.value=true;
    }
  }
}

//Fokus auf erstes sichtbares Eingabefeld setzen--------------------------------------------------

function initPage() {
  if(document.forms[0]) {
    for(i=0;i<document.forms[0].elements.length;i++) {
      try {
        if(document.forms[0].elements[i] && document.forms[0].elements[i].visibility=="visible") {
          document.forms[0].elements[1].focus();
          break;
        }
      } catch(e) {}
    }
  }
  return;
}
//Bereiche aus dem Formular aus und einblenden----------------------------------------------------

function showDiv(v){
	if(document.getElementById(v)){document.getElementById(v).style.display ="";document.getElementById(v).disabled = false;}
	eval('if(document.getElementById("error'+v+'")){document.getElementById("error'+v+'").style.display =""}');
}

function hideDiv(v){
	if(document.getElementById(v)){document.getElementById(v).style.display ="none";document.getElementById(v).disabled = true;}
	eval('if(document.getElementById("error'+v+'")){document.getElementById("error'+v+'").style.display ="none"}');
}

function hideElements(name,value){

	if(name=="VN"){
		if(value=="2"){
			showDiv("Partner1");
			showDiv("Partner2");
			showDiv("Partner3");
		}
		else{
			hideDiv("Partner1");
			hideDiv("Partner2");
			hideDiv("Partner3");
		}
		if(value=="5"){
			showDiv("FahrerVon1");
			showDiv("FahrerVon2");
			showDiv("FahrerVon3");
			showDiv("FahrerBis1");
			showDiv("FahrerBis2");
		}
		else{
			hideDiv("FahrerVon1");
			hideDiv("FahrerVon2");
			hideDiv("FahrerVon3");
			hideDiv("FahrerBis1");
			hideDiv("FahrerBis2");
			
		}
		if(value=="3"){
			showDiv("Altersspektrum");
		}
		else{
			hideDiv("Altersspektrum");
		}
	}
	if(name=="Saison"){
		if(value=="0"){
			hideDiv("SaisonAblauf");
			showDiv("Laufleistung");
		}
		else{
			showDiv("SaisonAblauf");
			hideDiv("Laufleistung");
		}
	}
	if(name=="Berufsgruppe"){
		if(value=="R"||value=="V"){
			showDiv("Berufsgruppe");
		}
		else{
			hideDiv("Berufsgruppe");
		}
	}
	
	if(name=="Fabrikneu"){
		if(value=="1"){
			hideDiv("Erstzulassung");
			hideDiv("Erwerbsdatum");
		}
		else{
			showDiv("Erstzulassung");
			showDiv("Erwerbsdatum");
		}
	}
	if(name=="Zahlungsweise"){
		if(value=="3"){
			hideDiv("Zahlungsart");
			showDiv("ZahlungsartEingeschraenkt");
			showDiv("Kontonr");
			showDiv("Bankleitzahl");
		}
		else{
			showDiv("Zahlungsart");
			hideDiv("ZahlungsartEingeschraenkt");
			hideElements('Zahlungsart',document.forms[0].Zahlungsart.value);
		}
	}
	if(name=="Zahlungsart"){
		if(value=="1"){
			hideDiv("Kontonr");
			hideDiv("Bankleitzahl");
		}
		else{
			showDiv("Kontonr");
			showDiv("Bankleitzahl");
		}
	}
	if(name=="Zahlweise"){
	
			hideDiv("BeitraegeHaftpflichtJaehrlich");
			hideDiv("BeitraegeKaskoJaehrlich");
			hideDiv("BeitraegeIUJaehrlich");
			hideDiv("BeitraegeRechtsschutzJaehrlich");
			hideDiv("BeitraegeGesamtJaehrlich");
			
			hideDiv("BeitraegeHaftpflichtHalbjaehrlich");
			hideDiv("BeitraegeKaskoHalbjaehrlich");
			hideDiv("BeitraegeIUHalbjaehrlich");
			hideDiv("BeitraegeRechtsschutzHalbjaehrlich");
			hideDiv("BeitraegeGesamtHalbjaehrlich");
			
			hideDiv("BeitraegeHaftpflichtVierteljaehrlich");
			hideDiv("BeitraegeKaskoVierteljaehrlich");
			hideDiv("BeitraegeIUVierteljaehrlich");
			hideDiv("BeitraegeRechtsschutzVierteljaehrlich");
			hideDiv("BeitraegeGesamtVierteljaehrlich");

			hideDiv("BeitraegeHaftpflichtMonatlich");
			hideDiv("BeitraegeKaskoMonatlich");
			hideDiv("BeitraegeIUMonatlich");
			hideDiv("BeitraegeRechtsschutzMonatlich");
			hideDiv("BeitraegeGesamtMonatlich");

		if(value=="1"){
			showDiv("BeitraegeHaftpflichtJaehrlich");
			showDiv("BeitraegeKaskoJaehrlich");
			showDiv("BeitraegeIUJaehrlich");
			showDiv("BeitraegeRechtsschutzJaehrlich");
			showDiv("BeitraegeGesamtJaehrlich");
		}
		if(value=="2"){
			showDiv("BeitraegeHaftpflichtHalbjaehrlich");
			showDiv("BeitraegeKaskoHalbjaehrlich");
			showDiv("BeitraegeIUHalbjaehrlich");
			showDiv("BeitraegeRechtsschutzHalbjaehrlich");
			showDiv("BeitraegeGesamtHalbjaehrlich");
		}
		if(value=="3"){
			showDiv("BeitraegeHaftpflichtMonatlich");
			showDiv("BeitraegeKaskoMonatlich");
			showDiv("BeitraegeIUMonatlich");
			showDiv("BeitraegeRechtsschutzMonatlich");
			showDiv("BeitraegeGesamtMonatlich");
		}
		if(value=="4"){
			showDiv("BeitraegeHaftpflichtVierteljaehrlich");
			showDiv("BeitraegeKaskoVierteljaehrlich");
			showDiv("BeitraegeIUVierteljaehrlich");
			showDiv("BeitraegeRechtsschutzVierteljaehrlich");
			showDiv("BeitraegeGesamtVierteljaehrlich");
		}
		
	}
	if(name=="SADAuswahl"){
		if(value=="1"){
			showDiv("Experte");
			showDiv("SadSuchenBtn");
		}
		else{
			hideDiv("Experte");
			hideDiv("SadSuchenBtn");
		}
	}
	if(name=="HaftpflichtSf"){
		if(value=="0"){
			
			hideDiv("KaskoDeckungsart");
			hideDiv("KaskoSf");
			showDiv("KaskoDeckungsartSF0");
		}
		else{
			showDiv("KaskoDeckungsart");
			hideDiv("KaskoDeckungsartSF0");
		}
		if(value=="0"){
			document.forms[0].KaskoDeckungsart.value = "00";
		}
		
	}
	if(name=="BisherigeAngaben"){
		if(value=="show"){
			document.getElementById("BisherigeAngaben").className="showElement";
			document.getElementById("BisherigeAngabenAusgeblendet").className="hideElement";
		}
		else{
			document.getElementById("BisherigeAngaben").className="hideElement";
			document.getElementById("BisherigeAngabenAusgeblendet").className="showElement";
		}
	}
	if(name=="KaskoDeckungsart"){
		if(value=="00" || value=="Bitte auswählen"){
			hideDiv("KaskoSf");
			hideDiv("GapDeckung");
			hideDiv("Werkstattbindung");
			hideDiv("TopSchutzRow");
		}
		else{
			isKaskoSfErlaubt(value);
			isGapDeckungErlaubt(value);
			showDiv("Werkstattbindung");
			showDiv("TopSchutzRow");
		}
	}
	if(name=="GeVo"){
		if(value=="ElanKfzInternet1"){
			showDiv("gevo_berechnen");
		} else {
			hideDiv("gevo_berechnen");
		}
		if(value=="ElanKfzInternet6"){
			showDiv("gevo_evb");
		} else {
			hideDiv("gevo_evb");
		}
	}
	if(name=="anrede"){
		if(value=="C"){
			showDiv("firmenname");
			hideDiv("vorname");
			hideDiv("nachname");
			hideDiv("geburtsdatum");
		} else {
			showDiv("vorname");
			showDiv("nachname");
			showDiv("geburtsdatum");
			hideDiv("firmenname");
		}
	}
	if(name=="AvbDatenschutzbestimmungenFernabsatzbelehrungGeprueft"){
		if(value==true){
			showDiv("AntragGeprueft1");
			showDiv("AntragGeprueft2");
			showDiv("AntragGeprueft3");
			showDiv("AntragGeprueft4");
			showDiv("AntragGeprueft5");			
		} else {
			hideDiv("AntragGeprueft1");			
			hideDiv("AntragGeprueft2");
			hideDiv("AntragGeprueft3");
			hideDiv("AntragGeprueft4");
			hideDiv("AntragGeprueft5");			
		}
	}
	if(name=="Halter"){
		if(value==0){
			showDiv("AbweichenderHalter_row");
		} else {
			hideDiv("AbweichenderHalter_row");			
		}
	}
}

//ContentButtons groesse fuer Firefox/Netscape/Opera anpassen
function sizeButtons(){
	if(navigator.userAgent.indexOf("Firefox")>-1||navigator.userAgent.indexOf("Opera")>-1){
		if(document.getElementById("bt_element")){document.getElementById("bt_element").style.paddingLeft=20+"px";}
		if(document.getElementById("bt_element_small")){document.getElementById("bt_element_small").style.paddingLeft="20px";}
	}
	if(navigator.userAgent.indexOf("Netscape")>-1){
		if(document.getElementById("bt_element")){document.getElementById("bt_element").style.paddingLeft=0+"px";}
		if(document.getElementById("bt_element_small")){document.getElementById("bt_element_small").style.paddingLeft="10px";}
	}
}

//HilfePopup
function Popup(link){
	var popupProperties1 = "directories=no,menubar=no,toolbar=yes,status=no,resizable=no,scrollbars=auto,hotkeys=no,width=570,height=600,left=186,top=120";
	newWin1 = window.open(link,'HilfePopup',popupProperties1);
}

//MapeGuidePopup
function MGPopup(link){
	var popupProperties2 = "directories=no,menubar=no,toolbar=yes,status=no,resizable=no,scrollbars=yes,hotkeys=no,width=570,height=600,left=186,top=120";
	newWin2 = window.open(link,'Expertensuche',popupProperties2);
}
//Hilfetexte Skripte erstellen---------------------------------------------------------------

bubbleDoc='document.getElementById("bubble")';
var IE =(navigator.appName.indexOf("Microsoft")>-1)?true:false;
var IE6=((navigator.appName.indexOf("Microsoft")>-1&&navigator.appVersion.indexOf("6")>-1))?true:false;
var scrolltop=0;
var scrollleft=0;
var winHeight=0;
var winWidth=0;

function posBubble(){
	winWidth=(IE6)?document.documentElement.offsetWidth:window.innerWidth;
	winHeight=(IE6)?document.documentElement.offsetHeight:window.innerHeight;
}

function createBubble(content){
	if(bubbleDoc){
		eval(bubbleDoc+'.innerHTML=\"'+content+'\"');
		eval(bubbleDoc+'.style.zIndex="25"');
		document.onmousemove = moveBubble;
		
		

	}
}

function killBubble(){
	if(bubbleDoc){
		document.onmousemove = null;
		eval(bubbleDoc+'.style.zIndex="1"');
		eval(bubbleDoc+'.style.visibility="hidden"');
	}
}

function moveBubble(e){
	var eX,eY;
	eX=(document.all)?window.event.clientX:e.pageX;
	eY=(document.all)?window.event.clientY:e.pageY;
	posBubble();
	scrollBubble();
	leftpos=eX+20;
	toppos=eY+20;
	leftpos+=(IE)?scrollleft:0;
	toppos+=(IE)?scrolltop:0;
	if(leftpos<winWidth+scrollleft-eval(bubbleDoc+'.offsetWidth')){
		leftpos+="px";
	}
	else{
		leftpos+=leftpos- eval(bubbleDoc+'.offsetWidth')-30+"px";
	}
	if(toppos<winHeight+scrolltop-eval(bubbleDoc+'.offsetHeight')){
		toppos+="px";
	}
	else{
		toppos= toppos- eval(bubbleDoc+'.offsetHeight')-30+"px";
	}
	//eval(bubbleDoc+'.style.left=\"'+leftpos+'\"');
	eval(bubbleDoc+'.style.top=\"'+toppos+'\"');
	eval(bubbleDoc+'.style.visibility="visible"');
}

function scrollBubble(){
	scrolltop=(IE6)?document.documentElement.scrollTop:document.body.scrollTop;
	scrollleft=(IE6)?document.documentElement.scrollLeft:document.body.scrollLeft;
}

// ---- AJAX ----------------------------------------------

function createHttpRequest() {
	var xmlhttp = null;
	if(window.ActiveXObject) {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	} else if(window.XMLHttpRequest) {
		xmlhttp = new XMLHttpRequest();
	}
	return xmlhttp;
}

function AjaxCall_GetUrl() {
	return document.getElementById("ajax_url").value;
}

function isGapDeckungErlaubt(kaskoDeckungsart) {
	var xmlhttp = createHttpRequest();
	var ergebnis = "";
	xmlhttp.open("GET", AjaxCall_GetUrl() + "?" + Math.random()+ "&function=isGapDeckungErlaubt&kaskoDeckungsart=" + kaskoDeckungsart, true);
	xmlhttp.onreadystatechange=function() {
		if(xmlhttp.readyState == 4) {
			if(xmlhttp.status == 200) {
				ergebnis = xmlhttp.responseText;
				if(ergebnis == "true") {
					showDiv("GapDeckung");
				} else {
					hideDiv("GapDeckung");
				}
			}
		}
	};
	xmlhttp.send(null);
}

function isKaskoSfErlaubt(kaskoDeckungsart) {
	var xmlhttp = createHttpRequest();
	var ergebnis = "";
	xmlhttp.open("GET", AjaxCall_GetUrl() + "?function=isVollkasko&kaskoDeckungsart=" + kaskoDeckungsart, true);
	xmlhttp.onreadystatechange=function() {
		if(xmlhttp.readyState == 4) {
			if(xmlhttp.status == 200) {
				ergebnis = xmlhttp.responseText;
				if(ergebnis == "true") {
					showDiv("KaskoSf");
				} else {
					hideDiv("KaskoSf");
				}
			}
		}
	};
	xmlhttp.send(null);
}

function getKwLeistungsIntervall(herstellerIndex) {
	hideDiv('AuswahlFahrzeug');
	hideDiv('globalinfos');
	if(herstellerIndex > 0) {
		document.getElementById('LeistungVon').length = 0;
		document.getElementById('LeistungBis').length = 0;
		var xmlhttp = createHttpRequest();
		xmlhttp.open("GET", AjaxCall_GetUrl() + "?function=getKwLeistungsIntervall&herstellerIndex=" + herstellerIndex, true);
		xmlhttp.onreadystatechange=function() {
			if(xmlhttp.readyState == 4) {
				if(xmlhttp.status == 200) {
					var listArray = eval(xmlhttp.responseText);
					if (listArray != null){
						transferListItems('LeistungVon', listArray);
						transferListItems('LeistungBis', listArray);
						showDiv('AuswahlLeistung');
					}else{
						hideDiv('AuswahlLeistung');
					}
					endeDatentranfer();
				}
			}
			
		};
		beginnDatentranfer();
		xmlhttp.send(null);
	}
}

function getFahrzeugListe() {
	var leistungVon = document.getElementById('LeistungVon').value;
	var leistungBis = document.getElementById('LeistungBis').value;
	if(leistungBis <= 0) {
		leistungBis = leistungVon;
	}
	if(leistungVon > 0) {
		document.getElementById('GefundeneFahrzeugtypen').length = 0;
		var xmlhttp = createHttpRequest();
		xmlhttp.open("GET", AjaxCall_GetUrl() + "?function=getFahrzeugListe&leistungVon=" + leistungVon+"&leistungBis="+leistungBis, true);
		xmlhttp.onreadystatechange=function() {
			if(xmlhttp.readyState == 4) {
				if(xmlhttp.status == 200) {
					transferListItems('GefundeneFahrzeugtypen', eval(xmlhttp.responseText));
					showDiv('AuswahlFahrzeug');endeDatentranfer();
				}
			}

		};
		beginnDatentranfer();
		xmlhttp.send(null);
	}
}

function transferListItems(selectId, listArray) {
	var select = document.getElementById(selectId);
	for(var i=0; i<listArray.length; i++) {
		var option = new Option(listArray[i].text, listArray[i].value);
		select.options[select.length] = option;
	}
}

function resetFahrzeugsuche() {
	hideDiv('AuswahlFahrzeug');
	hideDiv('AuswahlLeistung');
	document.getElementById('LeistungVon').value = 0;
	document.getElementById('LeistungBis').value = 0;
	document.getElementById('GefundeneFahrzeugtypen').value = 0;
	document.getElementById('GefundeneHersteller').value = 0;
}

function initFahrzeugsuche() {
	
	if(document.getElementById('GefundeneHersteller').value != 0 && document.getElementById('LeistungVon').length > 1) {
		showDiv('AuswahlLeistung');
		showDiv('AuswahlFahrzeug');
	}else{
		hideDiv('AuswahlLeistung');
		hideDiv('AuswahlFahrzeug');
	}

}

function beginnDatentranfer() {
	document.getElementById('load').style.visibility="visible";
	document.getElementById('GefundeneHersteller').disabled = true;
	document.getElementById('LeistungVon').disabled = true;
	document.getElementById('LeistungBis').disabled = true;
	document.getElementById('GefundeneFahrzeugtypen').disabled = true;
	document.getElementById('Weiter').style.backgroundColor = "#bbbbbb";
	document.getElementById('Weiter').parentNode.style.borderColor = "#bbbbbb";
	document.getElementById('Weiter').disabled = true;
}

function endeDatentranfer() {
	document.getElementById('load').style.visibility="hidden";
	document.getElementById('GefundeneHersteller').disabled = false;
	document.getElementById('LeistungVon').disabled = false;
	document.getElementById('LeistungBis').disabled = false;
	document.getElementById('GefundeneFahrzeugtypen').disabled = false;
	document.getElementById('Weiter').style.backgroundColor = "#5c9c17";
	document.getElementById('Weiter').parentNode.style.borderColor = "#5c9c17";
	document.getElementById('Weiter').disabled = false;
}

//------------------------------------------------------------------------------
//Skript Enter Funktion
//Autor: IE6X
//Ertellt: 19.02.2008
//------------------------------------------------------------------------------
/** 
	Legt bei 'enter' den Focus auf den Weiter-Button. 
	Funktioniert mit IE6, FireFox 2.
*/
function enter(Ereignis) {
  
  if (!Ereignis) 
  {
    Ereignis = window.event;
  }//--- END if (!Ereignis) { --------------------------------------------------
  
  if (Ereignis.which == "13" || Ereignis.keyCode == "13") 
  {
  	
  	var button = document.getElementsByName("conButton")[0];
  	var bFound = false
  	var i = 0;
  	while(bFound == false)
  	{
  		if(button)
  		{
  			if(button.id == "Weiter" || 
  			button.id == "Jetztbeantragen" || 
  			button.id == "Beitragberechnen" ||
  			button.id == "Antragerstellen" ||
  			button.id == "Antragabschicken" ||
  			button.id == "Versicherungsbestaetigunganfordern" )
  			{
  				bFound = true;
 	 		} else
  			{
		  		i++;
  				button = document.getElementsByName("conButton")[i];
  			}//--- END if(button.id == "Weiter" || -----------------------------
  			
		} else
  		{
 	 		break;
  		}//--- END if(button) --------------------------------------------------
  		
  	}//--- END while(bFound == false) ------------------------------------------

  	if (button != null && !button.disabled) {
  	   button.focus();
  	}//--- END if (button != null && !button.disabled) { -----------------------
  	
  }//--- END if (Ereignis.which == "13" || Ereignis.keyCode == "13") { ---------
}//--- END function enter(Ereignis) { ------------------------------------------
document.onkeydown = enter;
