function performSubmitLoginVermieter() {
	document.getElementsByName('linkTypeLogin')[0].value = "loginVermieter";
	var hasErrors = false;
	var errorText = "";
	clearBackground(new Array("email", "passwort"));
	document.cookie="testcookie"; //browser muss cookies unterstützen
	cookieEnabled=(document.cookie.indexOf("testcookie")!=-1)? true : false;
	if (!cookieEnabled) {
		document.getElementById('fehlermeldungLogin').innerHTML = "<span class='infofehler'>Die Cookie-Funktion Ihres Browsers ist deaktiviert. Bitte aktivieren Sie die Funktion<br /><br /></span>";
		return false; //hier ausstieg aus funktion, der rest ist unwichtig
	}
	if (removeWhitespace(document.getElementsByName('email')[0].value) == "") {
		hasErrors = true;
		errorText = getErrorText("E-mail", errorText);
		setErrorBackground('email');
	}
	if (removeWhitespace(document.getElementsByName('passwort')[0].value) == "") {
		hasErrors = true;
		errorText = getErrorText("Passwort", errorText);
		setErrorBackground('passwort');
	}
	if (!hasErrors) {
		document.formLogin.action= "";
		return true;
	} else {
		document.getElementById('fehlermeldungLogin').innerHTML = "<span class='infofehler'>Bitte "
		+ errorText + " eingeben<br /><br /></span>";
		return false;
	}
}

function performSubmitRegistrationVermieter(isAgbGelesenVisible) {
	document.getElementsByName('linkTypeRegistration')[0].value = "registrationVermieter";
	var hasErrors = false;
	var errorText = "";
	clearBackground(new Array("emailRegistration", "passwortRegistrationWiederholen", "passwortRegistration", "bedingungenBestaetigen"));
	document.cookie="testcookie"; //browser muss cookies unterstützen
	cookieEnabled=(document.cookie.indexOf("testcookie")!=-1)? true : false;
	if (!cookieEnabled) {
		document.getElementById('fehlermeldungRegistration').innerHTML = "<br /><span class='infofehler'>Die Cookie-Funktion Ihres Browsers ist deaktiviert. Bitte aktivieren Sie die Funktion </span><br />";
		return false; //hier ausstieg aus funktion, der rest ist unwichtig
	}
	var emailRegistration = removeWhitespace(document.getElementsByName('emailRegistration')[0].value);
	if (emailRegistration == "") {
		hasErrors = true;
		errorText = getErrorText("E-mail", errorText);
		setErrorBackground('emailRegistration');
	}
	var passwortRegistration = removeWhitespace(document.getElementsByName('passwortRegistration')[0].value);
	if (passwortRegistration == "") {
		hasErrors = true;
		errorText = getErrorText("Passwort", errorText);
		setErrorBackground('passwortRegistration');
	}
	if (hasErrors) {
		errorText = "<span class='infofehler'>Bitte " + errorText + " eingeben</span><br />";
	}
	if (emailRegistration != '') { //email-prüfung auf format
		if (isNotEmailFormat(emailRegistration)) {
			hasErrors = true;
			errorText = errorText + "<span class='infofehler'>E-mail" +" hat falsches Format</span><br />";
			setErrorBackground('emailRegistration');
		}
	}
	var passwortRegistrationWiederholung = removeWhitespace(document.getElementsByName('passwortRegistrationWiederholen')[0].value); //passwörter vergleichen
	if (passwortRegistration != '' ){
		if (passwortRegistration != passwortRegistrationWiederholung) {
			hasErrors = true;
			errorText = errorText + "<span class='infofehler'>Passworte stimmen nicht überein</span><br />";
			setErrorBackground('passwortRegistrationWiederholen');
		}
	}
	if (isAgbGelesenVisible) {
		var bedingungenBestaetigen = document.getElementsByName('bedingungenBestaetigen')[0];
		if (!bedingungenBestaetigen.checked) {
			hasErrors = true;
			errorText = errorText + "<span class='infofehler'>Bitte die AGB bestätigen</span><br />";
			setErrorBackground('bedingungenBestaetigen');
		}
	}
	if (!hasErrors) {
		document.formRegistration.action= "";
		document.formRegistration.submit();
	} else {
		document.getElementById('fehlermeldungRegistration').innerHTML = "<br />" + errorText;
	}
}

function getErrorText(value, errorTextOld) {
	var errorText = "";
	if (errorTextOld == "") {
		errorText = value;
	} else {
		errorText = errorTextOld + ", " + value;
	}
	return errorText;
}

function setErrorBackground(val) {
	document.getElementsByName(val)[0].style.background='#F9DBC7';
}

