function SHARED_init(){
	if(window.XMLHttpRequest) {
		var xmlHTTP = new XMLHttpRequest();
	} 
	else if(window.ActiveXObject) {
			var xmlHTTP = new ActiveXObject("Microsoft.XMLHTTP");
	}	
	if(xmlHTTP){
		return xmlHTTP;	
	}
	else{
		return false;	
	}
}

function checkLimit(element,max_count,kontingent){
	
	var total_count = 0;
	var evt_id = element.id.replace(/evt_/,"");
	
	for(var i=0;i<element.getElementsByTagName("input").length;i++){
		var tmp = element.getElementsByTagName("input")[i];
		if(tmp.id.indexOf("anzahl_")!=-1){
			total_count+=parseInt(tmp.value); 		
		}	
	}
	var msg = "";
	var max_count_orig = max_count;
	if(document.getElementById("orderedEvt_"+evt_id)){
		
		max_count-= document.getElementById("orderedEvt_"+evt_id).value;	
		msg+= "Sie haben bereits "+document.getElementById("orderedEvt_"+evt_id).value+" Karten bestellt. \n";
		msg+= "Sie können noch maximal "+max_count+" Karten bestellen. \n";
		
	}
	if(max_count_orig>0 && total_count > max_count){
		msg+= "Für diese Veranstaltung(en) besteht ein Limit von "+max_count_orig+" Karten / Bestellung.";
		alert(msg);
		for(var i=0;i<element.getElementsByTagName("input").length;i++){
			var tmp = element.getElementsByTagName("input")[i];
			if(tmp.id.indexOf("anzahl_")!=-1){
				tmp.value = 0;	
				document.getElementById("showPrice_"+tmp.id.substring(tmp.id.lastIndexOf("_")+1)).innerHTML = "0.00 €";
			}	
		}
		
	}
	if(total_count > kontingent){
		msg = "Ihre gewünschte Kartenanzahl übersteigt die Gesamtkartenanzahl für diese Veranstaltung.";
		alert(msg);
		for(var i=0;i<element.getElementsByTagName("input").length;i++){
			var tmp = element.getElementsByTagName("input")[i];
			if(tmp.id.indexOf("anzahl_")!=-1){
				tmp.value = 0;	
				document.getElementById("showPrice_"+tmp.id.substring(tmp.id.lastIndexOf("_")+1)).innerHTML = "0.00 €";
			}	
		}
		
	}
	
}



function showPrice(count,price,show_target){
	var total_price = parseInt(count.value)*price.value;
	show_target.innerHTML = total_price.toFixed(2)+" €";
}

function checkForm(){
	var check = 0;
	var error = 0;
	var parent_node = document.getElementById("eventList");
	for(var i=0;i<parent_node.getElementsByTagName("li").length; i++){
		var tmp = parent_node.getElementsByTagName("li")[i];
		for(var z=0;z<tmp.getElementsByTagName("input").length;z++){
			var tmp2 = tmp.getElementsByTagName("input")[z];
			if(tmp2.id.indexOf("anzahl_")!=-1 && tmp2.value > 0){
				check++;		
			}
		}
		
	}
	
	for(i=0;i<document.forms[0].getElementsByTagName("input").length; i++){
		var tmp = document.forms[0].getElementsByTagName("input")[i];
		if(tmp.name.indexOf("_req")!=-1 && (tmp.value == "" || (tmp.name == "email_req" && tmp.value.indexOf("@")==-1))){
			tmp.style.backgroundColor = "#FF0000";
			tmp.style.color = "#FFFFFF";
			error+=1;
		}	
	}
	
	var errormsg = "";
	if(check == 0){
		errormsg+= "Es wurden für keine Veranstaltung Karten ausgewählt!\r\n\r\n";
	}
	if(error > 0){
		errormsg+= "Bitte füllen Sie die markierten Formularfelder korrekt aus!\r\n\r\n";
	}
	
	if(errormsg == ""){
		return true;	
	}
	else{
		errormsg = "Die folgenden Fehler sind aufgetreten: \r\n\r\n"+errormsg;
		alert(errormsg);
		return false;
	}

}

var bodyLoaded = false;
function loadComplete(){
	bodyLoaded = true;
}

function checkOrders(evt_orders){
	if(bodyLoaded == true){
		if(xmlHTTP=SHARED_init()){
			
			var postvars="";
			xmlHTTP.open("GET","modules/bestellungen/getOrderedEvt.ajax.php",true);
			xmlHTTP.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
			xmlHTTP.send(postvars);
			xmlHTTP.onreadystatechange=function(){
				if(xmlHTTP.readyState==4){
					
					var tmp = xmlHTTP.responseText;
					
					var evts = tmp.split("|");
					
					for(var i=0;i<evts.length;i++){
						
						if(evts[i] != ""){
							var tmp2 = evts[i].split(":");
							if(!document.getElementById("orderedEvt_"+tmp2[0])){
								var input = document.createElement("input");
								input.id = "orderedEvt_"+tmp2[0];
								input.value = tmp2[1];
								input.type = "hidden";
								document.body.appendChild(input);		
							}
							else{
								document.getElementById("orderedEvt_"+tmp2[0]).value = tmp2[1];
							}
							
						}
					}
					//window.setInterval(function(){checkOrders(evt_orders);},1000);
				}
			}
		}	
	}
	else{
		//window.setTimeout(function(){checkOrders(evt_orders)},100);	
	}
	
}