// FUNCS JS SHOP FRANZOSE.DE

function chkEmail(eMail)   {  
     if (eMail.value.length==0) 
	 	{ 
		alert("Bitte geben Sie Ihre Email Adresse ein");
		eMail.focus() ;
		return false;
		}
     // Text für die Fehlermeldung
     var FehlerMeldung = new String("Fehler in der E-Mail Adresse\n\n");
     // Position des @ herausfinden
     var PosEt = eMail.value.indexOf("@")
     if (PosEt == -1) 
	 	{
       	alert(FehlerMeldung + "Es fehlt ein @");
	   	eMail.focus(); 
        return false 
		}
     if (PosEt == 0) 
	 	{
       	alert(FehlerMeldung + "Es fehlt der Empfänger");
		eMail.focus(); 
		return false;
		}
     if (eMail.value.indexOf("@", PosEt + 1) > PosEt) 
	 	{
       	alert(FehlerMeldung + "Es darf nur ein @ enthalten sein");
		eMail.focus(); 
		return false;
		}
     // Position des ersten . nach dem @ herausfinden
     var PosPt = eMail.value.indexOf(".", PosEt);
     if ((PosPt == -1) || (PosPt - PosEt < 2) || (eMail.value.length - PosPt < 3)) 
	 	{
	    FehlerMeldung += "Eine eMail-Adresse muß so aufgebaut sein: x@x.xx "
       	FehlerMeldung += "Jedes x steht für mindestens ein Zeichen"
       	alert(FehlerMeldung)
		eMail.focus(); 
		return false;
		}

     var ZugelasseneZeichen = new String("abcdefghijklmnopqrstuvwxyz")
     ZugelasseneZeichen += ZugelasseneZeichen.toUpperCase() + "0123456789.-_@"
     return PruefeZeichen(eMail, ZugelasseneZeichen, FehlerMeldung)
}

// Filtern von Zahlen
function nurZahlen(el) {
	var val = el.replace(/[^\.^,\d]/g, '');
	return val;
	}