function clearBackground(ar) {
	var element = null;
	for (i=0; i<ar.length;i++) {
		element = document.getElementsByName(ar[i])[0];
		if (element != null) {
			document.getElementsByName(ar[i])[0].style.background='';
		}
	}
}

function removeWhitespace(itemValue) {
	var tmp = "";
	var item_length = itemValue.length;
	var item_length_minus_1 = itemValue.length - 1;
	for (index = 0; index < item_length; index++) {
		if (itemValue.charAt(index) != ' ') {
			tmp += itemValue.charAt(index);
		} else {
			if (tmp.length > 0){
				if (itemValue.charAt(index+1) != ' ' && index != item_length_minus_1) {
					tmp += itemValue.charAt(index);
				}
			}
		}
	}
	return tmp;
}

function isNotEmailFormat(email) {
	return !(email.match(/^[a-zA-Z0-9_\.-]{2,}@[a-z0-9-]{3,}\.[a-z]{2,4}|museum$/));
}

function performSubmitObjektSpeichern() {
	document.getElementsByName('linkTypeObjekt')[0].value = "objektspeichern";
	var hasErrors = false;
	var errorText = "";
	clearBackground(new Array("titel", "preis0", "preisinput0", "kategorie1", "kategorie2", "kategorie3", "kategorie4", "kategorie5", "kategorie6", "kategorie7", "kategorie8", "kategorie9", "kategorie10", "preisinput1", "preisinput2", "preisinput3", "preisinput4", "preisinput5"));
	if (removeWhitespace(document.getElementsByName('kategorie1')[0].value) == null || removeWhitespace(document.getElementsByName('kategorie1')[0].value) == "") {
		hasErrors = true;
		errorText = getErrorText("Kategorie", errorText);
		setErrorBackground('kategorie1');
	} 
	if (removeWhitespace(document.getElementsByName('titel')[0].value) == "") {
		hasErrors = true;
		errorText = getErrorText("Titel", errorText);
		setErrorBackground('titel');
	}
	if (hasErrors) {
		errorText = "<span class='infofehler'>Bitte " + errorText + " eingeben</span>";
	}
	var preisOk = false; //mind. 1 Preis abgefüllt
	for (i=0; i<5; i++) {
		var preis = document.getElementsByName('preis'+i)[0];
		var preisinput = document.getElementsByName('preisinput'+i)[0];
		if (preis != null && preis.value != "99" && preisinput != null && removeWhitespace(preisinput.value) != "" && removeWhitespace(preisinput.value) > 0) {
			preisOk = true;
		}
	}
	if (!preisOk) {
		hasErrors = true;
		setErrorBackground('preis0');
		setErrorBackground('preisinput0');
		if (errorText != "") {
			errorText = errorText + "<br />";
		}
		errorText = errorText + "Mindestens einen Preis eingeben";
	}
	for (i=0; i<5; i++) { //format
		var preiselement = document.getElementsByName('preisinput'+i)[0];
		if (preiselement != null) {
			var preis = removeWhitespace(preiselement.value);
			if (preis != '' &&  isNaN(preis)) {
				hasErrors = true;
				setErrorBackground('preisinput'+i);
				if (errorText != "") {
					errorText = errorText + "<br />"
				}
				errorText = errorText + "Preis " + (i+1) + " hat falsches Format";
			}
		}
	}
	if (!hasErrors) {
		document.formObjekt.action= "";
		document.formObjekt.submit();
	} else {
		document.getElementById('fehlermeldungObjekt').innerHTML = "<br />" + errorText + "<br />";
	}
}

function performSubmitGesuchSpeichern() {
	document.getElementsByName('linkTypeGesuch')[0].value = "gesuchspeichern";
	var hasErrors = false;
	var errorText = "";
	clearBackground(new Array("titel", "kategorie1", "kategorie2", "kategorie3", "kategorie4", "kategorie5", "kategorie6", "kategorie7", "kategorie8", "kategorie9", "kategorie10", "preis", "endeMonat", "endeTag"));
	if (removeWhitespace(document.getElementsByName('kategorie1')[0].value) == null || removeWhitespace(document.getElementsByName('kategorie1')[0].value) == "") {
		hasErrors = true;
		errorText = getErrorText("Kategorie", errorText);
		setErrorBackground('kategorie1');
	} 
	if (removeWhitespace(document.getElementsByName('titel')[0].value) == "") {
		hasErrors = true;
		errorText = getErrorText("Titel", errorText);
		setErrorBackground('titel');
	}
	if (removeWhitespace(document.getElementsByName('endeMonat')[0].value) == 0 || removeWhitespace(document.getElementsByName('endeTag')[0].value) == 0 ) {
		hasErrors = true;
		errorText = getErrorText("Datum", errorText);
		setErrorBackground('endeMonat');
		setErrorBackground('endeTag');		
	}
	errorText = "<span class='infofehler'>Bitte " + errorText + " eingeben</span>";
	var preiselement = document.getElementsByName('preis')[0];
	if (preiselement != null) {
		var preis = removeWhitespace(preiselement.value);
		if (preis != '' &&  isNaN(preis)) {
			hasErrors = true;
			setErrorBackground('preis');
			if (errorText != "") {
				errorText = errorText + "<br />"
			}
			errorText = errorText + "Preis hat falsches Format";
		}
	}
	if (!hasErrors) {
		document.formGesuch.action= "";
		document.formGesuch.submit();
	} else {
		document.getElementById('fehlermeldungGesuch').innerHTML = "<br />" + errorText + "<br />";
	}
}

