function searchField() {
	var searchQuery = document.forms.search.searchquery.value;
	if (searchQuery == '') {
		document.forms.search.searchquery.value = 'Suchen...';
		//alert(searchQuery);
	}
}

function Anzeigen() {
	var ekarte = new Array ("plusAnzErw","plusAnzKin","plusAnzFam","plusTermin","plusVeranst");
	var skarte = new Array ("plusAnzErw","plusAnzKin","plusAnzFam");
	var gkarte = new Array ("plusTermin","plusVeranst");
	var vermiet = new Array ("plusTermin");
	var infomat = new Array ("plusHeft", "plusGWelt", "plusEWelt", "plusGKZ");
	var souv = new Array ("plusSouv1", "plusSouv2", "plusSouv3", "plusSouv4", "plusSouv5");
	
	//Errors löschen
	var errorDiv = document.getElementById('errorCodes');
	if (errorDiv){
		errorDiv.innerHTML = "";
		var alle = new Array ("fromName","fromSurname","street","city","phone","from","text","spanAgb");
		for (var i=0; i<alle.length; ++i) {
			var std = document.getElementById(alle[i]);
			if(std) {std.className = "";};
		}
	};
	
	var selection = document.getElementById('subject');
	var typ = document.getElementById('type');
	
	//erst einmal alle verbergen
	var pPlus = document.getElementById('p_Umbruch');
	pPlus.className = "formtext formlabelMinus";
	for (var i=0; i<ekarte.length; ++i) {
		var pPlus = document.getElementById('p_'+ekarte[i]);
		if (pPlus){pPlus.className = "formtext formlabelMinus";};
		var label = document.getElementById('label'+ekarte[i]);
		var feld = document.getElementById(ekarte[i]);
		if (label){label.style.visibility = "hidden";};
		if (feld){feld.style.visibility = "hidden";};
	}
	for (var i=0; i<infomat.length; ++i) {
		var pPlus = document.getElementById('p_'+infomat[i]);
		if (pPlus){pPlus.className = "formtext formlabelMinus";};
		var label = document.getElementById('label'+infomat[i]);
		var feld = document.getElementById(infomat[i]);
		if (label){label.style.visibility = "hidden";};
		if (feld){feld.style.visibility = "hidden";};
	}
	for (var i=0; i<souv.length; ++i) {
		var pPlus = document.getElementById('p_'+souv[i]);
		if (pPlus){pPlus.className = "formtext formlabelMinus";};
		var label = document.getElementById('label'+souv[i]);
		var feld = document.getElementById(souv[i]);
		if (label){label.style.visibility = "hidden";};
		if (feld){feld.style.visibility = "hidden";};
	}
	
	//neu berechnen
	var newValues = "";
	var sternStreet = document.getElementById('stern_street');
	sternStreet.innerHTML = " *";
	var sternCity = document.getElementById('stern_city');
	sternCity.innerHTML = " *";
	var sternPhone = document.getElementById('stern_phone');
	sternPhone.innerHTML = " *";
	if (selection.value == "Eintrittskarte") {
		var newValues = ekarte;
		sternPhone.innerHTML = "";
	} else if (selection.value == "Gutscheine") {
		var newValues = ekarte;
	} else if (selection.value == "Saisonkarte") {
		var newValues = skarte;
	} else if (selection.value == "Gruppenanmeldung") {
		var newValues = gkarte;
		sternPhone.innerHTML = "";
	} else if (typ.value == "Vermietung") {
		var newValues = vermiet;
		sternPhone.innerHTML = "";
	} else if (selection.value == "Informationsmaterial anfordern") {
		var newValues = infomat;
		sternPhone.innerHTML = "";
	} else if (selection.value == "Bestellung") {
		var newValues = souv;
	}
	if ((selection.value == "Allgemeine Anfrage") || (selection.value == "")) {
		sternStreet.innerHTML = "";
		sternCity.innerHTML = "";
		sternPhone.innerHTML = "";
	}
	
	if (newValues.length > 0) {
		var pPlus = document.getElementById('p_Umbruch');
		pPlus.className = "formtext formlabelPlus";
	}
	
	for (var i=0; i<newValues.length; ++i) {
		var pPlus = document.getElementById('p_'+newValues[i]);
		if(pPlus) {pPlus.className = "formtext formlabelPlus";};
		var label = document.getElementById('label'+newValues[i]);
		var feld = document.getElementById(newValues[i]);
		if (label){label.style.visibility = "visible";};
		if (feld){feld.style.visibility = "visible";};
	}
}

