var counter_weiter = 0;

function allg_init() {
	checkDatenschutz();
	checkSicher();
	checkFaq();
	focusErster();
	allgemein_check_login();
	checkFahrzeugsuche();
}

function deactivateButton(bId, fId) {
  if (document.getElementById(bId))
  {
    document.getElementById(bId).style.display = "none";
    document.getElementById(fId).style.display = "inline";
  }
  return 1;
}

function checkFahrzeugsuche() {
	// die Fahrzeugsuche soll auch initial ausgefuehrt werden, wenn bestimmte Felder den richtigen Status haben
	// Fahrzeugschein: nein, Hersteller ausgewaehlt
	if ( 
		document.getElementById('fahrzeugschein_vorh_1') &&
		document.getElementById('fahrzeugschein_vorh_1').checked == true 
		&&
		document.getElementById('erster') &&
		document.getElementById('erster').value != ''
		) {
		suche_fahrzeug();
	}
}

function checkDatenschutz() {
	check_eintrag("datenschutz", 5);	
}

function checkSicher() {
	check_eintrag("sicher", 3);
}

function checkFaq() {
	check_eintrag("faq", 18);
}

function check_eintrag(thema, anz) {
	for (var i=1; i <= anz; i++) {
	  if (document.getElementById(thema + i)) 
		document.getElementById(thema + i).style.display = (document.getElementsByName("eintrag")[0].value == i)? "block" : "none";
	}
}

function set_general_value(field) {
	if (document.getElementsByName(field)[0]) {
		document.getElementsByName(field)[0].value = document.getElementsByName("tmp_"+field)[0].value;
	}
}

function set_value(field) {
  document.getElementsByName(field)[0].value = document.getElementsByName("multi-"+field)[0].value;
}

function focusErster() {
	if (document.getElementById("erster")) {
		// im IE wird ein Fehler geworfen, wenn das Element ausgeblendet ist
		try {
			document.getElementById('erster').focus();
		} catch(e) {
			//MacheNichts
		}
	}
}

function blende_Suffix_ein(field) {
	var id = field.id;
    document.getElementById(id+"_suffix_container").style.display = "inline";
}

function blende_Suffix_aus(field) {
	var id = field.id;
    document.getElementById(id+"_suffix_container").style.display = "none";
}

function show_format_info(info) {
    document.getElementById("format_info_"+info).style.display = "inline";
}

function clear_format_info(info) {
    document.getElementById("format_info_"+info).style.display = "none";
}

function check_focus() {
  var value = document.getElementsByName("focus_helper")[0].value;
  if(value == 0) {
    document.getElementsByName("focus_helper")[0].value = 1;
    return false;
  }
  else 
    return true;
}
  
function set_focus_helper(value) {
  document.getElementsByName("focus_helper")[0].value = value;
}

function write_flash ( mediaId, flashPath, flashWidth, flashHeight, opaCity, bgColor) {
  var dom = document.location.href;
  var i = 0;
  var c = 0;
  while (i < dom.length) {
    if (dom.substr(i, 1) == "/" || dom.substr(i, 1) == "\\") {
      c++;
      if (c == 3) {
        dom = dom.substr(0, i);
        break;
      }
    }
    i++;
  }
  var flashTag = '<object '
                + 'id="' + mediaId + '" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="' + flashWidth + '" height="' + flashHeight + '">'
                + '<param name="movie" value="' + flashPath + '">'
                + '<param name="quality" value="high">'
                + '<param name="menu" value="false">'
                + '<param name="wmode" value="' + opaCity + '">'
                + '<param name="bgcolor" value="' + bgColor + '">'
                + '<param name="flashvars" value="dom=' + dom + '">'
                + '<param name="allowscriptaccess" value="always">'
                + '<embed src="' + flashPath + '" flashvars="dom=' + dom + '" allowscriptaccess="always" menu="false" quality="high" bgcolor="' + bgColor + '" width="' + flashWidth + '" height="' + flashHeight + '" type="application/x-shockwave-flash" pluginspace="https://www.macromedia.com/go/getflashplayer"></embed>'
                + '</object>';

  document.write(flashTag);
}

// Weiter-Button nur einmal clicken lassen
function check_submit() {
  counter_weiter++;
  if(counter_weiter > 1)
    return false;
  return true;
}