function performSubmitArtikelErfassen1() {
	document.getElementsByName('linkTypeArtikelErfassen')[0].value = "artikelerfassen";
	var hasErrors = false;
	var errorText = "";
	clearBackground(new Array("titel", "kategorie1"));
	if (removeWhitespace(document.getElementsByName('titel')[0].value) == "") {
		hasErrors = true;
		errorText = getErrorText("Titel", errorText);
		setErrorBackground('titel');
	}
	if (removeWhitespace(document.getElementsByName('kategorie1')[0].value) == null || removeWhitespace(document.getElementsByName('kategorie1')[0].value) == "") {
		hasErrors = true;
		errorText = getErrorText("Kategorie", errorText);
		setErrorBackground('kategorie1');
	} 
	if (!hasErrors) {
		return true;
	} else {
		document.getElementById('fehlermeldungArtikelErfassen1').innerHTML = "<br />Bitte " + errorText+ " eingeben";
		return false;
	}
}

function performSubmitFeedbackForm() {
	document.getElementsByName('linkType')[0].value = "absenden";
	var hasErrors = false;
	var errorText = "";
	clearBackground(new Array("feedbackText", "emailFeedback", "telefonFeedback"));	
	if (removeWhitespace(document.getElementsByName('feedbackText')[0].value) == "") {
		hasErrors = true;
		setErrorBackground('feedbackText');
		errorText = getErrorText("Text", errorText);
	}
	if (hasErrors) {
		errorText = "<span class='infofehler'>Bitte " + errorText + " eingeben </span><br />";
	}
	var emailRegistration = removeWhitespace(document.getElementsByName('emailFeedback')[0].value);
	var telefonRegistration = removeWhitespace(document.getElementsByName('telefonFeedback')[0].value);
	if (emailRegistration !='' && isNotEmailFormat(emailRegistration)) {
		hasErrors = true;
		setErrorBackground('emailFeedback');
		errorText = errorText + "<span class='infofehler'>E-Mail hat falsches Format</span><br />";
	} else if (emailRegistration =='' && telefonRegistration =='') {
		hasErrors = true;
		setErrorBackground('emailFeedback');
		setErrorBackground('telefonFeedback');
		errorText = errorText + "<span class='infofehler'>Bitte E-Mail oder Telefon eingeben </span><br />";
	}
	if (!hasErrors) {
		document.form.action= "";
		return true;
	} else {
		document.getElementById('fehlermeldung').innerHTML = errorText;
		return false;
	}
}

function showPasswordText(val) {
	if (val) {
		document.getElementById('passwortInfo').innerHTML='<br />Falls Sie Ihr Passwort vergessen haben:<br />'
			+ 'Geben Sie Ihr E-Mail ein.<br />'
			+ 'Klicken Sie auf den Link "Passwort vergessen".<br />'
			+ 'Sie erhalten automatisch ein E-Mail, '
			+ 'das Ihr Passwort enth&auml;lt.';
	} else {
		document.getElementById('passwortInfo').innerHTML='&nbsp;';
	}
}

function showKategorieVorschlagenText(val) {
	if (val) {
		$('kategorieVorschlagenInfo').innerHTML='<div class="colLinksInnen2Spaltig">&nbsp;</div><div class="colRechtsInnen2Spaltig">Falls Sie keine passende Kategorie gefunden haben:<br />'
			+ 'Klicken Sie auf den Link "andere Kategorie vorschlagen".<br />'
			+ 'F&uuml;llen Sie auf der n&auml;chsten Seite das Kontaktformular aus oder rufen Sie uns an.<br />'
			+ 'Wir helfen Ihnen, eine passende Kategorie zu finden.</div>';
	} else {
		$('kategorieVorschlagenInfo').innerHTML='&nbsp;';
	}
}