// Zahlugnsmethode checken !
function chkZahlung(lang) {

	var errortext	= new Array();

  errortext['de'] = new Array();
  errortext['en'] = new Array();
  errortext['fr'] = new Array();
	
  errortext['de'][0]  = "Bitte wählen Sie eine Kreditkarte aus";
  errortext['en'][0]  = "Please select your credit card";
  errortext['fr'][0]  = "Bitte wählen Sie eine Kreditkarte aus";
	
  errortext['de'][1]  = "Bitte geben Sie den Kreditkarten Inhaber ein";
  errortext['en'][1]  = "Please type in the credit card owner name";
  errortext['fr'][1]  = "veuillez entrer le nom du titulaire de la carte.";

	errortext['de'][2]  = "Bitte geben Sie Ihre Kreditkarten-Nummer ein";
	errortext['en'][2]  = "Please type in the credit card number.";
	errortext['fr'][2]  = "veuillez entrer le numéro de la carte.";
	
  errortext['de'][3]  = "Bitte geben Sie das Gültikeitsdatum (Monat) an.";
  errortext['en'][3]  = "Please select the expire month.";
  errortext['fr'][3]  = "veuillez entrer la date d'expiration de la carte.";
	
  errortext['de'][4]  = "Bitte geben Sie das Gültikeitsdatum (Jahr) an.";
  errortext['en'][4]  = "Please select expire year.";
  errortext['fr'][4]  = "veuillez entrer la date d'expiration de la carte.";
	
  errortext['de'][5]  = "Bitte geben Sie die Prüfziffer Ihrer Kreditkarte ein.";
  errortext['en'][5]  = "Please type in the credit card control number.";
  errortext['fr'][5]  = "veuillez entrer le cryptogramme visuel de la carte (bloc de 3 chiffres au verso de la carte).";
	
  errortext['de'][6]  = "Ungültige Kreditkarten-Nummer. Bitte überprüfen Sie Ihre Eingabe und versuchen es erneut.";
  errortext['en'][6]  = "The credit card number is not valid. Please check and try again.";
  errortext['fr'][6]  = "Le numéro de votre carte est refusé. Veuillez essayer à nouveau.";
	
  errortext['de'][10] = "Bitte geben Sie Ihren Bank Namen (Bankinstitut) ein.";
  errortext['en'][10] = "Please type in your bank name";
  errortext['fr'][10] = "Veuillez indiquer le nom de votre banque.";
	
  errortext['de'][11] = "Bitte geben Sie Ihre Kontonummer ein.";
  errortext['en'][11] = "Please type in your bank account number.";
  errortext['fr'][11] = "Veuillez indiquer le numéro de votre compte bancaire.";

  errortext['de'][12] = "Bitte geben Sie Ihre Bankleitzahl ein.";
  errortext['en'][12] = "Please type in your bank number (sort code)";
  errortext['fr'][12] = "Veuillez indiquer le code banque";

  errortext['de'][13] = "Bitte geben Sie den Kontoinhaber des Kontos ein.";
  errortext['en'][13] = "Please type in the bank account-owner.";
  errortext['fr'][13] = "Veuillez entrer le nom du titulaire du compte.";

	var wert;
	for(var i = 0; i <  document.zahlung.zid.length; ++i) {
				if( document.zahlung.zid[i].checked)
					wert = document.zahlung.zid[i].value;
			} 


	if(wert == "KK")
		{
		// KK Nummer  - nur Nummern filtern
		document.zahlung.kk_nummer.value = nurZahlen(document.zahlung.kk_nummer.value);
		if (document.zahlung.kk_typ.value == "")
			{
			alert( errortext[lang][0] );
			document.zahlung.kk_typ.focus();
			return false;
			}
		if (document.zahlung.kk_inhaber.value == "")
			{
			alert( errortext[lang][1] );
			document.zahlung.kk_inhaber.focus();
			return false;
			}
		if (document.zahlung.kk_nummer.value == "")
			{
			alert( errortext[lang][2] );
			document.zahlung.kk_nummer.focus();
			return false;
			}

		kk_monat = document.zahlung.kk_monat.options[document.zahlung.kk_monat.selectedIndex].value;
		kk_jahr  = document.zahlung.kk_jahr.options[document.zahlung.kk_jahr.selectedIndex].value;
		if (kk_monat==0)
			{
			alert( errortext[lang][3] );
			document.zahlung.kk_monat.focus();
			return false;
			}
		if (kk_jahr==0)
			{
			alert( errortext[lang][4] );
			document.zahlung.kk_jahr.focus();
			return false;
			}
		if (document.zahlung.kk_pruefziffer.value == "")
			{
			alert( errortext[lang][5] );
			document.zahlung.kk_pruefziffer.focus();
			return false;
			}
		// Nummer wird nochmal auf Logik überprüft
		if ( isValidCreditCard( document.zahlung.kk_typ.value, document.zahlung.kk_nummer.value) == false )
			{
			alert( errortext[lang][6] );
			document.zahlung.kk_nummer.focus();
			return false;
			}
	}


	if(wert == "BE") // Bank wurde gewählt, weitere Formularüberprüfungen sind nötig!
		{
		if (document.zahlung.bank_name.value == "")
			{
			alert( errortext[lang][10] );
			document.zahlung.bank_name.focus();
			return false;
			}
		if (document.zahlung.bank_kto.value == "")
			{
			alert( errortext[lang][11] );
			document.zahlung.bank_kto.focus();
			return false;
			}
		if (document.zahlung.bank_blz.value == "")
			{
			alert( errortext[lang][13] );
			document.zahlung.bank_blz.focus();
			return false;
			}
		if (document.zahlung.bank_kontoinhaber.value == "")
			{
			alert( errortext[lang][14] );
			document.zahlung.bank_kontoinhaber.focus();
			return false;
			}
		}
		
	document.zahlung.submit();
	

}