// AJAX-Check
function check_ajax() {
  if ( !window.XMLHttpRequest && !window.ActiveXObject ) {
    return false;   
  }
  return true;
}

function allgemein_check_login() {
  if(document.getElementById("tr_benutzername") && document.getElementById("tr_vsnr")) {
    if(document.getElementsByName("typ")[0].checked == true) {
      document.getElementById("tr_benutzername").style.display = "";
      document.getElementById("tr_vsnr").style.display = "none";
    } else if(document.getElementsByName("typ")[1].checked == true) {
      document.getElementById("tr_benutzername").style.display = "none";
      document.getElementById("tr_vsnr").style.display = ""; 
    }
  }
}

function allgemein_setze_werte() {
  if(allgemein_setze_werte.arguments[0] == "") {
    $(allgemein_setze_werte.arguments[2]).value = "";
    $(allgemein_setze_werte.arguments[3]).value = "";    
  } else {
    var values = allgemein_setze_werte.arguments[0].split(allgemein_setze_werte.arguments[1]);
    $(allgemein_setze_werte.arguments[2]).value = values[0];
    $(allgemein_setze_werte.arguments[3]).value = values[1];  
  }
}

function allgemein_zeige_modul(modul) {
  var values = modul.split(";");
  var modulname = values[0];
  var feldname = values[1];
  var vergleichsoperator = values[2];
  var vergleichswert = values[3];
  var abhaengige_module = new Array();
  var reset_aktion = values[5];
  if (values[4]) {
    abhaengige_module = values[4].split(",");
  }
  //console.log("Zeige: "+ modulname +" Vergleichsoperator: " + vergleichsoperator);

  if (vergleichsoperator == "komplex" && $(modulname))
  {
    if (vergleichswert && eval(vergleichswert)) {
      $(modulname).style.display = "";
    }
    else {
      $(modulname).style.display = "none";
      if (reset_aktion) { eval(reset_aktion) };
      allgemein_zeige_modul_abhaengige_module_ausblenden(abhaengige_module);
    }
  }
  else if (document.getElementsByName(feldname)[0] && $(modulname))
  {
    if(document.getElementsByName(feldname)[0].type == "radio") {
      var bedingung = new Array ();
      var checked = "-1";
      for(var i = 0; i < document.getElementsByName(feldname).length; i++) {
        if(document.getElementsByName(feldname)[i].checked == true)
        checked = i;
      }
      if(checked == "-1") {
        $(modulname).style.display = "none";
        if (reset_aktion) { eval(reset_aktion) };
        return;
      }
      if(vergleichsoperator == "match") {
        bedingung[checked] = "document.getElementsByName('"+feldname+"')["+checked+"].value.match(/" + vergleichswert + "/)";
      } else if(vergleichsoperator == "!match") {
        bedingung[checked] = "!document.getElementsByName('"+feldname+"')["+checked+"].value.match(/" + vergleichswert + "/)";
      } else if(vergleichsoperator == "in") {
      	bedingung[checked] = vergleichswert + ".search(/" + document.getElementsByName(feldname)[checked].value + "/) != -1";
      } else {
        bedingung[checked] = "document.getElementsByName(feldname)[checked].value" + " " + vergleichsoperator + " " + vergleichswert;
      }
      // console.log("Bedingung Checked: " + bedingung[checked]);
      if (eval(bedingung[checked])) {
        $(modulname).style.display = "";
      } else {
        $(modulname).style.display = "none";
        allgemein_zeige_modul_abhaengige_module_ausblenden(abhaengige_module);
        if (reset_aktion) { eval(reset_aktion) };
      }
    } else if(document.getElementsByName(feldname)[0].type == "checkbox") {
      if (vergleichsoperator == "==") {
        if (document.getElementsByName(feldname)[0].checked) {
          $(modulname).style.display = "";
        } else {
          $(modulname).style.display = "none";
          if (reset_aktion) { eval(reset_aktion) };
        }
      } else if (vergleichsoperator == "!=") {
        if (document.getElementsByName(feldname)[0].checked) {
          $(modulname).style.display = "none";
        } else {
          $(modulname).style.display = "";
          if (reset_aktion) { eval(reset_aktion) };
        }
      }
    // kein Radiobutton keine Checkbox
    } else {
      if(document.getElementsByName(feldname)[0].value == "") {
        $(modulname).style.display = "none";
        if (reset_aktion) { eval(reset_aktion) };
        return;
      }    
      if(vergleichsoperator == "match")
        var bedingung = "document.getElementsByName('"+feldname+"')[0].value.match(/" + vergleichswert + "/)";
      else if(vergleichsoperator == "!match")
        var bedingung = "!document.getElementsByName('"+feldname+"')[0].value.match(/" + vergleichswert + "/)";
      else if(vergleichsoperator == "in")
      	bedingung = vergleichswert + ".search(/" + document.getElementsByName( feldname )[0].value + "/) != -1";
      else
        var bedingung = "document.getElementsByName(feldname)[0].value" + " " + vergleichsoperator + " " + vergleichswert;

      if (eval(bedingung)) {
        $(modulname).style.display = "";
      }
      else {
        $(modulname).style.display = "none";
        if (reset_aktion) { eval(reset_aktion) };
      }
    }
  }
}

