var numAbo = 0;

var minAbo = 0;
var maxAbo = 0;
var korting = 0;


switch (type_abo) {
case "0":
	minAbo = 6;
	maxAbo = 11;
	korting = aantal_abo  * 12;
	break;
case "1": 
	minAbo = 12;
	maxAbo = 17;
	korting = aantal_abo * 30;
	break;
case "2":
	minAbo = 18;
	maxAbo = 99;
	korting = aantal_abo * 54;
	break;
}
function submitOrderForm(form) {
    if(mode == "abo") {
    	var _obj = document.getElementById("tickets");
    	var ticket_array = _obj.value.split(",");
    	
    	var aantal = 0;
    	
    	var unique_ticket_array = new Array();
    	
    	for (var i = 0; i<ticket_array.length; i++) {
    		var ticket = ticket_array[i].split("_");
    		ticket = ticket[0];
    		
    		if(ticket) {
	    		var f = false;
	    		for (var u = 0; u < unique_ticket_array.length; u++) {
	    	
	    			if (ticket == unique_ticket_array[u]) {
	    				f = true;
	    				break;
	    			}
	    		}
	    		
	    		if (!f) {
	    			unique_ticket_array.push(ticket);
	    			aantal++;
	    		}
    		}
    	}
    	if(aantal<minAbo) {
    		_obj = document.getElementById("form_tickets_errors");
        	_obj.innerHTML = "<span class='error'>selecteer minstens " + minAbo + " verschillende voorstellingen</span>";
    	} else {
    		document.getElementById("form_tickets").submit();
    	}
    } else {
    	var _obj = document.getElementById("aantal");
    	if (_obj.value) {
        	document.getElementById("form_tickets").submit();
        } else {
        	_obj = document.getElementById("form_tickets_errors");
        	_obj.innerHTML = "<span class='error'>selecteer een voorstelling/activiteit</span>";
        }		
    }
}
function checkAbo(evt) {	
	if (document.getElementById(evt.id.split("chk").join("btn"))) {
		_obj = document.getElementById(evt.id.split("chk").join("btn"));
		_obj.disabled = !evt.checked;
	}
	
	var id = evt.id.split("chk").join("");
	
	var price_array = document.getElementById("price_" + id + "_array").value;
	price_array = price_array.split(",");
	_obj = document.getElementById("price_" + id + "_5");
	if (evt.checked) {
		numAbo += aantal_abo;
		_obj.value = aantal_abo;
		tickets_summary(_obj);
	} else {
		numAbo -= aantal_abo;
		for (var i = 0; i<price_array.length; i++) {
			_obj = document.getElementById("price_" + id + "_" + price_array[i]);
			
			while (_obj.value != "0") {
				price_min(_obj.id.split("price_").join(""));
			}
		}
	}
	
	
}

function submitAbonnementForm(form) {
	document.getElementById("form_abonnement").submit();
}


//alert(type_abo);
function resultUserDataForm(id) 
{
	if(mode != "abo") {
		window.location = "/tickets/" + mode + "/stap3/user-id/" + id;
	} else {
		window.location = "/tickets/abonnement/stap4/user-id/" + id;
	}
}

function errorAboLimit() 
{
	/*var params = "&tickets=" + ticket_array.join(",");
	params += "&aantal=" + aantal_array.join(",");
	params += "&prijs=" + prijs_array.join(",");
	params += "&mode=" + mode;*/
	var params = "";
	
	jQuery.ajax({
		   type: "POST",
		   url: "/ajax/get-error-abo-limit/",
		   data: params,
		   success: function(msg){
				msg = eval(msg);
				alert(msg);
		   }
		 });
	//alert("je mag niet meer dan 4 extra tickets bestellen!")
}