// Kredit Karten Nummern prüfen !
function isValidCreditCard(type, ccnum) {
if (type == "Visa") {
      var re = /^4\d{3}-?\d{4}-?\d{4}-?\d{4}$/;
   } else if (type == "Eurocard") {
      var re = /^5[1-5]\d{2}-?\d{4}-?\d{4}-?\d{4}$/;
   } else if (type == "Disc") {
      var re = /^6011-?\d{4}-?\d{4}-?\d{4}$/;
   } else if (type == "Amex") {
      var re = /^3[4,7]\d{13}$/;
   } else if (type == "Diners") {
      var re = /^3[0,6,8]\d{12}$/;
   }
   if (!re.test(ccnum)) return false;
   ccnum = ccnum.split("-").join("");
   var checksum = 0;
   for (var i=(2-(ccnum.length % 2)); i<=ccnum.length; i+=2) {
      checksum += parseInt(ccnum.charAt(i-1));
   }
   for (var i=(ccnum.length % 2) + 1; i<ccnum.length; i+=2) {
      var digit = parseInt(ccnum.charAt(i-1)) * 2;
      if (digit < 10) { checksum += digit; } else { checksum += (digit-9); }
   }
   if ((checksum % 10) == 0) return true; else return false;
}

function chkVersand() {
	var wert;
	for(var i = 0; i <  document.checkout.versandart_tarif_id.length; ++i) {
				if( document.checkout.versandart_tarif_id[i].checked)
					wert = document.checkout.versandart_tarif_id[i].value;
			} 
	if (wert =="")
		{
		alert("Bitte wählen Sie eine Versandart aus.");
		return false;
		}

	document.checkout.submit();

}

function refreshPage(){
	document.location.reload(); 
}
// Shop wechseln 
function shopwechsel(sel) {
	if (sel=='2cv')
		var url = document.Shopwechsel.mainSHOP2cv.options[document.Shopwechsel.mainSHOP2cv.selectedIndex].value;
	if (sel=='DS')
		var url = document.Shopwechsel.mainSHOPDS.options[document.Shopwechsel.mainSHOPDS.selectedIndex].value;
	if (sel=='Peugeot')
		var url = document.Shopwechsel.mainSHOPPeugeot.options[document.Shopwechsel.mainSHOPPeugeot.selectedIndex].value;
	if (sel=='Renault')
		var url = document.Shopwechsel.mainSHOPRenault.options[document.Shopwechsel.mainSHOPRenault.selectedIndex].value;
	if (sel=='AndereCitroen')
		var url = document.Shopwechsel.mainSHOPAndereCitroen.options[document.Shopwechsel.mainSHOPAndereCitroen.selectedIndex].value;
	if (sel=='Boutique')
		var url = document.Shopwechsel.mainSHOPBoutique.options[document.Shopwechsel.mainSHOPBoutique.selectedIndex].value;

	document.location.href='/'+url;
}	

// Artikel per Ajax einlenden // jquery Version!
function blitz_check_artikel() {
	artikel_nr = document.blitz.artikel_nr.value;
	$("#Artikelinfo").load("shop_blitzbestellung_check.php?artikel_nr="+artikel_nr);

}

function blitz_indenkorb() {
	artikel_nr = document.blitz.artikel_nr.value;
	menge = document.blitz.menge.value;
	if (menge>0)
		{	
		$("#Artikelinfo").load("shop_blitzbestellung_check.php?artikel_nr="+artikel_nr+"&action=add2cart&menge="+menge);
		// Warenkorb / Main klein aktualisieren
		// Akt. Sprache mit an WK übergeben !
		var spr = $("#spr").val();
		
		window.parent['mwk'].location.href="shop_miniwarenkorb.php?spr="+spr;
		document.blitz.artikel_nr.value="";
		document.blitz.menge.value=1;
		}
}

// Schliesst Warenkorbinfo, z.B. mit JS Timeout !
function closeWaKo() {
	closeMessage(); 
}