function zeige_Mehrfahrzeugbonus() {
  if (document.getElementsByName('KRAFT-dokument-erstfahrzeug_sf2').length <= 0) {
    return 0;
  }
  
  // Mehrfahrzeugebonus nicht moeglich wenn VorVu != Sonstige
  // oder 
  // Grund == FZWECHSEL
  if (getRadioValue('KRAFT-dokument-vorvu_mask') != 'SONST' &&
      (
      document.getElementsByName('KRAFT-dokument-grund')[0] &&
      document.getElementsByName('KRAFT-dokument-grund')[0].value == 'FZGWECHSEL')
      )
  {
    return 0;
  }

  // Mehrfahrzeugebonus nicht moeglich wenn keine weiteren Fahrzeuge existieren
  var fzge = document.getElementsByName('KRAFT-dokument-fahrzeuge_haushalt')[0];
  if (fzge && (fzge.value == '-1' || fzge.value == 'EINS')) {
    return 0;
  }
  
  // FZGWechsel VUWechsel

  // Der aktuelle Vertrag muss mindestens SF 1/2 bekommen
  var sfr_kh = document.getElementsByName('KRAFT-dokument-sfr_kh')[0];
  if (   sfr_kh
      && "-1 KH_M KH_S KH_SF00".search(new RegExp(sfr_kh.value)) != -1) {
    return 0;
  }

  // Der Kunde darf kein Kunde mit erhoehter Gefahr sein
  var sfr_vk = document.getElementsByName('KRAFT-dokument-sfr_vk')[0];
  if (sfr_vk && (sfr_vk.value == '-1' || sfr_vk.value == 'VK_M')) {
    return 0;
  }

  if (getRadioValue('KRAFT-dokument-vorvu_kuendigung') == '1') {
    return 0;
  }
  
  // Fall Neuvertrag, Zweitwagen
  
  var refTyp = document.getElementById('referenzvertrags_typ');
  if (refTyp && (refTyp.value != 'ZWEITWAGEN_SF1_2_ALLIANZ' && refTyp.value != 'ZWEITWAGEN_SF2')) {
    return 0;
  }
  
  return 1;
}

function zeige_anruf_ausschluss_zeiten() {
  if(document.getElementsByName("werbeerlaubnis_erteilt_checkbox").length == 0) {
    return 0;
  }

  if(document.getElementsByName("KRAFT-dokument-vn-tel_geschaeft").length == 0) {
    return 0;
  }

  if(document.getElementsByName("KRAFT-dokument-vn-tel_privat").length == 0) {
    return 0;
  }

  var werbeerlaubnis_erteilt = document.getElementsByName("werbeerlaubnis_erteilt_checkbox")[0].checked;
  var tel_privat = document.getElementsByName("KRAFT-dokument-vn-tel_privat")[0].value;
  var tel_geschaeft = document.getElementsByName("KRAFT-dokument-vn-tel_geschaeft")[0].value;

  if(werbeerlaubnis_erteilt && (tel_privat.length > 0 || tel_geschaeft.length > 0)) {
    return 1;
  }
  else {
    return 0;
  }
}

