// 03.06.2004 Mailprüfung angepasst
// FramePrüfung
// PersDat Kontrolle und Übernahme in EHSDATA_BESUCHER_EN
// Erweiterung der Funktionen saveForm und loadForm
// Cookie löschen auf der Dankeseite
// 23.03.2003  

function saveForm() {
	var order = new String(getCookie("EHSDATA_BESTELLUNG"));	
	var elnam = new String();
	for (var i = 0; i < document.form.elements.length; i++){
		elnam = document.form.elements[i].name;
		if (elnam.indexOf("BT_") != "0"){
			order = delItem(order, document.form.elements[i]);
		}
	}
	for (var i = 0; i < document.form.elements.length; i++){
		elnam = document.form.elements[i].name;
		if (elnam.indexOf("BT_") != "0"){
			order = addItem(order, document.form.elements[i]);
		}
	}
	setCookie("EHSDATA_BESTELLUNG", order);
	AktiveBestellMenge();
}


// Schreibt den Aktuellen Wert 'order' in das Eingabefeld 'BestellMenge' in das Formular 'Anzeigen'
// mit Prüfung ob im Frameset der Frame 'suche' vorhanden ist.


function AktiveBestellMenge() {
 if(top != self) {
	var order = new String(getCookie("EHSDATA_BESTELLUNG"));
	var SummeEinzelMengen =0;
	var BestellNrMenge = order.split(";");
	var BestellGruppen = BestellNrMenge.length -1
	
	for(var i = 0; i <= BestellGruppen; i++){
	 if (BestellNrMenge[i]){
	  var Bestellung = BestellNrMenge[i].split(":");
	  var Menge = eval(Bestellung[1]);
	  SummeEinzelMengen += Menge;
	 }
	}
	parent.suche.Anzeigen.BestellMenge.value = SummeEinzelMengen + " item(s)"
 }
}


function DelPosten(i) {
	document.form.elements[i].value = 0;
	saveForm();
}

function loadForm() {
	var elnam = new String();
	var order = new String(getCookie("EHSDATA_BESTELLUNG"));
	for (var i = 0; i < document.form.elements.length; i++){
		elnam = document.form.elements[i].name;
		if (elnam.indexOf("BT_") != "0"){
			document.form.elements[i].value = getQty(order, document.form.elements[i].name);
		}
	}
	AktiveBestellMenge();
}

function addItem(str, item2add) {
	var ival = new String (cleanInput(item2add.value));
	if (ival > 0) { str = str + item2add.name + ":" + ival + ";"}
	return str;
}


function delItem(str, item2delete) {
	name2delete = item2delete.name + ":";
	delbgn = str.indexOf(name2delete);
	if (delbgn < 0) { return str; } // Schluessel nicht gefunden
	else {
		delend = str.indexOf(";", delbgn) + 1;
		return str.substring (0, delbgn) + str.substring (delend, str.length);
	}
}


function getQty(str, name2evaluate) {
	var objnam = new String(name2evaluate + ":");
	var delbgn = str.indexOf(objnam);
	if (delbgn < 0) { return "0"; }
	else {
		var varbgn = delbgn + objnam.length;
		varend = str.indexOf(";", delbgn);
		return str.substring (varbgn, varend);
	}
}


function cleanInput(input) {
	var str = new String(input);
	if ( str.length < 1 ) { str = "0" }
	else {
		for (var index=0; index < str.length; index++) {
			if (str.charAt(index) < "0" || str.charAt(index) > "9") {
				alert ("\nBitte nur Zahlen eingeben!   ");
				str = "0";
			}
		}
		str++; // befreit auf einfachste weise
		str--; // von fuehrenden nullziffern
	}
	return str;
}


// Formularprüfung und Datenübergabe in EHSDATA_BESUCHER_EN