function createPreis(element, aktuellePosition) {
	var divElement = $('preiszeit').down('div');
	var counter = ((divElement.nextSiblings().length)-1)/2;
	if (counter < 4 && aktuellePosition == counter) {
		$('preiszeit').insert("<div class='colLinksInnen2Spaltig'><b>Preis CHF pro </b><select name='preis" + (counter+1) + "' onChange='createPreis(this, " + (counter+1) + ")'><option value='99'>Bitte w&auml;hlen</option><option value='0'>Stunde</option><option value='1'>Tag</option><option value='2'>Wochenende</option><option value='3'>Woche</option><option value='4'>Monat</option></select></div><div class='colRechtsInnen2Spaltig'><p><input type='text' name='preisinput" + (counter+1) + "' value='' size='20' maxlength='10' class='colRechtsInnen2SpaltigInputFeld' /></p></div>");
	}
}

function showWeiterempfehlungsMail(einstieg) {
	var einstiegText = 'Mietartikel per E-Mail weiterempfehlen';
	if (einstieg == 'gesuch') {
		einstiegText = 'Mietgesuch per E-Mail weiterempfehlen';
	}
	$('bodyGroesse').insert("<div id='bodybackground' class='bodybackground'></div>");
	$('bodyGroesse').insert("<div id='weiterempfehlungsmail' class='weiterempfehlungsmail'><form method='post' style='margin:0px;padding:0px'>\n"
			+"<table cellpadding='3' cellspacing='3'>\n"
			+"<tr><td width='100%' align='right' colspan='3'><b>" + einstiegText + "</b></td><td align='right'><a href='javascript:hideWeiterempfehlungsMail();'><font style='border: 1px solid #bfbfbf;color: #bfbfbf;'>&nbsp;x&nbsp;</font></a></td></tr>\n"
			+"<tr><td>&nbsp;</td></tr>"
			+"<tr><td>Ihr Name:</td><td><input name='nameWeiterempfehlung' type='text' value='' /></td><td>Ihre E-Mail-Adresse:</td><td><input name='emailWeiterempfehlung' type='text' value=''/></td></tr>\n"
			+"<tr><td>Name des Empf&auml;ngers:</td><td><input name='nameWeiterempfehlungEmpfaenger' type='text' /></td><td>E-Mail des Empf&auml;ngers:</td><td><input name='emailWeiterempfehlungEmpfaenger' type='text' /></td></tr>\n"
			+"<tr><td>Info:</td><td colspan='2'><textarea name='textWeiterempfehlung' cols='45' rows='5'></textarea></td></tr>\n"
			+"<tr><td colspan='2'><input name='sendMail' type='button' onclick='sendWeiterempfehlungsMail(\"" + einstieg + "\");' value='Abschicken' />&nbsp;&nbsp;&nbsp;<input type='button' value='Abbrechen' onclick='hideWeiterempfehlungsMail();' /></td></tr>\n"
			+"</table>\n"
			+"</form>\n"
			+"</div>\n");
	new Effect.Opacity('bodybackground', { duration: 0.2, transition: Effect.Transitions.linear, from: 0, to: 0.6 });
 	var objLeft = (screen.width - $('weiterempfehlungsmail').offsetWidth) / 2;
	var objTop = (screen.height - $('weiterempfehlungsmail').offsetHeight) / 2;
	$('weiterempfehlungsmail').style.top = objTop+"px";
	$('weiterempfehlungsmail').style.left = objLeft+"px";
}

function hideWeiterempfehlungsMail() {
	new Effect.Opacity('bodybackground', { duration: 0.2, transition: Effect.Transitions.linear, from: 0.6, to: 0 });
 	$('weiterempfehlungsmail').remove();
 	$('bodybackground').remove();
}

function confirmAnfrageMail() {
	new Effect.Opacity('bodybackground', { duration: 0.2, transition: Effect.Transitions.linear, from: 0.6, to: 0 });
 	$('anfrageresultpopup').remove();
 	$('bodybackground').remove();
}

function showAnfrageText(anfrageText, counter) {
	var divName = 'anfrageDiv' + counter;
	anfrageText = "<div id='anfrageDiv" + counter + "' style='background-color:white;border:solid 1px;position:relative;z-index:999999;width:234px;'><br />"+anfrageText+"<br /><br /><a href=\"javascript:closeAnfrageText('" + anfrageText + "', " + counter + ");\">Anfragetext verbergen</a><br /><br /></div>";
	$(divName).replace(anfrageText);
}

function closeAnfrageText(anfrageText, counter) {
	var divName = 'anfrageDiv' + counter;
	anfrageText = "<div id='anfrageDiv" + counter + "'><a href=\"javascript:showAnfrageText('" + anfrageText + "', " + counter + ");\">Anfragetext anzeigen</a></div>";
	$(divName).replace(anfrageText);
}