function zeige_HinweisGewerbe() {
    if ( (document.getElementsByName('KRAFT-dokument-versichertes_objekt-betriebsausgabe')[0]
          && document.getElementsByName('KRAFT-dokument-versichertes_objekt-betriebsausgabe')[0].type == 'radio'  
          && radiobutton_hat_wert('KRAFT-dokument-versichertes_objekt-betriebsausgabe', '1')
         ) && (
          document.getElementsByName('KRAFT-dokument-vn-selbststaendigkeit_art')[0]
          && document.getElementsByName('KRAFT-dokument-vn-selbststaendigkeit_art')[0].type == 'radio'  
          && radiobutton_hat_wert('KRAFT-dokument-vn-selbststaendigkeit_art', 'GEWERBLICH')
         )
    ) {
        return 1;
    } else {
        return 0;
    }
}

function allgemein_zeige_modul_abhaengige_module_ausblenden(abhaengige_module) {
  for(var i = 0; i < abhaengige_module.length; i++) {
    $(abhaengige_module[i]).style.display = "none";
  }
}

function allgemein_feldlaenge(feld, laenge, info) {
  if(document.getElementsByName(feld)[0]) {
    var value = document.getElementsByName(feld)[0].value;
    if(info && document.getElementById(info) && (laenge - value.length) >= 0)
      document.getElementById(info).innerHTML = "noch " + (laenge - value.length) + " Zeichen";
    if(laenge - value.length <= 0)  
      document.getElementsByName(feld)[0].value = value.substring(0,laenge);
  }
}

function allgemein_fehler_zuruecksetzen() {
  var control = new Array("input", "select", "textarea");
  for(var i=0; i < control.length; i++) {
    var elem = document.getElementsByTagName(control[i]);
    for(var j=0; j < elem.length; j++) {
      elem[j].className = elem[j].className.replace(" fehler", "");
    }
  }
}


// Formatierungsfunktionen

function format_number(field, laenge, vorzeichen) {
  if (field.nodeName.toLowerCase() == "label")
    number = field.innerHTML;
  else
    number = field.value;
  
  if(!vorzeichen && number.match(/\-/)){ // vorzeichen pruefen
    alert("Bitte nur positive Werte eingeben!")
    field.focus();
	field.select();
    return false;
  }
  
  var ausgabe = get_currency_format(number,laenge);

  if(ausgabe != ""){  
    if(!ausgabe.match(/\bNaN\b/))
    {
      newValue = ausgabe;
	  if (field.nodeName.toLowerCase() == "label")
        field.innerHTML = newValue;
      else
        field.value = newValue;
    }
    else
    {
      if (field.nodeName.toLowerCase() == "label")
        field.innerHTML = newValue;
      else
        field.value = "";
       
        if (field.type != "hidden") {
          field.focus();
	      field.select();
	    }
     }
  }
}


function format_number_length(field, length) {
	if(field.value != "") {
      var new_string = (field.value.match(/\./))? field.value.substring(0, (length + 1)) : field.value.substring(0,length);
      field.value = new_string;
	}
}