function checkUserData() {
 if(document.form.r_vorname.value == "")  {
   alert("Please enter your name!");
   document.form.r_vorname.focus();
   return false;
  }
 if(document.form.r_name.value == "")  {
   alert("Please enter your name!");
   document.form.r_name.focus();
   return false;
  }
 if(document.form.r_stnr.value == "")  {
   alert("Please enter your street name!");
   document.form.r_stnr.focus();
   return false;
  }

 if(document.form.r_posl.value == "")  {
   alert("Please enter your zip code!");
   document.form.r_posl.focus();
   return false;
  }

 if(document.form.r_wort.value == "")  {
   alert("Please enter your city!");
   document.form.r_wort.focus();
   return false;
  }

 if(document.form.r_tele.value == "")  {
   alert("Please enter your telephone number!");
   document.form.r_tele.focus();
   return false;
  }

 if(document.form.r_mail.value == "") {
   alert("Please enter your E-Mail-Address!");
   document.form.r_mail.focus();
   return false;
  }
  
   if(document.form.r_mail_1.value == "") {
   alert("Please enter your E-Mail-Address!");
   document.form.r_mail_1.focus();
   return false;
  }
  
  if(document.form.r_mail.value != document.form.r_mail_1.value) {
   alert("These two E-Mail adresses don't match each other!");
   document.form.r_mail.focus();
   return false;
  }

  var emailad=document.form.r_mail.value;
  var exclude=/[^@\-\.\w]|^[_@\.\-]|[\._\-]{2}|[@\.]{2}|(@)[^@]*\1/;
  var check=/@[\w\-]+\./;
  var checkend=/\.[a-zA-Z]{2,4}$/;

  if(((emailad.search(exclude) != -1)||(emailad.search(check)) == -1)||(emailad.search(checkend) == -1)){
   alert("This E-Mail-Address is incorrect!");
   document.form.r_mail.focus();
   return false;
   }
   
   emailad=document.form.r_mail_1.value;
   if(((emailad.search(exclude) != -1)||(emailad.search(check)) == -1)||(emailad.search(checkend) == -1)){
   alert("This E-Mail-Address is incorrect!");
   document.form.r_mail.focus();
   return false;
   }


 if(	document.getElementById("bestell_agb").checked == false	)
	{
	alert("Bitte Bestätigen Sie die AGB!");
	document.form.bestell_agb.focus();
	return false;		
	}

 if(	document.getElementById("bestell_wrr").checked == false	)
	{
	alert("Bitte Bestätigen Sie unser Widerrufs- und Rückgaberecht!");
	document.form.bestell_wrr.focus();
	return false;		
	}

	saveUserData();
	window.location = '../../cgi-bin/englisch/kordesshop.cgi?zeigBestellung';
	return 0;
}


function saveUserData() {
	var usrdat = new String( document.form.r_kdnr.value + ";");
	
	for(i=0;i<document.form.r_anre.length;++i)			// PulldownFeld Anrede, Rechnung
	 if(document.form.r_anre.options[i].selected == true)
	  usrdat += document.form.r_anre.options[i].value + ";";
	  
	  usrdat += document.form.r_vorname.value + ";";
	  usrdat += document.form.r_name.value + ";";
	  usrdat += document.form.r_adrz.value + ";";
	  usrdat += document.form.r_stnr.value + ";";
	  usrdat += document.form.r_posl.value + ";";
	  usrdat += document.form.r_wort.value + ";";
	  
	for(i=0;i<document.form.r_land.length;++i)			// PulldownFeld Land, Rechnung
	 if(document.form.r_land.options[i].selected == true)
	  usrdat += document.form.r_land.options[i].value + ";";
  
	  usrdat += document.form.r_tele.value + ";";
	  usrdat += document.form.r_mail.value + ";";

 	for(i=0;i<document.form.r_zahl.length;++i)			// PulldownFeld Zahlungsart
	 if(document.form.r_zahl.options[i].selected == true)
	  usrdat += document.form.r_zahl.options[i].value + ";";
	  
	for(i=0;i<document.form.r_ktyp.length;++i)			// PulldownFeld KreditKartenTyp
	 if(document.form.r_ktyp.options[i].selected == true)
	  usrdat += document.form.r_ktyp.options[i].value + ";";
	  
	  usrdat += document.form.r_kkn1.value + ";";
	  usrdat += document.form.r_kkn2.value + ";";
	  usrdat += document.form.r_kkn3.value + ";";
	  usrdat += document.form.r_kkn4.value + ";";

	for(i=0;i<document.form.r_kkg1.length;++i)			// PulldownFeld KreditKartenGültigkeit Monat
	 if(document.form.r_kkg1.options[i].selected == true)
	  usrdat += document.form.r_kkg1.options[i].value + ";";

	for(i=0;i<document.form.r_kkg2.length;++i)			// PulldownFeld KreditKartenGültigkeit Jahr
	 if(document.form.r_kkg2.options[i].selected == true)
	  usrdat += document.form.r_kkg2.options[i].value + ";";

	  usrdat += document.form.r_kbes.value + ";";

	for(i=0;i<document.form.l_ersa.length;++i)			// PulldownFeld Ersatzlieferung
	 if(document.form.l_ersa.options[i].selected == true)
	  usrdat += document.form.l_ersa.options[i].value + ";";

	for(i=0;i<document.form.l_term.length;++i)			// PulldownFeld Liefertermin
	 if(document.form.l_term.options[i].selected == true)
	  usrdat += document.form.l_term.options[i].value + ";";

	usrdat += document.form.r_beme.value + ";";

	setCookie("EHSDATA_BESUCHER_EN", usrdat);
	return null;
}


// Formulardaten aus EHSDATA_BESUCHER_EN zurücklesen

