

function alterSeats() {
	var eventObj = document.getElementById('Veranstaltung');
	var eventInt = parseInt(eventObj.options[eventObj.selectedIndex].value);
	if (eventInt != -1) {
		setOptions(eventInt);
	} else {
		resetOptions();
	}
}

function calc() {
	var karten = parseInt(document.getElementById('Karten').value);
	var preis_main = parseInt(document.getElementById('Sitzplatz').options[document.getElementById('Sitzplatz').selectedIndex].value);
	var preis_alt = parseInt(document.getElementById('alt_Sitzplatz').options[document.getElementById('alt_Sitzplatz').selectedIndex].value);

	result_main = karten * preis_main;
	result_alt = karten * preis_alt;

	if (result_main < 1 || isNaN(result_main )) result_main  = 0;
	if (result_alt < 1 || isNaN(result_alt)) result_alt = 0;

	document.getElementById('Preis').value = result_main;
	document.getElementById('alt_Preis').value = result_alt;

}

function setOptions(eventInt) {
	//Unset current options
	document.getElementById('Sitzplatz').innerHTML = '';
	document.getElementById('alt_Sitzplatz').innerHTML = '';

	//Create Array with provided seats
	var sitze = events[eventInt]["rows"].split(',');
	var opt = '';
	//Add Seats to options
	for (var j=0; j<sitze.length; j++) {
		var add = false;
		if (j == 0) add = true;
		document.getElementById('Sitzplatz').options[j] = new Option(rows[sitze[j]]['name'],rows[sitze[j]]['price'],add,false);
		document.getElementById('alt_Sitzplatz').options[j] = new Option(rows[sitze[j]]['name'],rows[sitze[j]]['price'],add,false);
	}


	//Unset date values
	document.getElementById('Termin').innerHTML = '';

	//Array with perfomance dates
	var termine = events[eventInt]["dates"].split(',');
	//Add these options to the form
	for(var l=0; l<termine.length; l++) {
		var add = false;
		if (l == 0) add = true;
		document.getElementById('Termin').options[l] = new Option(dates[termine[l]],dates[termine[l]],add);
	}

	//Recalc to avoid wrong prices
	calc();
}

function resetOptions() {
	document.getElementById('Sitzplatz').innerHTML = '<option value="-1" selected="selected>' + msg + '</option>';
	document.getElementById('alt_Sitzplatz').innerHTML = '<option value="-1" selected="selected>' + msg + '</option>';
	document.getElementById('Termin').innerHTML = '<option value="-1" selected="selected>' + msg + '</option>';
	/*
	for (var i=0; i<obj.options.length; i++) {
		obj.options[i] = null;
	}
	obj.options[0].value = "-1";
	obj.options[0].text = msg;

	obj = null;
	obj = document.getElementById('alt_Sitzplatz');

	for (var i=0; i<obj.options.length; i++) {
		obj.options[i] = null;
	}
	obj.options = null;
	obj.options[0].value = "-1";
	obj.options[0].text = msg;*/
	calc();
}



function getNames() {
	//Save name of the Event
	document.getElementById("Oper").value = document.getElementById("Veranstaltung").options[document.getElementById("Veranstaltung").selectedIndex].text;

	//Save name of the Seats
	document.getElementById('Sitz').value = document.getElementById("Sitzplatz").options[document.getElementById("Sitzplatz").selectedIndex].text;

	document.getElementById('altSitz').value = document.getElementById("alt_Sitzplatz").options[document.getElementById("alt_Sitzplatz").selectedIndex].text;

	//Recalc
}

var $ = function(objId) {
	return document.getElementById(objId);
}

function checkForm() {
	var fields = '';

	if (ln == 'de') {
		if (document.getElementById("Vorname").value.length < 3) fields = fields + "Vorname\n";
		if (document.getElementById("Nachname").value.length < 3) fields = fields + "Nachname\n";
		if (document.getElementById("Adresse").value.length < 3) fields = fields + "Adresse\n";
		if (document.getElementById("Ort").value.length < 6) fields = fields + "PLZ / Ort\n";
		if (document.getElementById("Land").value.length < 3) fields = fields + "Land\n";
		if (document.getElementById("Telefon").value.length < 3) fields = fields + "Telefon\n";
		if (document.getElementById("E-Mail").value.search("^([a-z0-9_]|\-|\.)+@(([a-z0-9_]|\-)+\.)+[a-z]{2,4}\$") == -1) fields = fields + "E-Mail\n";
		if (parseInt(document.getElementById("Karten").value) < 1) fields = fields + "Anzahl der Karten\n";
		if (parseInt(document.getElementById("Sitzplatz").options[document.getElementById("Sitzplatz").selectedIndex].value) < 0) fields = fields + "Gewünschter Sitzplatz\n";
		
		if ($("Sitzplatz").options[ $("Sitzplatz").selectedIndex ].text == $("alt_Sitzplatz").options[ $("alt_Sitzplatz").selectedIndex ].text) {
			fields = fields + "Alternativer Sitzplatz muss sich vom gewünschten Sitzplatz unterscheiden\n";
		}
	} else {
		if (document.getElementById("Vorname").value.length < 3) fields = fields + "Given name\n";
		if (document.getElementById("Nachname").value.length < 3) fields = fields + "Family name\n";
		if (document.getElementById("Adresse").value.length < 3) fields = fields + "Address\n";
		if (document.getElementById("Ort").value.length < 6) fields = fields + "Postcode / City\n";
		if (document.getElementById("Land").value.length < 3) fields = fields + "Country\n";
		if (document.getElementById("Telefon").value.length < 3) fields = fields + "Phone\n";
		if (document.getElementById("E-Mail").value.search("^([a-z0-9_]|\-|\.)+@(([a-z0-9_]|\-)+\.)+[a-z]{2,4}\$") == -1) fields = fields + "E-Mail\n";
		if (parseInt(document.getElementById("Karten").value) < 1) fields = fields + "Number of tickets\n";
		if (parseInt(document.getElementById("Sitzplatz").options[document.getElementById("Sitzplatz").selectedIndex].value) < 0) fields = fields + "Seat\n";
		
		
		if ($("Sitzplatz").options[ $("Sitzplatz").selectedIndex ].text == $("alt_Sitzplatz").options[ $("alt_Sitzplatz").selectedIndex ].text) {
			fields = fields + "The alternative seating must not be the same as the prefered seat.\n";
		}
	}

	if (fields == '') {
		getNames();
		return true;
	} else {
		var msg = 'Um ihre Anfrage bearbeiten zu können,\nfüllen sie bitte die angeführten Felder korrekt aus.\n\n';
		if (ln == 'en') msg = 'To process your request,\nplease fill in the correct data into the specified fields.\n\n';
		alert(msg + fields);
		return false;
	}
}