// Chassis Warenkorb Fubnktionen
function check_this_chassis() {
	var sendok = true;
	var wert = 0;
	var artikel_nr = document.chassisform.artikel_nr.value;
	for(var i = 0; i < document.chassisform.ZZL.length; ++i) {
		if(  document.chassisform.ZZL[i].checked)
			wert = document.chassisform.ZZL[i].value;
		} 
			
	if (wert > 0)
		{
		if (document.chassisform.FGNR.value == "")
			{
			alert("Bitte geben Sie Ihre Fahrgestellnummer ein.\nPlease type in your vehicle chassis number to continue");
			sendok=false;
			}
		}

if (sendok==true)
	{
	var FGNR = document.chassisform.FGNR.value;
	window.parent['mwk'].location.href='/shop_chassis_bestellung.php?action=add2cart&artikel_nr='+artikel_nr+'&ZZL='+wert+'&FGNR='+FGNR;
	tb_remove(); 	

	}
}

// Chassis Warenkorb Fubnktionen
function check_this_kat() {
	var sendok = true;
	var wert = 0;
	var artikel_nr = document.chassisform.artikel_nr.value;
	if (document.chassisform.FGNR.value == "")
		{
		alert("Bitte geben Sie Ihre Fahrgestellnummer ein.\nPlease type in your vehicle chassis number to continue");
		sendok=false;
		}

	if (sendok==true)
		{
		var FGNR = document.chassisform.FGNR.value;
		var rand = Math.random() * 100000;
		window.parent['mwk'].location.href='/shop_chassis_bestellung.php?action=add2cart&artikel_nr='+artikel_nr+'&ZZL='+wert+'&FGNR='+FGNR;
		tb_remove(); 
		}
}

function pausecomp(millis) {
	var date = new Date();
	var curDate = null;
	do { curDate = new Date(); }
		while(curDate-date < millis);
}

// Kunden Anmeldung / Kunden stamm / firma oder privat
function check_kunden_firma() {
	ch = $("input:radio:checked[name='art']").val();

	if (ch=="firma")
		$('.showfirma').show();
	else		
		$('.showfirma').hide();

}

// Passwort per Ajax Fun senden !
function passwort_anfordern_ajax() {
	
	alert("OK");
	
	var em = document.login.emailpwanf.value;
	if (em=="")
		{
		alert ("Bitte geben Sie Ihre E-Mail Adresse ein.");
		document.login.emailpwanf.focus();
		return;
		}

	em = em.replace(/ /g,'');

	// Senden per jquery Ajax
	$("#sendepwinfo").load("/ajax_passwort_anfordern.php?email="+em);
}

// Zeigt Zahlugnsarten auf Klick
function showzid() {

	// Alle schliessen
	$("table tbody tr").attr("bgColor", "#ffffff");

	$(".payinfo").hide();

	var wert="";
	for(var i = 0; i <  document.zahlung.zid.length; ++i) 
		{
		// Checked Wert 
		if( document.zahlung.zid[i].checked)
			{
			$("#row"+i).attr("bgColor", "#FFFFE6");
			wert = document.zahlung.zid[i].value;
			}
		} 

	// Infotext öffnen
	$("#show"+wert).show('fast');
	}

// PayÜal auslösen und Button Statis verändern
function sendpaypal()
	{
	$("#sendbutton").hide("fast");
	$("#Hinweis").show();
	document.paypal.submit();
	}

// Akxal Load für Versandberechnung in Echtzeit
function landchange(land_id) {
//	alert (land_id);
	$('#VKrech').load("/versandinfo.php?land_id="+land_id);
}


// print function // Jquery // Druckmöglichkeit der ajtuellen liste !!
function printArtikelListe() {
	// Alle img in Fullpath umwandeln ! Druckt dann auch alle Bilder
	$('#ArtikelListe img').each(function(){
		var t=$(this);
		var src= t.attr('src'); // initial src
		var fullpath = 'https://www.franzose.de/' + src;
		$(this).attr("src", fullpath);
	});
	$("#ArtikelListe").printArea();
}

// Check box markieren
function mark (id) {
	var radioid = "#" + id;
	$(radioid).attr("checked",true); 
}