function updateNumber(e) 
{
	var id = e.id;
		
	var _obj = document.getElementById(id);
	var prijs = document.getElementById(id + "_value").value;
	var aantal = e.value;
	
	/*if(mode == "abo" && aantal > aboLimit) {
		aantal = aboLimit;
		e.value = aboLimit;
		errorAboLimit();
	}*/
	//tickets_summary(_obj);

	var _obj = document.getElementById(id + "_amount");
	_obj.innerHTML = "&euro; " + (aantal*prijs);
}
var initSummary = false;
var ajax = false;
function tickets_summary(_obj) {
	var totaal_bedrag = 0;
	var totaal_aantal = 0;
	
	if (_obj) {
		var id = _obj.id.split("price_").join(""); //87_1
		var aantal = _obj.value;
		var prijs = document.getElementById("price_" + id + "_value").value;
		var f = false;
		
		for(var i = 0;i < ticket_array.length; i++)
		{
			if(ticket_array[i] == id)
			{
				f = true;
				ticket_array[i] = id;
				aantal_array[i] = aantal;
				prijs_array[i] = prijs;
				break;
			}
		}
		
		if (!f) {
			ticket_array.push(id);
			aantal_array.push(aantal);
			prijs_array.push(prijs);
		}
		
		var temp_ticket_array = new Array();
		var temp_aantal_array = new Array();
		var temp_prijs_array = new Array();
		
		for (var i = 0;i<aantal_array.length;i++) {
			if (aantal_array[i]!=0) {
				temp_ticket_array.push(ticket_array[i]);
				temp_aantal_array.push(aantal_array[i]);
				temp_prijs_array.push(prijs_array[i]);
			}
		}
		
		ticket_array = temp_ticket_array;
		aantal_array = temp_aantal_array;
		prijs_array = temp_prijs_array;
	}
	
	var msg = "";
	
	if (ticket_array.length==0) {
		msg = "nog geen tickets besteld";
	} else {
		var title_array = new Array();
		for (var i = 0;i<ticket_array.length;i++) {
			var id_array = ticket_array[i].split("_");
			var event_id = id_array[0];
			var price_id = id_array[1];
			title_array.push(document.getElementById("title_" + event_id).innerHTML + " - " + document.getElementById("subtitle_" + event_id).innerHTML);
		}
	}
	jQuery(document).ready(function() {		
		if (!totaal_bedrag) {
			totaal_bedrag = 0;
		}	
		if (!totaal_aantal) {
			totaal_aantal = 0;
		}
	
		jQuery("#tickets").val(ticket_array.join(","));
		jQuery("#aantal").val(aantal_array.join(","));
		jQuery("#prijs").val(prijs_array.join(","));
		
		if (!initSummary || !ajax) {
			
			initSummary = true;
			getSummary();
		}
	});
}

function getSummaryAjax()
{
	jQuery("#tickets_summary").html("bezig&nbsp;met&nbsp;laden");

	var params = "&tickets=" + ticket_array.join(",");
	params += "&aantal=" + aantal_array.join(",");
	params += "&prijs=" + prijs_array.join(",");
	params += "&mode=" + mode;
	
	jQuery.ajax({
		   type: "POST",
		   url: "/ajax/get-ticket-summary/",
		   data: params,
		   success: function(msg){
				msg = eval(msg);
				jQuery("#tickets_summary").html(msg);
				setTimeout("getSummary();",10000);
		   }
		 });
}