format_date = format_datum = function(field, switch_flag, hidden_flag, hidden_id) {
  var Jahr, Monat, Tag, Datumstring;
  
  var validate = true;
  if (hidden_flag) {
  	if (document.getElementById(hidden_id)) {
  		if (document.getElementById(hidden_id).value == '1') {
  			validate = false;
  		}
  		else {
  			document.getElementById(hidden_id).value = '1';
  		}
  	}
  }
  
  if (validate) {
		if(field.value != "")
		{
			if(!field.value.match(/\./)) {
			var value1 = field.value.substring(0,2);
			var value2 = field.value.substring(2,4);
			var value3 = field.value.substring(4,8);
			field.value = value1+"."+value2+"."+value3;
		}
		
			Datumstring = field.value.replace(/ /g,"").split(".");
			if (Datumstring.length != 3 ) { 
			// pruefen, ob 3-teilig
				alert("Bitte folgendes Format verwenden: \ntt.mm.jjjj oder tt.mm.jj");
				return false;
			}
	
			if (isNaN(Datumstring[0]) ||isNaN(Datumstring[1])||isNaN(Datumstring[2])) { 
			// pruefen, ob jeweils Nummer
				alert("Bitte folgendes Format verwenden: \ntt.mm.jjjj oder tt.mm.jj")
				return false;
			}
	
			Jahr = Datumstring[2];
			Monat = Datumstring[1];
			Tag = Datumstring[0];
			
	
			
		var Maxtag = 31;
			if(Monat==4 ||Monat==6 || Monat==9 || Monat==11 ) //Monate 4,6,9,11 auf 30 Tage setzen
			Maxtag=Maxtag-1;
			if(Monat==2) //Februar auf 28 Tage setzen
			{
				Maxtag=28;
				if(Jahr%4==0) //februar auf 29 Tage setzen
				Maxtag=Maxtag+1;
				if(Jahr%100==0) //kein Schaltjahr, zur&uuml;ck auf 28 Tage
				Maxtag=Maxtag-1;
				if(Jahr%400==0) //Schaltjahr, zur&uuml;ck auf 29 Tage
				Maxtag=Maxtag+1;
			}
		
		if (Tag < 1 || Tag > Maxtag) {
				alert("Datum existiert nicht!")
				return false;
			}
	
	
			if (Monat < 1 || Monat > 12 ) { // pruefen, ob gueltiger Monat
				alert("Monat existiert nicht!")
				return false;
			}
		
			 if (Jahr.length != 4  && Jahr.length != 2)
			{ // pruefeAn, ob 4- oder 2-stellig
				alert("Bitte folgendes Format verwenden: \ntt.mm.jjjj oder tt.mm.jj")
				return false;
			} else if(Jahr.length == 2){ // wenn 2-stellig, Jahrhundert anhaengen
				var jetzt = new Date();
				var jahr_limit = (switch_flag)? String((jetzt.getFullYear() + 1)).substring(2,4) : 50;
			if(parseFloat(Jahr) >= jahr_limit)
				Jahr = "19"+Jahr;
			else if(parseFloat(Jahr) < jahr_limit)
				Jahr = "20"+Jahr;
			field.value = Tag+"."+Monat+"."+Jahr;
		}
	
			if (Monat.length > 2 || Tag.length > 2 )
			{
				alert("Bitte folgendes Format verwenden: \ntt.mm.jjjj oder tt.mm.jj")
				return false;
			}
			
			if(Monat.length == 1) 
				Monat = "0"+Monat;
			if(Tag.length == 1)
				Tag = "0"+Tag; 
			field.value = Tag+"."+Monat+"."+Jahr;
		}
	}
}


function get_currency_format(number, laenge) {
/* Formatierung vom Zahlenwerten; number wird als String uebergeben und 
   soll formatiert werden, laenge ist die Anzahl der Nachkommastellen */
  var sep = ",";
  var th_sep= ".";
  var pre = "";
  var newValue = "";
  var ausgabe = "";
  number = String(number);
  if(number != "")
  {
    if(number.match(/\-/)){ // Minuszeichen entfernen
	  number = number.replace(/\-/, "");
	  pre = "-";
	}
    while(number.match(/\./)) // Tausender-Punkt entfernen
      number = number.replace(/\./, "");
    number = number.replace(/\,/, "."); // Komma in Punkt umwandeln
    number = Math.round( number * Math.pow(10, laenge) ) / Math.pow(10, laenge);
    str_number = number+"";

	arr_int = str_number.split(".");
    if(!arr_int[0]) arr_int[0] = "0";
    if(!arr_int[1]) arr_int[1] = "";
    if(arr_int[1].length < laenge)
    {
      nachkomma = arr_int[1];
      for(i=arr_int[1].length+1; i <= laenge; i++)
      {nachkomma += "0";}
      arr_int[1] = nachkomma;
    }
    if(th_sep != "" && arr_int[0].length > 3)
    {
      Begriff = arr_int[0];
      arr_int[0] = "";
      for(j = 3; j < Begriff.length ; j+=3)
      {
        Extrakt = Begriff.slice(Begriff.length - j, Begriff.length - j + 3);
        arr_int[0] = th_sep + Extrakt +  arr_int[0] + "";
      }
      str_first = Begriff.substr(0, (Begriff.length % 3 == 0)?3:(Begriff.length % 3));
      arr_int[0] = str_first + arr_int[0];
    }
    if(laenge > 0)
      var ausgabe=pre+String(arr_int[0])+sep+String(arr_int[1]);
    else
      var ausgabe=pre+String(arr_int[0]);
  }
  return ausgabe;
}


