/*
 * Wandelt ein Input Datum "So, 11.12.2011" in ein Date Objekt um
 */
function getDateFromInput(inputText) {
	var dateText = inputText.substr(inputText.indexOf(',')+2);
	splittedDate = dateText.split(".");
	return new Date(splittedDate[2], splittedDate[1]-1, splittedDate[0]);
}

/*
 * Fügt einem Input Datum "So, 11.12.2011" die tage hinzu die übergeben werden und
 * gibt es als Date Objekt zurück
 */
function addMindestaufenthaltToInput(inputText, tage) {
	var anreiseDatum = getDateFromInput(inputText);
	return new Date(anreiseDatum.getTime() + (86400000 * tage));
}

/*
 * Kontrolliert die Abfrage auf folgende Fehler
 * - Anreisedatum leer
 * - Abreisedatum leer
 * - Mintestaufenthalt 5 Tage
 * - Anzahl der Erwachsenen gleich 0
 * - Abreisedatum vor Anreisedatum
 * und schreibt sie in den Fehler-Dialog "dialog-error"
 */
function checkAvailabiltyClient() {
	var text = new Array();
	var counter = 0;
	if($('#AnfrageAnreise').val() == "") {
		text[counter] = "Das Anreise-Datum darf nicht leer!\n";
		counter++;
	}
	if($('#AnfrageAbreise').val() == "") {
		text[counter] = "Das Abreise-Datum darf nicht leer!\n";
		counter++;
	}

	if(text == "") {
		if(getDateFromInput($('#AnfrageAnreise').val()) >= getDateFromInput($('#AnfrageAbreise').val())) {
			text[counter] = "Das Abreise-Datum liegt vor dem Anreise-Datum<br />";
			counter++;
		} else if(addMindestaufenthaltToInput($('#AnfrageAnreise').val(), mindestAufenhaltsTage) > getDateFromInput($('#AnfrageAbreise').val())) {
			text[counter] = "Der Mindesaufenthalt in unserem Gästehaus beträgt 5 Tage!<br />";
			counter++;
		}
	}

	if($('#AnfrageErwachsene option:selected').text() == 0) {
		text[counter] = "Die Anzahl der Erwachsenen darf nicht 0 betragen!<br />";
		counter++;
	}
	
	$('#dialog-error #client-error-list').text("");
	for(var i = 0; i < text.length; i++) {
		$('#dialog-error #client-error-list').append("<li>"+text[i]+"</li>");
	}
	return text == "";
}

//aktiviert den submit-button und löscht das loading image
function activateSubmit() {
	$('#anfrageSubmit').removeAttr('disabled');
	$('#loadingAnfrage').addClass('display-none');
}

//deaktiviert den submit-button und fügt eine loading image hinzu
function deactivateSubmit() {
	$('#anfrageSubmit').attr('disabled', 'disabled');
	$('#loadingAnfrage').removeClass('display-none');
}

function checkConfirmClient() {
	$('#UserNameError').fadeOut('fast');
	$('#UserEmailError').fadeOut('fast');
	$('#AlternativeError').fadeOut('fast');
	
	var error = false;
	var email = $('#UserEmail').val();
	var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
	if(!re.test(email)) {
		$('#UserEmailError').fadeIn('slow');
		error = true;
	}
	
	if($('#UserName').val() == "") {
		$('#UserNameError').fadeIn('slow');
		error = true;
	}
	
	if(!$('#alternativeInfo').hasClass('display-none')) {
		$('.ui-selected').each(function() {
			id = $(this).attr('id');
			if(id == "alternativeAnfrageDavor") {
				$('#Alternative1Selected').val('1');
				$('#Alternative2Selected').val('0');
			} else {
				$('#Alternative1Selected').val('0');
				$('#Alternative2Selected').val('1');
			}
		});
		
		if($('#Alternative1Selected').val() == 0 && $('#Alternative2Selected').val() == 0) {
			$('#AlternativeError').fadeIn('slow');
			error = true;
		}
	}
	
	if(error) {
		return false;
	} else {
//		alert('Die Eingabe ist fehlerhaft!');
		return true;
	}
	
}
