/* Formular faerben ___________________________________*/

	function loschen (oThis, sDeleteThis) {

		if (oThis.value == sDeleteThis) oThis.value = '';
		
			if (oThis.className.search(/fehler/) != -1) {
				oThis.className = oThis.className.replace(/fehler/, 'aktiv');
			} else {
				oThis.className = oThis.className + ' aktiv'				
			}
			
		return false;

	}


/* Formularkontrolle __________________________________*/


function kontrolle(sFormular) {
	var i, feld, alle = 1;
	var chkZ = 1
	var lYear, lDepartureDateYear, lMonth, lDepartureDateMonth, lDay, lDepartureDateDay
	for(i = 1; i < kontrolle.arguments.length; i++) {
	
		feld = kontrolle.arguments[i];
		if (feld == 'Privacy') {
			
			if (!document[sFormular].Privacy.checked) {
				alert(textprivacy);
				return;
			}
		}
		else
		{
			if (feld == 'Betrag') {
				for (j = 0; j < document[sFormular].Betrag.value.length; ++j)
					if (document[sFormular].Betrag.value.charAt(j) < "0" || document[sFormular].Betrag.value.charAt(j) > "9") chkZ = -1;
					  
				if (chkZ == -1 || document[sFormular][feld].value==''){
				    alert(textzahl);
					document[sFormular][feld].style.color = farbefehlt;
					document[sFormular][feld].style.border = '1px solid ' + farbefehlt;
				    return;
				}
				
			} else if (feld == 'nYear') {
			
				lYear = document[sFormular][feld].options[document[sFormular][feld].selectedIndex ].value;
			
			} else if (feld == 'ndepartureDateYear') {
			
				lDepartureDateYear = document[sFormular][feld].options[document[sFormular][feld].selectedIndex ].value;
			
			} else if (feld == 'nMonth') {
			
				lMonth = document[sFormular][feld].options[document[sFormular][feld].selectedIndex ].value;
			
			} else if (feld == 'ndepartureDateMonth') {
			
				lDepartureDateMonth = document[sFormular][feld].options[document[sFormular][feld].selectedIndex ].value;
			
			} else if (feld == 'nDay') {
			
				lDay = document[sFormular][feld].options[document[sFormular][feld].selectedIndex ].value;
			
			} else if (feld == 'ndepartureDateDay') {
			
				lDepartureDateDay = document[sFormular][feld].options[document[sFormular][feld].selectedIndex ].value;
			
			} else {		
			
				if (Trim(document[sFormular][feld].value) == '' || document[sFormular][feld].value == textpflicht ) {
					document[sFormular][feld].value = textpflicht;
					document[sFormular][feld].style.color = farbefehlt;
					document[sFormular][feld].style.border = '1px solid ' + farbefehlt;
					alle = 0;
				}
				else {
					document[sFormular][feld].style.color = farbeeingabe;
					document[sFormular][feld].style.border = '1px solid ' + farberahmen;
					
					if (feld == 'Email') {
						
						if (IsEmail(document[sFormular][feld].value) == false || Trim(document[sFormular][feld].value) == '') {
							document[sFormular][feld].style.color = farbefehlt;
							document[sFormular][feld].style.border = '1px solid ' + farbefehlt;
							alert(textemail);
							return;
						}
					}
				}
			}
		}
	}
	
	if(parseInt(lYear, 10) > parseInt(lDepartureDateYear, 10)) {
	
		alert(datumfalsch);
		return;
	
	} else if(parseInt(lYear, 10) == parseInt(lDepartureDateYear, 10)) {
	
		if(parseInt(lMonth, 10) > parseInt(lDepartureDateMonth, 10)) {
		
			alert(datumfalsch);
			return;
		
		} else if(parseInt(lMonth, 10) == parseInt(lDepartureDateMonth, 10)) {
		
			if(parseInt(lDay, 10) >= parseInt(lDepartureDateDay, 10)) {
			
				alert(datumfalsch);
				return;
			
			}
		
		}
	
	}
	
	
	if (alle == 0) {
		alert(texthinweis);
		return;
	}
	else {
		document[sFormular].submit();
	}
}



/* Formular faerben ___________________________________*/

var k = 0;
eingabe = new Array();

function loeschen(ort) {
	var i, j = 0;
	
	for(i = 0; i < eingabe.length; i++) {
		if (eingabe[i] == ort) {
			j = 1;
		}
	}
	
	if (j == 0) {
		eingabe[k] = ort;
		eingabe.push();
		k = k + 1;
		document.getElementById(ort).value = '';
		document.getElementById(ort).style.color = farbeeingabe;
		document.getElementById(ort).style.border = '1px solid ' + farberahmen;
		return false;
	}
}



/* Stringcheck ________________________________________*/

function LTrim(str)	{
	var whitespace = new String(" \t\n\r");
	var s = new String(str);

	if (whitespace.indexOf(s.charAt(0)) != -1) {
		var j=0, i = s.length;
		while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
			j++;
            s = s.substring(j, i);
	}
	return s;
}


function RTrim(str)	{
	var whitespace = new String(" \t\n\r");
	var s = new String(str);

	if (whitespace.indexOf(s.charAt(s.length-1)) != -1) {
		var i = s.length - 1;       // Get length of string
		while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
			i--;
			s = s.substring(0, i+1);
	}
	return s;
}


function Trim(str) {
	return RTrim(LTrim(str));
}


/* Emailcheck _________________________________________*/

function IsEmail(s) {
	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(s));
	}
 	else {
 		res = (s.search('@') >= 1 &&
		s.lastIndexOf('.') > s.search('@') &&
		s.lastIndexOf('.') >= s.length-5)
	}
	return(res);
}