function clear_int_field(field) {
	field.value = field.value.replace(/ +/g, '');
	return true;
}


// Event-Funktionen

function addEvent(obj, evType, fn){ 
 if (obj.addEventListener){ 
   obj.addEventListener(evType, fn, false); 
   return true; 
 } else if (obj.attachEvent){ 
   var r = obj.attachEvent("on"+evType, fn); 
   return r; 
 } else { 
   return false; 
 } 
}

function removeEvent(obj, evType, fn, useCapture){
  if (obj.removeEventListener){
    obj.removeEventListener(evType, fn, useCapture);
    return true;
  } else if (obj.detachEvent){
    var r = obj.detachEvent("on"+evType, fn);
    return r;
  } else {
    alert("Handler could not be removed");
  }
}


// Infofunktionen

function checkInfos() {
	var infos = new Array("info_versicherungsschein","info_typnr","info_hersteller",
	"kontakt_versicherungsschein","kontakt_schadennummer","info_sf_kh","info_sf_vk",
	"info_vorschlag_kh","info_vorschlag_tk","info_vorschlag_tk_ass","info_vorschlag_vk",
	"info_vorschlag_vk_ass","info_vorschlag_up","info_toleranz", "info_identnr",
	"kwk_versicherungsschein","info_betriebsausgabe");
	
    for (var i=0; i < infos.length; i++) {
	  if (document.getElementById(infos[i])) {
		document.getElementById(infos[i]).style.display = "none";
	  }
	}
}

function showInfo(infoId) {
	if (document.getElementById(infoId)) {
		if (document.getElementById(infoId).style.display == "none") {
			document.getElementById(infoId).style.display = "";
			if (document.getElementById('usedInfoButtons')) {
				document.getElementById('usedInfoButtons').value += ":" + infoId;
			}
      if (actionsTrackable == 1) {
        trackeInfotexte(infoId);
      }
		} else {
			document.getElementById(infoId).style.display = "none";
		}
	}
}

function trackeInfotexte(infoId) {
  var oNMConfig2        = new cConfigPixel();
  //Vollstaendigkeithalber koennen die Settings zurueckgesetzt werden
  //Solange kein doPixelInstance() aufgerufen wird ist dies aber ohne Auswirkung
  //oNMConfig2.m_bAutoparams=false;
  //oNMConfig2.m_bAutosend=false;
  //oNMConfig2.m_bSendUrl=true;
  //oNMConfig2.m_bSendReferrer=false;
  //oNMConfig2.m_bSendMetaTags=false;
  //oNMConfig2.m_bSendTech=false;
  //oNMConfig2.m_bSendCGIParams=false;

  // trackPixelServer is set/calculated in tpl/base/ibf/page_templates/applikationen/render_applikation
  // and is different from static_url (no proto)
  oNMConfig2.m_strPixelServer=trackPixelServer;


  var oNMRemoteSession2 = new cRemoteSession(oNMConfig2);
  var oNMRemotePixel2   = new cRemotePixel(oNMConfig2);

  oNMRemotePixel2.addParameter ("nm_px", 'allsecur');
  oNMRemotePixel2.addParameter ("url", document.location);
  oNMRemotePixel2.addParameter ("nm_title", document.title);
  oNMRemotePixel2.addParameter ("nm_hilfetexte", infoId);
    

    
  // Information an netmind Tracker Ã¼bermittel
  //var strCurrentUrl = oNMRemotePixel2.createUrl("");
  //document.write('<img src="' + strCurrentUrl + '" width="1" height="1" atl="nmtag" />');
  //hier kein document.write moeglich :-) daher mit sendData
  oNMRemotePixel2.sendData (oNMRemoteSession2);
}

