// JavaScript Document
// Ticketreservierung
// Eingaben überprüfen und in Datenbank eintragen
function FelderPruefen(formularname){
	var keineFehler = true;
	var fehlermeldung = "";
	//Vorname überprüfen
	if($(formularname).firstname.value=="") {
		keineFehler = false;
		fehlermeldung+= "Bitte gib deinen Vornamen an.\n";
		// Feld markieren
		$(formularname).firstname.className = "ticketreservierung_markiert"
	}else{
		$(formularname).firstname.className = "ticketreservierung"
	}
	//Nachname überprüfen
	if($(formularname).name.value=="") {
		keineFehler = false;
		fehlermeldung+= "Bitte gib deinen Nachnamen an.\n";
		// Feld markieren
		$(formularname).name.className = "ticketreservierung_markiert"
	}else{
		$(formularname).name.className = "ticketreservierung"
	}
	//Alter überprüfen
	if(ists_zahl($(formularname).age.value) == false) {
		keineFehler = false;
		fehlermeldung+= "Bitte gib dein Alter an.\n";
		// Feld markieren
		$(formularname).age.className = "ticketreservierung_markiert"
	}else{
		$(formularname).age.className = "ticketreservierung"
	}
	//Emailadresse überprüfen
	if($(formularname).email.value=="") {
		keineFehler = false;
		fehlermeldung+= "Bitte gib deine Emailadresse an.\n";
		// Feld markieren
		$(formularname).email.className = "ticketreservierung_markiert"
	}
	else if(emailAdresseUeberpruefen($(formularname).email.value)==false) {
		keineFehler = false;
		fehlermeldung+= "Bitte überprüfe deine Emailadresse.\n";
		// Feld markieren
		$(formularname).email.className = "ticketreservierung_markiert"
	}else{
		$(formularname).email.className = "ticketreservierung"
	}
	//Ticket überprüfen
	// Radio-Gruppe durchlaufen
	var boolRadio = false;
    for(var i=0; i<$(formularname).day.length; i++){
        // Falls der aktuelle Radiobutton gesetzt ist
        if($(formularname).day[i].checked)
            boolRadio = true;
    }
	if(boolRadio == false) {
		keineFehler = false;
		fehlermeldung+= "Bitte w%E4hle ein Ticket.\n";
	}
	
	//OFG und Info zum Wiedereinlass gelesen?
	if($(formularname).gelesen.checked == false){
		keineFehler = false;
		fehlermeldung+= "Bitte best%E4tige, dass du dir die Informationen zum \"beschr%E4nkten Wiedereinlass\" und die \"Oft gestellten Fragen\" durchgelesen hast.\n";	
	}
	
	//Fehlermeldung ausgeben, falls nötig
	if ( keineFehler == false ) {
		//Fehlermeldung ausgeben
		alert(unescape(fehlermeldung));
		return false
	}else{
		//Nachricht verschicken
		//alert(unescape('Ticketreservierung zur Zeit noch nicht m%F6glich!\nEinfach sp%E4ter nochmal probieren.'));
		ticketReservierungEintragen(formularname);
	}
}
//Funktion ruft ajaxKontakvormularAbschicken.php auf
function ticketReservierungEintragen(formularname){
	var name = escape($(formularname).name.value);
	var firstname = escape($(formularname).firstname.value);
	var age = escape($(formularname).age.value);
	var email = escape($(formularname).email.value);
	var day = escape(getSingleSelectValue(formularname,'day'));
	ajax = new Ajax.Request('ajaxTicketReservierungEintragen.php?r='+ Math.floor(Math.random()*1000),
		{
			method:'get',
			asynchronous: true,
			parameters: {name:name, firstname:firstname, age:age, email:email, day:day},
			onComplete: function(){
				alert(unescape('Danke f%FCr deine Ticketreservierung f%FCr Lechschall 2009\n\nIn K%FCrze erh%E4ltst du eine Best%E4tigungsemail von uns, die nochmal alle wichtigen Infos enthält.\nBITTE AUCH IM SPAM-ORDNER NACHSCHAUEN!\n\nBei Fragen oder Unklarheiten schreib\' eine Email an tickets@lechschall.de'));
				//Felder leeren
				eval("document."+formularname+".reset()");
				document.location.href = "?goto=die_bands";
			},
			onFailure: function(){ alert(unescape('Bei deiner Ticketreservierung ist ein Fehler aufgetreten. Wir versuchen das so schnell wie m%F6glich zu beheben. Versuch es einfach sp%E4ter noch einmal.')) }
		});
}
//Funktionen zum Überprüfen einer Emailadresse
function emailAdresseUeberpruefen(emailadresse){
	var a = false;
	var res = false;
	if(typeof(RegExp) == 'function'){
		var b = new RegExp('abc');
		if(b.test('abc') == true){a = true;}
	}

	if(a == true){
		reg = new RegExp('^([a-zA-Z0-9\\-\\.\\_]+)'+
				 		 '(\\@)([a-zA-Z0-9\\-\\.]+)'+
						 '(\\.)([a-zA-Z]{2,4})$');
		res = (reg.test(emailadresse));
	}else{
		res = (emailadresse.search('@') >= 1 &&
	   		   emailadresse.lastIndexOf('.') > emailadresse.search('@') &&
	   		   emailadresse.lastIndexOf('.') >= emailadresse.length-5)
	}
	return(res);
}
//Funktion überprüft ob Wert eine Zahl ist
function ists_zahl(wort) { 
  ist_zahl=true;
  if(wort.length==0){
	 ist_zahl=false;
  }else{ 
	 for(n=0;n<wort.length;n++){
		 if(wort.charAt(n)<"0"||wort.charAt(n)>"9"){
			 ist_zahl=false;
		 }
	 }
  }
  return ist_zahl;
} 
// gewähltes Value einer Radiogroup auslesen
function getSingleSelectValue(formularname,radiogroupname){
	var radiogroup = eval("$('"+formularname+"')."+radiogroupname);
	for(var i = 0; i < radiogroup.length; i++){
		if(radiogroup[i].checked){
			return radiogroup[i].value;
		}
	}
	return null;
}