function getSummary() 
{	
	
	/* met ajax zorgt ervoor dat de server te veel moet verwerken */
	if (ajax) {
		
		getSummaryAjax();
	} else {
		var extra = " style='width:100px;'";
		var msg = "<table cellspacing='0' style='width:100%;" + extra + "'>";
	
		var old_id = "";
		var totalAbo = 0;
		var totalQuantity = 0;
		var totalPrice = 0;

		for (var i = 0; i<ticket_array.length;i++) {
			var id_array = ticket_array[i].split("_");
			var id = id_array[0];
			var price_id = id_array[1];
			var title = document.getElementById("title_" + id).innerHTML;
			var subtitle = document.getElementById("subtitle_" + id).innerHTML;
			var price_value = document.getElementById("price_" + id + "_" + price_id + "_value").value;
			var price_label = "";
			var price_label_obj = document.getElementById("price_" + id + "_" + price_id + "_label");
			var date = document.getElementById("date_" + id);
			
			if (price_id != 5) {
				price_label = price_label_obj.innerHTML;
			} else {
				totalAbo++;
				price_label = price_label_obj.value;
			}
			
			var price_amount = document.getElementById("price_" + id + "_" + price_id).value;
		
			totalQuantity += parseInt(price_amount);
			
			if (id != old_id && old_id != "") {
				//msg += "<tr><td colspan='3'>&nbsp;</td></tr>";
				msg += "<tr><td colspan='3' class='orderSummarySeperator'>&nbsp;</td></tr>";
			}
			
			if (id != old_id || old_id == "") {
				msg += "<tr><td colspan='3'><b>" + title + " - " + subtitle + "</b></td></tr>"
				if (date) {
					msg += "<tr><td colspan='3'>" + date.innerHTML + "</td></tr>"
				}
				//msg += "<tr><td colspan='3'>&nbsp;</td></tr>";
			}
			
			var price = price_value * price_amount;
			totalPrice += price;
			
			msg += "<tr><td" + extra + ">" + price_label + "</td>";
			msg += "<td>" + price_amount + "x</td>";
			msg += "<td>&euro;&nbsp;" + price + "</td></tr>";
			
			old_id = id;
	
	
		}
		////////////////////////
		//msg += "<tr><td colspan='3'>&nbsp;</td></tr>";
		msg += "<tr><td colspan='3' style='border-bottom:1px solid #CCC;'>&nbsp;</td></tr>";
		/*
		if (mode == "abo") {
			if (totalAbo>=aboReductionNumber) {
				aboReduction = totalAbo * aantal_abo;
				totalPrice-= aboReduction;
				aboReduction = "-&nbsp;&euro;&nbsp;" + aboReduction;
			} else {
				aboReduction = "-";
			}
	
			msg += "<tr><td colspan='2'><b>extra reductie vanaf " + aboReductionNumber + "de voorstelling:</b></td><td>" + aboReduction + "</td></tr>";
		}*/
	
	
		/*if (mode != "scholen" && mode != "educatieve-activiteiten") {
			totalPrice = totalPrice+shippingCost;
			if (totalQuantity > 0) {
				msg += "<tr><td colspan='2'><b>verzendingskosten:</b></td><td>+&nbsp;&euro;&nbsp;" + shippingCost + "</td></tr>";
			}
		}*/
	
		var korting = 0;
		var korting_extra = 0;
		var aant = 0;

		if (type_abo == "0") {
			aant = 6;
			
			if (totalAbo >= aant) {
				korting = 12*aantal_abo;
				
				if (totalAbo-aant>0) {
					korting_extra = (totalAbo-aant)*aantal_abo;
				}
			}
		} else if (type_abo == "1") {
			aant = 12;
			
			if (totalAbo >= aant) {
				korting = 30*aantal_abo;
				
				if (totalAbo-aant>0) {
					korting_extra = (totalAbo-aant)*aantal_abo;
				}
			}
		} else if (type_abo == "2") {
			aant = 18;
			
			if (totalAbo >= aant) {
				korting = 54*aantal_abo;
				
				if (totalAbo-aant>0) {
					korting_extra = (totalAbo-aant)*aantal_abo;
				}
			}
		}
		

		msg += "<tr><td><b>basisprijs:</b></td>";
		msg += "<td" + extra + ">&nbsp;</td>";
		msg += "<td>&euro;&nbsp;" + totalPrice + "</td></tr>";
		
		msg += "<tr><td><b>korting:</b></td>";
		msg += "<td" + extra + ">&nbsp;</td>";
		msg += "<td>&minus;&nbsp;&euro;&nbsp;" + korting + "</td></tr>";
		
		if (korting_extra != 0) {
			msg += "<tr><td><b>korting bijkomende voorstellingen:</b></td>";
			msg += "<td" + extra + ">&nbsp;</td>";
			msg += "<td>&minus;&nbsp;&euro;&nbsp;" + korting_extra + "</td></tr>";
		}
		
		msg += "<tr><td><b>administratiekosten:</b></td>";
		msg += "<td" + extra + ">&nbsp;</td>";
		msg += "<td>+&nbsp;&euro;&nbsp;0</td></tr>";
		
		msg += "<tr><td><b>totaal:</b></td>";
		msg += "<td" + extra + ">" + totalQuantity + "x</td>";
		msg += "<td>&euro;&nbsp;" + (totalPrice-korting-korting_extra) + "</td></tr>";
		
		msg += "</table>";
	
		if (!totalQuantity) {
			msg = "u heeft nog niets besteld";
		}
		
		msg += "</table>";
		jQuery("#tickets_summary").html(msg);
	}
}
function ficheOver() 
{
}
function ficheOut()
{
}
function price_plus(id)
{
	var _obj = document.getElementById("price_" + id);
	var prijs = document.getElementById("price_" + id + "_value").value;
	var aantal = parseInt(_obj.value)+1;
	/*
	if(mode == "abo" && aantal > aboLimit) {
		aantal = aboLimit;
		errorAboLimit();
	}
	*/
	_obj.value = aantal;
	tickets_summary(_obj);

	var _obj = document.getElementById("price_" + id + "_amount");
	_obj.innerHTML = "&euro; " + (aantal*prijs);
}

function price_min(id)
{
	var _obj = document.getElementById("price_" + id);
	var prijs = document.getElementById("price_" + id + "_value").value;
	var aantal = parseInt(_obj.value)-1;
	if(aantal<0)
	{
		aantal = 0;
	}
	_obj.value = aantal;
	tickets_summary(_obj);
	
	var _obj = document.getElementById("price_" + id + "_amount");
	if (_obj) {
		_obj.innerHTML = "&euro; " + (aantal*prijs);
	}
}
function submitUserDataForm(form) {
	formId = form;
	jQuery("#" + formId + "_errors").html("<span class='loading'>bezig&nbsp;met&nbsp;laden</span>");
	var params = $("#" + formId).serialize(); 
	params += "&form_name=" + form;

	jQuery.ajax({
		   type: "POST",
		   url: "/ajax/validate-user-data-form/",
		   data: params,
		   success: function(msg){
				if (msg.indexOf("id=") == -1) {
					jQuery("#" + formId + "_errors").html("<span class='error'>" + errorMsg + "</span>");
					
					var array = eval( '(' + msg + ')' );
	
					if (array.length > 0) {
						for(var i = 0;i<array.length;i++) {
							var _obj = document.getElementById(array[i]);
							_obj.className = "textfield_error";
						}	
					} 
				}else {
					msg = eval(msg);
					var id = msg.split("id=").join("");
					resultUserDataForm(id);
				}
		   }
		 });
	return false;
}
function submitMail(location) {
	window.location = location;
	$(".next").hide();
}