// Shop

$(document).ready(function(){ 
	
	// Warenkorblink updaten, wenn Menge verändert
	$('#menge').change(function() {
		var zufall = Math.round(Math.random()*9999999);
		var cartlink = 'de/shop/cart/?id='+$('#produkt_id').val()+'&a='+$('#menge').val()+'&k='+zufall;	
		$('#intoWarenkorb').attr("href",cartlink);
	});
	
	// Wenn innerhalb des Warenkorbs Menge geändert
	$('.warenkorbMengenChanger').change(function() {
		var zufall = Math.round(Math.random()*9999999);
		var zielseite = 'de/shop/cart/?id='+$(this).attr('id').substr(8)+'&c='+$(this).val()+'&k='+zufall;
		window.location = zielseite;
	});
	
	// Produktübersicht, wenn Menge gewählt wird (auf Übersichtsseiten)
	$('.produktUebersichtChanger').change(function() { 
		var zufall = Math.round(Math.random()*9999999);
		var zielseite = 'de/shop/cart/?id='+$(this).attr('id').substr(8)+'&a='+$(this).val()+'&k='+zufall;
		var zielhref = "#intoWarenkorb_"+$(this).attr('id').substr(8);
		$(zielhref).attr("href",zielseite);
	});
	
	
	
	// Checkout ///////////////////////////////////////////////////////////////////////////////////////////
	
	
	// Buttons
	$('#content a').css("cursor","pointer");
	$('#btn_checkadress').click(function() { checkAdress(); });
	$('#btn_gotoZahlung').click(function() { checkPruefung(); });
	$('#btn_sendZahlung').click(function() { checkAndSendZahlung(); });
	$('#btn_goBackToWarenkorb').click(function() { $('#con1').toggle(); $('#con2').toggle(); $('#stat2').removeClass('activeStatus'); $('#checkoutStatus').removeClass(); $('#checkoutStatus').addClass('bgStat1'); });
	$('#btn_goBackToPruefung').click(function() { $('#con2').toggle(); $('#con3').toggle(); $('#stat3').removeClass('activeStatus'); $('#checkoutStatus').removeClass(); $('#checkoutStatus').addClass('bgStat2'); });
	$('#adress_Lieferadresse').click(function() { $('#lieferAdressContainer').toggle(); });
	
	// Falls Lieferadresse aktiviert (in Session), gleich ausklappen
	if ($('#adress_Lieferadresse').attr('checked')) {
		$('#lieferAdressContainer').toggle();
	}
	
	// Adresse prüfen
	function checkAdress() {
		
		// Variablen
		var fehler = false;
		var fehlermeldung = 'Bitte Angeben vervollständigen:\n';
				
		// Gender
		var gender = "";
		var genderUOS = "";
		if (!$('#adress_GenderFrau').attr('checked') && !$('#adress_GenderMann').attr('checked')) {
			fehler = true;
			fehlermeldung += 'Anrede\n';
		} else {
			if ($('#adress_GenderFrau').attr('checked')) {
				gender = "Frau";
				genderUOS = "f";
			} else {
				gender = "Herr";
				genderUOS = "m";
			}
		}
		// Vorname
		if ($('#adress_Vorname').val() == '') { fehler = true; fehlermeldung += "Vorname\n" }
		// Nachname
		if ($('#adress_Nachname').val() == '') { fehler = true; fehlermeldung += "Nachname\n" }
		// Straße
		if ($('#adress_Strasse').val() == '') { fehler = true; fehlermeldung += "Straße.\n" }
		// Hausnr.
		if ($('#adress_Hausnr').val() == '') { fehler = true; fehlermeldung += "Hausnummer.\n" }
		// PLZ
		if ($('#adress_Plz').val() == '') { fehler = true; fehlermeldung += "PLZ\n" }
		// Ort
		if ($('#adress_Ort').val() == '') { fehler = true; fehlermeldung += "Ort\n" }
		// E-mail
		if ($('#adress_Email').val() == '') { fehler = true; fehlermeldung += "E-Mailadresse\n" }
		
		// Falls abweichende Lieferadresse
		if ($('#adress_Lieferadresse').attr('checked')) {
			var liefer_gender = "";
			if (!$('#liefer_GenderFrau').attr('checked') && !$('#liefer_GenderMann').attr('checked')) {
				fehler = true;
				fehlermeldung += 'Lieferadresse: Anrede\n';
			} else {
				if ($('#liefer_GenderFrau').attr('checked')) {
					liefer_gender = "Frau";	
				} else {
					liefer_gender = "Herr";
				}
			}
			if ($('#liefer_Vorname').val() == '') { fehler = true; fehlermeldung += "Lieferadresse: Vorname\n" }			
			if ($('#liefer_Nachname').val() == '') { fehler = true; fehlermeldung += "Lieferadresse: Nachname\n" }
			if ($('#liefer_Strasse').val() == '') { fehler = true; fehlermeldung += "Lieferadresse: Straße\n" }
			if ($('#liefer_Hausnr').val() == '') { fehler = true; fehlermeldung += "Lieferadresse: Hausnummer.\n" }
			if ($('#liefer_Plz').val() == '') { fehler = true; fehlermeldung += "Lieferadresse: PLZ\n" }
			if ($('#liefer_Ort').val() == '') { fehler = true; fehlermeldung += "Lieferadresse: Ort\n" }
		}
		
		if (fehler) {
			alert(fehlermeldung);
		} else {
			$('#loader').toggle();
			$('#con1').toggle();
			$.post("de/shop/toSession.php", {
				adress_Gender: gender,
				adress_Vorname: $('#adress_Vorname').val(),
				adress_Nachname: $('#adress_Nachname').val(),
				adress_Strasse: $('#adress_Strasse').val(),
				adress_Hausnr: $('#adress_Hausnr').val(),
				adress_Plz: $('#adress_Plz').val(),
				adress_Ort: $('#adress_Ort').val(),
				adress_Email: $('#adress_Email').val(),
				adress_Tel: $('#adress_Tel').val(),
				adress_Newsletter: $('#adress_Newsletter').attr('checked'),
				adress_Lieferadresse: $('#adress_Lieferadresse').attr('checked'),
				liefer_Gender: liefer_gender,
				liefer_Vorname: $('#liefer_Vorname').val(),
				liefer_Nachname: $('#liefer_Nachname').val(),
				liefer_Strasse: $('#liefer_Strasse').val(),
				liefer_Hausnr: $('#liefer_Hausnr').val(),
				liefer_Plz: $('#liefer_Plz').val(),
				liefer_Ort: $('#liefer_Ort').val()	
			}, function(antwort) {
				if (antwort == 'ok') {
					
					$('#loader').toggle();

					// Wenn erfolgreich
					var checkAdress = '<p><strong>Rechnungsadresse:</strong><br />';
					checkAdress += gender+' '+$('#adress_Vorname').val()+' '+$('#adress_Nachname').val()+'<br />';
					checkAdress += $('#adress_Strasse').val()+' '+$('#adress_Hausnr').val()+'<br />';
					checkAdress += $('#adress_Plz').val()+' '+$('#adress_Ort').val()+'</p>';
					checkAdress += '<p>E-Mail: '+$('#adress_Email').val()+'<br />';
					checkAdress += 'Telefon: '+$('#adress_Tel').val()+'</p>';
					
					// Falls Lieferadresse abweichend
					if ($('#adress_Lieferadresse').attr('checked')) {
						checkAdress += '<p><strong>Lieferadresse:</strong><br />';
						checkAdress += gender+' '+$('#liefer_Vorname').val()+' '+$('#liefer_Nachname').val()+'<br />';
						checkAdress += $('#liefer_Strasse').val()+' '+$('#liefer_Hausnr').val()+'<br />';
						checkAdress += $('#liefer_Plz').val()+' '+$('#liefer_Ort').val()+'</p>';
					}
					
					$('#adressCheckContainer').html(checkAdress);
					
					// Hidden Fields füllen
					$('#duve_gender').val(genderUOS);
					$('#duve_firstName').val($('#adress_Vorname').val());
					$('#duve_lastName').val($('#adress_Nachname').val());
					$('#duve_street').val($('#adress_Strasse').val());
					$('#duve_nr').val($('#adress_Hausnr').val());
					$('#duve_zipcode').val($('#adress_Plz').val());
					$('#duve_city').val($('#adress_Ort').val());
					$('#duve_email').val($('#adress_Email').val());
					$('#duve_tel').val($('#adress_Tel').val());
					
					// Toggeln
					$('#checkoutStatus').removeClass();
					$('#checkoutStatus').addClass('bgStat2');
					$('#stat2').addClass('activeStatus');
					$('#con2').toggle();
				} else {
					alert("Bestellvorgang abgebrochen. Bitte versuchen Sie es später erneut. Danke!\nErrorCode: 2040a");
				}
			});
		}
			
		
	}
	
	
	// Prüfung checken
	function checkPruefung() {
		
		// Variablen
		var fehler = false;
		var fehlermeldung = "";
		
		// AGB bestätigen
		if (!$('#controlAGB').attr('checked')) {
			fehler = true;
			fehlermeldung += "Bitte akzeptieren sie die AGBs und das Wiederrufsrecht";
		}
		
		if (fehler) {
			alert(fehlermeldung);
		} else {
			// Wenn erfolgreich
			$('#con2').toggle(); 
			$('#con3').toggle();  
			$('#stat3').addClass('activeStatus');
			$('#checkoutStatus').removeClass();
			$('#checkoutStatus').addClass('bgStat3');
		}	
		
	}
	
	
	// Zahlung checken und senden
	function checkAndSendZahlung() {
			
		// Variablen
		var fehler = false;
		var fehlermeldung = "";
		
		// Validation
		cc_number = $('#cc_number').val();
		cc_owner = $('#cc_owner').val();
		cc_cvv = $('#cc_cvv').val();
		cc_month = $('#cc_month').val();
		cc_year = $('#cc_year').val();
		
		if (cc_owner == "") { fehler = true; fehlermeldung += "Bitte Name des Karteninhabers eingeben\n"; }
		if (cc_number.length != 16) { fehler = true; fehlermeldung += "Bitte Kreditkartennummer prüfen\n"; }
		if (cc_cvv.length < 3) { fehler = true; fehlermeldung += "Bitte Kartenprüfnummer eingeben\n"; }
		
		if (fehler) {
			alert(fehlermeldung);
		} else {
			$('#loader').toggle();
			$('#con3').toggle();
			document.duve_form.submit();
		}
		
	
	}
				   
});