function showInfoLastRow(infoId) {
	if (document.getElementById(infoId)) {
		if (document.getElementById(infoId).style.display == "none") {
			document.getElementById(infoId).style.display = "";
			if (document.getElementById('usedInfoButtons')) {
				document.getElementById('usedInfoButtons').value += ":" + infoId;
			}
			document.getElementById('lastRow').className = 'mainFormVorschlagZeileDotted';
		} else {
			document.getElementById(infoId).style.display = "none";
			document.getElementById('lastRow').className = 'mainFormVorschlagZeileSolid';
		}
	}
}

function hideInfo(infoId) {
	if (document.getElementById(infoId)) {
		document.getElementById(infoId).style.display = "none";
	}
}

function set_lastschrift(dropd) {
	if (dropd.value == 'RECHNUNG_GENERISCH') { 
		showInfo('info_zahlungsart') 
	} else { 
		hideInfo('info_zahlungsart') 
	}
}

// Setzt eine Gruppe von Checkboxen im Dialog anhand des Namens auf unchecked
// und setzt den hidden field auf Null
function setze_checkbox_zurueck(checkbox_container_name)
{
  var container = document.getElementById(checkbox_container_name + "_value_container")
  if (container)
  {
    var input = container.getElementsByTagName('input');
    for(var i = 0; i < input.length; i++) {
      //console.log("Element: " + input[i].name + " Type: "+ input[i].type + " - " + input[i]);
      if (input[i].type == "checkbox") {
        // console.log("deaktiviere "+ childnode.name);
        input[i].checked = false;
      }
      else if (input[i].type == "hidden") {
        input[i].value = "0";
      }
      else if (input[i].type == "text") {
        input[i].value = "0";
      }
    }
    
  }
}

// Prueft ob der Radio Button mit dem uebgebenen Wert
// im Dialog ausgewaehlt ist oder ob keiner ausgewaehlt ist.
function radiobutton_hat_wert(name, wert)
{
  var radiobuttons = document.getElementsByName(name);
  for(var i = 0; i < radiobuttons.length; i++) {
    if (radiobuttons[i].checked)
    {
      if (radiobuttons[i].value.match(wert))
      {
        return 1;
      }
    }
  }
  return 0;
}

// Prueft ob der Radio Button mit dem uebgebenen Wert
// im Dialog ausgewaehlt ist oder ob keiner ausgewaehlt ist.
function radiobutton_hat_wert_oder_null(name, wert)
{
  var radiobuttons = document.getElementsByName(name);
  var chosen = 0; // Ob bereits eine Auswahl getroffen wurde
  for(var i = 0; i < radiobuttons.length; i++) {
    if (radiobuttons[i].checked)
    {
      chosen = 1;
      if (radiobuttons[i].value.match(wert))
      {
        return 1;
      }
    }
  }
  if (! chosen) {
    return 1;
  }
  return 0;
}


function aendere_default_button_fuer_anmeldung (input_element) {

  // Der Default-Button hat keine Id.  Diese wird aber wegen den
  // Umbenennungen des Names benoetigt! 
  var default_button = document.getElementById('defaultbutton');
  if (!default_button) {
    default_button = document.getElementsByName('ablauf_weiter')[0];
    default_button.id = 'defaultbutton';
  }

  if (default_button) {
    if (input_element.id == 'kunde_0') {
      default_button.name = 'ablauf_sprung_13';
    }
    else if (input_element.id == 'kunde_1') {
      default_button.name = 'ablauf_sprung_2';
    }
  }
}


// Fuer KundenWerben
function check_PraemienAuswahl (id) {
    document.getElementById(id).checked = true;
    
    
    if (document.getElementById("KRAFT-dokument-kundenbonustyp_radio_GUTSCHEIN").checked) {
        document.getElementById("KRAFT-dokument-kundenbonustyp_bild_GUTSCHEIN").src = "/static/images/kwk/gutschein.png";
        document.getElementById("KRAFT-dokument-kundenbonustyp_bild_GUTSCHRIFT").src = "/static/images/kwk/bar_blass.png";
        document.getElementById("KRAFT-dokument-kundenbonustyp_text_GUTSCHEIN").src = "/static/images/kwk/gutschein_text.jpg";
        document.getElementById("KRAFT-dokument-kundenbonustyp_text_GUTSCHRIFT").src = "/static/images/kwk/bar_text_blass.jpg";

        
    } else if (document.getElementById("KRAFT-dokument-kundenbonustyp_radio_GUTSCHRIFT").checked) {
        document.getElementById("KRAFT-dokument-kundenbonustyp_bild_GUTSCHRIFT").src = "/static/images/kwk/bar.png";
        document.getElementById("KRAFT-dokument-kundenbonustyp_bild_GUTSCHEIN").src = "/static/images/kwk/gutschein_blass.png";
        document.getElementById("KRAFT-dokument-kundenbonustyp_text_GUTSCHEIN").src = "/static/images/kwk/gutschein_text_blass.jpg";
        document.getElementById("KRAFT-dokument-kundenbonustyp_text_GUTSCHRIFT").src = "/static/images/kwk/bar_text.jpg";

    }
}