function loadUserData() {
	var usrdat = new String (getCookie("EHSDATA_BESUCHER_EN"));
	if (usrdat.length > 4) {
	
		var varbgn = 0;
		var varend = usrdat.indexOf (";");
	document.form.r_kdnr.value = usrdat.substring(varbgn, varend);
	
		varbgn = varend + 1;					// PulldownFeld Anrede, Rechnung
		varend = usrdat.indexOf (";", varbgn);
		 for(i=0;i<document.form.r_anre.length;++i)
		  if(document.form.r_anre.options[i].value == usrdat.substring(varbgn, varend))
	document.form.r_anre.selectedIndex = [i];

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_vorname.value = usrdat.substring(varbgn, varend);

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_name.value = usrdat.substring(varbgn, varend);

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_adrz.value = usrdat.substring(varbgn, varend);

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_stnr.value = usrdat.substring(varbgn, varend);

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_posl.value = usrdat.substring(varbgn, varend);

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_wort.value = usrdat.substring(varbgn, varend);

		varbgn = varend + 1;					// PulldownFeld Land, Rechnung
		varend = usrdat.indexOf (";", varbgn);
		 for(i=0;i<document.form.r_land.length;++i)
		  if(document.form.r_land.options[i].value == usrdat.substring(varbgn, varend))
	document.form.r_land.selectedIndex = [i];

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_tele.value = usrdat.substring(varbgn, varend);

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_mail.value = usrdat.substring(varbgn, varend);

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
		 for(i=0;i<document.form.r_zahl.length;++i)
		  if(document.form.r_zahl.options[i].value == usrdat.substring(varbgn, varend))
	document.form.r_zahl.selectedIndex = [i];

		varbgn = varend + 1;					// PulldownFeld KreditKartenTyp
		varend = usrdat.indexOf (";", varbgn);
		 for(i=0;i<document.form.r_ktyp.length;++i)
		  if(document.form.r_ktyp.options[i].value == usrdat.substring(varbgn, varend))
	document.form.r_ktyp.selectedIndex = [i];

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_kkn1.value = usrdat.substring(varbgn, varend);

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_kkn2.value = usrdat.substring(varbgn, varend);

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_kkn3.value = usrdat.substring(varbgn, varend);

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_kkn4.value = usrdat.substring(varbgn, varend);

		varbgn = varend + 1;					// PulldownFeld KreditKartenGültigkeit Monat
		varend = usrdat.indexOf (";", varbgn);
		 for(i=0;i<document.form.r_kkg1.length;++i)
		  if(document.form.r_kkg1.options[i].value == usrdat.substring(varbgn, varend))
	document.form.r_kkg1.selectedIndex = [i];

		varbgn = varend + 1;					// PulldownFeld KreditKartenGültigkeit Jahr
		varend = usrdat.indexOf (";", varbgn);
		 for(i=0;i<document.form.r_kkg2.length;++i)
		  if(document.form.r_kkg2.options[i].value == usrdat.substring(varbgn, varend))
	document.form.r_kkg2.selectedIndex = [i];

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_kbes.value = usrdat.substring(varbgn, varend);

		varbgn = varend + 1;					// PulldownFeld Ersatzlieferung
		varend = usrdat.indexOf (";", varbgn);
		 for(i=0;i<document.form.l_ersa.length;++i)
		  if(document.form.l_ersa.options[i].value == usrdat.substring(varbgn, varend))
	document.form.l_ersa.selectedIndex = [i];

		varbgn = varend + 1;					// PulldownFeld Liefertermin
		varend = usrdat.indexOf (";", varbgn);
		 for(i=0;i<document.form.l_term.length;++i)
		  if(document.form.l_term.options[i].value == usrdat.substring(varbgn, varend))
	document.form.l_term.selectedIndex = [i];

		varbgn = varend + 1;
		varend = usrdat.indexOf (";", varbgn);
	document.form.r_beme.value = usrdat.substring(varbgn, varend);

	}
	return null;
}


function setCookie (coknam, value, expires) {
	if (!expires) {
		expires = new Date();
		expires.setTime (expires.getTime() + (1000 * 60 * 60 * 24 * 31));
	}
	document.cookie = coknam + "=" + escape (value) + "; expires=" + expires.toGMTString() +  "; path=/";
	return null;
}


function getCookie (coknam) {
	var doccok = document.cookie;
	coknam = coknam + "=";
	var coklen = doccok.length;
	var cokbgn = 0;
	while (cokbgn < coklen) {
		var varbgn = cokbgn + coknam.length;
		if (doccok.substring(cokbgn, varbgn) == coknam) {
		var varend = doccok.indexOf (";", varbgn);
		if (varend == -1) varend = coklen;
		return unescape(doccok.substring(varbgn, varend));
	}
	cokbgn = doccok.indexOf(" ", cokbgn) + 1;
	if (cokbgn == 0) break;
	}
	return "";
}


// Löscht auf der DankeSeite(kordesshop_tpl5.html) Kundendaten,Bestellung und
// setzt den Anzeigezähler auf Null wenn Framesetprüfung erfolgreich

function BestellEnde () {
	delCookie('EHSDATA_BESTELLUNG');
	delCookie('EHSDATA_BESUCHER');
	delCookie('EHSDATA_BESUCHER_EN');
//	if(top != self) {
//	 parent.suche.Anzeigen.BestellMenge.value = "0 item(s)"
//	 }
}


function delCookie (coknam) {
	document.cookie = coknam + "=" + "; expires=Thu, 01-Jan-70 00:00:00 GMT" +  "; path=/";
	return null;
}