function Hinzufuegen() {
	var newValuesTicketshop = new Array ("", "Allgemeine Anfrage", "Eintrittskarte", "Saisonkarte", "Gutscheine", "Gruppenanmeldung");
	var newValuesVermietung = new Array ("", "Allgemeine Anfrage", "Grillpaltz", "Bauernhaus", unescape("Gro%DFgr%FCn"));
	var newValuesInfomaterial = new Array ("", "Allgemeine Anfrage", "Informationsmaterial anfordern");
	var newValuesSouvenirs = new Array ("", "Allgemeine Anfrage", "Bestellung");

	var selection = document.getElementById('subject');
	var selectionType = document.getElementById('type');
	
	for (var i=0; i<selectionType.length; ++i) {if (selectionType.options[i].selected) {var selectedType = selectionType[i].value;}}
	
	for (var i=selection.length-1; i>0; i--) {if (selection != -1) {selection[i] = null;}}
	
	var label = document.getElementById('labelsubject');
	
	if (selectedType == "Ticketshop") {
		var newValues = newValuesTicketshop;
	} else if (selectedType == "Vermietung") {
		var newValues = newValuesVermietung;
	} else if (selectedType == "Infomaterial") {
		var newValues = newValuesInfomaterial;
	} else if (selectedType == "Souvenirs") {
		var newValues = newValuesSouvenirs;
	} else {
		var newValues = "";
	}

	selection.options[selection.length - 1] = null;
	for (var i=0; i<newValues.length; ++i) {
		var newOption = document.createElement('option');
		newOption.text = newValues[i];
		newOption.value = replaceMutatedVowel(newValues[i], 0);
		var selection = document.getElementById('subject');

		try {
			selection.add(newOption, null); // standards compliant; doesn't work in IE
		}
		catch(ex) {
			selection.add(newOption); // IE only
		}
	}
	
	Anzeigen()
}

function loadSubject() {
	var newValuesTicketshop = new Array ("Allgemeine Anfrage", "Eintrittskarte", "Saisonkarte", "Gutscheine", "Gruppenanmeldung");
	var newValuesVermietung = new Array ("Allgemeine Anfrage", "Grillpaltz", "Bauernhaus", unescape("Gro%DFgr%FCn"));
	var newValuesInfomaterial = new Array ("Allgemeine Anfrage", "Informationsmaterial anfordern");
	var newValuesSouvenirs = new Array ("Allgemeine Anfrage", "Bestellung");
	
	var selection = document.getElementById('subject');
	var selectionType = document.getElementById('type');
	var subjectRequest = document.getElementById('subjectRequest');
	
	if (selectionType != null) {
		for (var i=0; i<selectionType.length; ++i) {if (selectionType.options[i].selected) {var selectedType = selectionType[i].value;}}
		
		for (var i=selection.length-1; i>0; i--) {if (selection != -1) {selection[i] = null;}}
	
		var label = document.getElementById('labelsubject');
			
		if (selectedType == "Ticketshop") {var newValues = newValuesTicketshop;
		} else if (selectedType == "Vermietung") {var newValues = newValuesVermietung;
		} else if (selectedType == "Infomaterial") {var newValues = newValuesInfomaterial;
		} else if (selectedType == "Souvenirs") {var newValues = newValuesSouvenirs;
		} else {
			return;
		}
	
		for (var i=0; i<newValues.length; ++i) {
			var newOption = document.createElement('option');
			newOption.text = newValues[i];
			newOption.value = replaceMutatedVowel(newValues[i], 0);
			var selection = document.getElementById('subject');
			
			if (subjectRequest.value == newOption.value) {selectedIndexSubject = i + 1;}
	
			try {
				selection.add(newOption, null); // standards compliant; doesn't work in IE
			}
			catch(ex) {
				selection.add(newOption); // IE only
			}
		}
		document.form_formular.subject.selectedIndex = selectedIndexSubject;
	}
}

function replaceMutatedVowel(string, index){
    var anArray = new Array(2);
    anArray[0] = new Array(unescape("%D6"), unescape("%F6"), unescape("%C46"), unescape("%E4"), unescape("%DC"), unescape("%DC"), unescape("%DF"));
    anArray[1] = new Array("Oe", "oe", "Ae", "ae", "Ue", "ue", "sz");
    
    for (var i=0; i<anArray[index].length; i++){
		myRegExp = new RegExp(anArray[index][i],"g");
		string = string.replace(myRegExp, anArray[(index==0?1:0)][i]);
	}
    return string;
}