// Fuer KundenWerben Profilseite.
function kw_bankdatenaendern() {
    if (document.getElementById("BankdatenAendern_0").checked) {
        window.location.href = '/my/profil.html?ablauf_sprung_0=1&ablauf_aktuell=4';
        
    } else if (document.getElementById("BankdatenAendern_1").checked) {
        window.location.href = '/my/profil.html?ablauf_sprung_4=1$ablauf_aktuell=0';
    }
}

function bilder_tauschen (img_id) {
    var image  = $(img_id);
    var src    = image.src;
    image.src  = image.getAttribute('altsrc'); 
    image.setAttribute('altsrc', src); 
}


function starte_datenuebergabe_an_amis(ID, FakeAmis) {
    $('speichern_mit_AMIS_Text').style.display = 'none';
    $('progressbar').style.display = 'block';
    $('starte_uebertragung').disabled = true;
    $('ablauf_beendesub').disabled = true;
    registerCallbackVorgangsanlageCompleted(datenuebergabe_an_amis_erfolg);
    registerCallbackVorgangsanlageAborted(datenuebergabe_an_amis_fehler);

    // Fake aktivieren wenn noetig
    if (FakeAmis == 1) {
        fakeAmisXmlDo();
    }
    // erneute Pruefung ob AMIS tatsaechlich erreichbar ist
    if (checkAmisXmlDoAvailable()) {
        // AMIS ist erreichbar
        beginVorgangsanlageMitPortalVorgangId(ID);
    } else {
        // Fehler
        datenuebergabe_an_amis_fehler(ID);
    }
}
function datenuebergabe_an_amis_erfolg(vorgangs_id) {
    //alert("Alle Daten wurde uebertragen: " + vorgangs_id);
    $('progressbar').style.display = 'none';
    $('speichern_mit_AMIS_Text_erfolg_container').style.display = 'block';
    $('starte_uebertragung').style.display = 'none';
    $('ablauf_beendesub').disabled = false;
    $('ablauf_beendesub').value = '< Zurück';
}
function datenuebergabe_an_amis_fehler(vorgangs_id) {  
    //alert("Es ist ein Fehler aufgetreten..." + vorgangs_id);
    $('progressbar').style.display = 'none';
    $('speichern_mit_AMIS_Text_fehler_container').style.display = 'block';
    $('starte_uebertragung').style.display = 'none';
    $('ablauf_beendesub').disabled = false;
    $('ablauf_beendesub').value = '< Zurück';
}

// Fuer SBA/Endbenutzersuche: START
function toogle_vertrag (id) {
    $(id).toggle();
    var image  = $(id+"_image");
    var tmp    = image.src;
    image.src  = image.getAttribute('src_tmp'); 
    image.setAttribute('src_tmp', tmp); 
}

function suche_benutzer(feld) {
    var suchstring = $(feld).value;
    var encoded = encodeURI(suchstring);
    new Ajax.Updater('such_ergebnis', '/sba/endbenutzer/benutzer_suche.html?name=' + encoded);
} 
// Fuer SBA/Endbenutzersuche: ENDE

// Ermittelt den ausgewählten Wert eines ProDi Radio Buttons
function getRadioValue(feldname) {
	for (var i = 0; i < document.getElementsByName(feldname).length; i++) {
		if (document.getElementsByName(feldname)[i].checked == true) {
			// console.log("Radio "+ feldname +" Value: "+ document.getElementsByName(feldname)[i].value);
			return document.getElementsByName(feldname)[i].value;
		}
	}
	return null;
}

