var lastCat;

function initOfferte()
{
	$("#loading").hide();
	
	$("#categorien").show();
	$("#detail").show();
	$("#nav").show();

	$(".detail").hide();
	setBtw('excl');

	$('#accordioncat0').accordion({
		header: 'h6',
		fillSpace: true
	});

	insertPersonenSlider();
	insertDatumTijd();

	showCat(0);
}

function initBackoffice()
{
	$("#detail").show();
	$("#nav").show();

	setBtw('excl');

	insertPersonenSlider();
	insertDatumTijd();
}

function insertPersonenSlider()
{
	$("#sliderpersonen").slider({
			range: "max",
			min: 10,
			max: 1500,
			step: 1,
			value: 10,
			orientation: "horizontal",
			slide: function(event, ui) {
				$("#personen").val(ui.value);
				$("#sumpersonen").html(": " + ui.value + " personen");
			},
			change: function(event, ui) {
				updatePrice();
			}
		});
		$("#personen").val($("#sliderpersonen").slider("value"));
}

function insertDatumTijd()
{
	$("#slideruur").slider({
			range: "max",
			min: 1,
			max: 24,
			step: 1,
			value: 1,
			orientation: "horizontal",
			slide: function(event, ui) {
				var uurtekst = (Math.round(ui.value) / 2);

				$("#uur").val((Math.round(ui.value) / 2));
				$("#sumuur").html(": " + uurtekst + " uur");
			},
			change: function(event, ui) {
				updatePrice();
			}
		});
		$("#uur").val($("#slideruur").slider("value"));

	$("#date").datepicker({
		dateFormat: 'DD d MM yy',
		monthNames: ['januari','februari','maart','april','mei','juni','juli','augustus','september','oktober','november','december'],
		dayNames: ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'],
		dayNamesShort: ['Zon', 'Ma', 'Di', 'Wo', 'Do', 'Vr', 'Za'],
		dayNamesMin: ['Zon', 'Ma', 'Di', 'Wo', 'Do', 'Vr', 'Za'],
		onSelect: function(dateText) {
			$("#datum").val(dateText);
			$("#sumdatum").html(": " + dateText);
		}
	});
}

function setSoort(val)
{
	$("#sumsoort").html(": " + val);
}

function setBtw(val)
{
	if(val=="incl")
	{
		$("#sumbtw").html(": inclusief BTW");
		$(".btwIncl").show();
		$(".btwExcl").hide();

		$("#bedrijf").fadeOut('slow');
	}
	else {
		$("#sumbtw").html(": exclusief BTW");
		$(".btwIncl").hide();
		$(".btwExcl").show();

		$("#bedrijf").fadeIn('slow');
		$("#bedrijf").css('display','block');
	}
	updatePrice();
}

function showCat(nr)
{
	$("#navprev").slideUp();
	$("#navnext").slideUp();
	for(x in cat)
	{
		$("#"+cat[x]).hide();
		$("#catli"+x).removeClass('sel');
	}
	$("#"+cat[nr]).show('slow');
	$("#catli"+nr).addClass("sel");

	if(nr==cat.length-1) { $("#navnext").slideUp() } else { $("#navnext").slideDown() };
	if(nr==0) { $("#navprev").slideUp() } else { $("#navprev").slideDown() };

	lastCat = nr;
}

function showItem(val)
{
	$.post("/offerte.ajax.php?action=beschrijving", { id: val }, function(result) {
		$("#iteminfo"+val).html(result).toggle('slow', function () {
			$("#iteminfo"+val+ " .afbeelding a").slimbox({ counterText: "Afbeelding {x} van {y}" });
		});
	});
}

function addItem(box, val)
{
	if(box.checked)
	{
		var error = "";

		var personen = $("#sumpersonen").html();
		var uur = $("#sumuur").html();

		if(personen.length==0) error += "&middot; Aantal personen<br>";
		if(uur.length==0) error += "&middot; Aantal uur<br>";
		
		if(error.length>0)
		{
			box.checked = false;
			$("#error").attr('title', 'Tussentijdse prijsberekening');
			$("#error").html('Vul eerst de volgende velden in:<br>' + error + 'Zie de categorie onder categorie \'Over uw feest\'.');
			$("#error").dialog({ modal: true, buttons: { "Ok": function() { $(this).dialog("close"); } } });
			$("#error").dialog('open');
			$("#error").show();
		}
		else {
			$("#item"+val).addClass('sel');
			$("#item"+val).effect('transfer',{ to: "#result" }, 1000);
		}
	}
	else {
		$("#item"+val).removeClass('sel');
	}
	updatePrice();
}

function validateOfferte()
{
	var error = "";
	
	var personen = $("#sumpersonen").html();
	var soortfeest = $("#sumsoort").html();
	var datum = $("#sumdatum").html();
	var uur = $("#sumuur").html();
	var btw = $("input[@name='btw']:checked").val();
	
	var bedrijfsnaam = $("#bedrijfsnaam").val();
	var naam = $("#naam").val();
	var adres = $("#adres").val();
	var postcode1 = $("#postcode1").val();
	var postcode2 = $("#postcode2").val();
	var plaats = $("#plaats").val();
	var telefoon = $("#telefoon").val();
	var email = $("#email").val();
	
	var checked = $(".item :checked").size();

	if(personen.length==0) error += "&middot; Aantal personen is niet ingevuld<br>";
	if(soortfeest.length==0) error += "&middot; Soort feest is niet ingevuld<br>";
	if(datum.length==0) error += "&middot; Datum is niet gekozen<br>";
	if(uur.length==0) error += "&middot; Aantal uur is niet ingevuld<br>";
	if(btw=="excl")
	{
		if(bedrijfsnaam.length==0) error += "&middot; Geen bedrijfsnaam ingevuld<br>";
	}
	if(naam.length==0) error += "&middot; Geen naam ingevuld<br>";
	if(adres.length==0) error += "&middot; Geen adres ingevuld<br>";
	if(postcode1.length<4 || postcode2.length<2) error += "&middot; Geen geldig postcode ingevuld<br>";
	if(plaats.length==0) error += "&middot; Geen plaatsnaam ingevuld<br>";
	if(telefoon.length==0) error += "&middot; Geen telefoonnummer ingevuld<br>";
	if(email.length==0) error += "&middot; Geen e-mailadres ingevuld<br>";
	if(checked==0) error += "&middot; Geen items aangevinkt<br>";
	
	if(error.length>0)
	{
		$("#error").attr('title', 'Niet alle velden zijn ingevuld');
		$("#error").html('De volgende fouten zijn nog gevonden:<br>' + error);
		$("#error").dialog({ modal: true, buttons: { "Ok": function() { $(this).dialog("close"); } } });
		$("#error").dialog('open');
		$("#error").show();
	}
	else {
		$("#form").submit();
	}
}

function updatePrice()
{
	$("#result").fadeOut();
	var data = $("form").serialize();
	$.post("/offerte.ajax.php?action=berekening", data,
	function(data){
		$("#result").html(data);
		$("#result").fadeIn();
	});
}
