function checkFormAlgemeen(opstap)
{
	if (document.getElementById('vertrekdatum').value == "")
	{
		alert('Op welke datum wilt u vertrekken?');
		document.getElementById('vertrekdatum').focus();
		return false;
	}
	if (document.getElementById('aantal_personen').value < 1)
	{
		alert('Met hoeveel personen wilt u op reis?');
		document.getElementById('aantal_personen').focus();
		return false;
	}
	if (document.getElementById('aantal_personen').value != (2 * parseInt(document.getElementById('kamer_2pers').value) + parseInt(document.getElementById('kamer_1pers').value)))
	{
		alert('Het aantal personen komt niet overeen met de kamerindeling');
		document.getElementById('aantal_personen').focus();
		return false;
	}
	if (opstap == "op")
	{
    if (document.getElementById('opstapplaats').value == "")
		{
			alert('Waar wilt u opstappen?');
			document.getElementById('opstapplaats').focus();
			return false;
		}
	}
	extras = document.getElementById('tbl_extra').rows;

	for (i = 0; i < extras.length; i++)
	{
		extra = extras[i].cells[2].children[0];
		if (extra.value > document.getElementById('aantal_personen').value && extra.value != 'all') {
			alert("U kunt niet meer dan " + document.getElementById('aantal_personen').value + " perso(o)n(en) boeken voor de extra's");
			extra.focus();
			return false;
		}
	}

	document.getElementById('bookForm').action='/custom/includes/boeking.inc.php';
	document.getElementById('bookForm').submit();
}

function checkFormReizigers(kamers_1pers_aantal, kamers_2pers_aantal)
{
	personen = document.getElementById('tbl_personen').rows;
	for (i = 0; i < personen.length; i++)
	{
		persoon = personen[i].cells[0].children[0];

		voorletters = persoon.rows[2].cells[2].children[0];
		if (voorletters.value == "")
		{
			alert('Vul svp de voorletters in');
			voorletters.focus();
			return false;
		}

		voornaam = persoon.rows[3].cells[2].children[0];
		if (voornaam.value == "")
		{
			alert('Vul svp de voornaam in');
			voornaam.focus();
			return false;
		}

		achternaam = persoon.rows[4].cells[2].children[0];
		if (achternaam.value == "")
		{
			alert('Vul svp de achternaam in');
			achternaam.focus();
			return false;
		}

		geboortedag = persoon.rows[5].cells[2].children[0].value;
		geboortemaand = persoon.rows[5].cells[2].children[1].value;
		geboortejaar = persoon.rows[5].cells[2].children[2].value;
		if (!isDate(geboortedag, geboortemaand, geboortejaar))
		{
			alert('De geboortedatum is geen geldige datum');
			geboortedag.focus();
			return false;
		}
		if (kamers_1pers_aantal > 0 && kamers_2pers_aantal > 0)
		{
			if (persoon.rows[6].cells[0].children[0].checked == true)
			{
				kamers_1pers_aantal--;
			}
		}
	}
	if (kamers_1pers_aantal > 0 && kamers_2pers_aantal > 0)
	{
		alert('Kamerverdeling klopt niet');
		return false;
	}
	document.forms('bookForm').action='/custom/includes/boeking.inc.php';
	document.forms('bookForm').submit();
}

function checkFormPrijsoverzicht()
{
	document.forms('bookForm').action='/custom/includes/boeking.inc.php';
	document.forms('bookForm').submit();
}

function checkFormAdresgegevens()
{
	if (document.getElementById('voorletters').value == "")
	{
		alert('Vul svp de voorletters in');
		document.getElementById('voorletters').focus();
		return false;
	}
	if (document.getElementById('achternaam').value == "")
	{
		alert('Vul svp de achternaam in');
		document.getElementById('achternaam').focus();
		return false;
	}
	if (document.getElementById('adres').value == "")
	{
		alert('Vul svp het adres in');
		document.getElementById('adres').focus();
		return false;
	}
	if (document.getElementById('postcode').value == "")
	{
		alert('Vul svp de postcode in');
		document.getElementById('postcode').focus();
		return false;
	}
	if (document.getElementById('plaats').value == "")
	{
		alert('Vul svp de woonplaats in');
		document.getElementById('plaats').focus();
		return false;
	}
	if (document.getElementById('emailadres').value == "")
	{
		alert('Vul svp een emailadres in');
		document.getElementById('emailadres').focus();
		return false;
	}
	if (document.getElementById('telefoon').value == "" && document.getElementById('mobiel').value == "")
	{
		alert('Vul svp een telefoonnummer in waar we de hoofdboeker kunnen bereiken');
		document.getElementById('telefoon').focus();
		return false;
	}
	document.forms('bookForm').action='/custom/includes/boeking.inc.php';
	document.forms('bookForm').submit();
}

function checkFormOverzicht()
{
	if (!document.getElementById('voorwaarden').checked)
	{
		alert('U dient de algemene voorwaarden te accepteren');
		document.getElementById('voorwaarden').focus();
		return false;
	}
	document.forms('bookForm').action='/custom/verstuur.php';
	document.forms('bookForm').submit();
}

var dtCh= "/";
var maxYear = new Date().getFullYear();
var minYear = maxYear - 100;

function kortingBerekenen(){
	document.forms('bookForm').action='/custom/includes/boeking.inc.php';
	document.forms('bookForm').submit();
}
function isInteger(s){
	if (s % 1 == 0 && parseInt(s) == s)
	{
    return true;
	}
}

function daysInFebruary (year){
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}

function daysInMonth(n, year) {
		_this = 31;
		if (n == 4 || n == 6 || n == 9 || n == 11)
		{
			_this = 30;
		}
		else if (n == 2)
		{
			_this = daysInFebruary (year);
		}
   return _this;
}

function isDate(day, month, year){
	if (day > daysInMonth[month])
	{
		return false;
	}
	if (!isInteger(year) || year < minYear || year > maxYear)
	{
		return false;
	}
	return true;
}

function swapAnnVerz(id, bedrag, poliskosten, poliskosten_reisverz)
{
    id = "annverz" + id;
	if (document.getElementById(id).innerHTML == "")
	{
		document.getElementById(id).innerHTML = "&euro;&nbsp;" + number_format(bedrag, 2, ",", ".");
		if (annverz_personen == 0)
		{
			document.getElementById("av_poliskop").innerHTML = "Poliskosten annuleringsverzekering";
			document.getElementById("av_polisbedrag").innerHTML = "&euro;&nbsp;" + number_format(poliskosten, 2, ",", ".");
			totaal = totaal + poliskosten;
            document.getElementById("av_polis").style.display = "block";
			if (reisverz_personen > 0)
            {
                totaal = totaal - poliskosten_reisverz;
                document.getElementById("rv_polis").style.display = "none";
            }
		}
		annverz_personen++;
		totaal = totaal + bedrag;
		document.getElementById("totaal").innerHTML = "<strong>&euro;&nbsp;" + number_format(totaal, 2, ",", ".") + "</strong>";
	}
	else
	{
		document.getElementById(id).innerHTML = "";
		annverz_personen--;
		if (annverz_personen == 0)
		{
			document.getElementById("av_poliskop").innerHTML = "";
			document.getElementById("av_polisbedrag").innerHTML = "";
            totaal = totaal - poliskosten;
            document.getElementById("av_polis").style.display = "none";
			if (reisverz_personen > 0)
            {
                totaal = totaal + poliskosten_reisverz;
                document.getElementById("rv_polis").style.display = "block";
            }
		}
		totaal = totaal - bedrag;
		document.getElementById("totaal").innerHTML = "<strong>&euro;&nbsp;" + number_format(totaal, 2, ",", ".") + "</strong>";
	}
}

function swapReisVerz(id, bedrag, poliskosten)
{
	id = "reisverz" + id;
	if (document.getElementById(id).innerHTML == "")
	{
		document.getElementById(id).innerHTML = "&euro;&nbsp;" + number_format(bedrag, 2, ",", ".");
		if (reisverz_personen == 0)
		{
			document.getElementById("rv_poliskop").innerHTML = "Poliskosten reisverzekering";
			document.getElementById("rv_polisbedrag").innerHTML = "&euro;&nbsp;" + number_format(poliskosten, 2, ",", ".");
			if (document.getElementById("av_polis").style.display == "none")
            {
                totaal = totaal + poliskosten;
                document.getElementById("rv_polis").style.display = "block";
            }
		}
		reisverz_personen++;
		totaal = totaal + bedrag;
		document.getElementById("totaal").innerHTML = "<strong>&euro;&nbsp;" + number_format(totaal, 2, ",", ".") + "</strong>";
	}
	else
	{
		document.getElementById(id).innerHTML = "";
		reisverz_personen--;
		if (reisverz_personen == 0)
		{
			document.getElementById("rv_poliskop").innerHTML = "";
			document.getElementById("rv_polisbedrag").innerHTML = "";
			if (document.getElementById("av_polis").style.display == "none")
            {
                totaal = totaal - poliskosten;
                document.getElementById("rv_polis").style.display = "none";
            }
		}
		totaal = totaal - bedrag;
		document.getElementById("totaal").innerHTML = "<strong>&euro;&nbsp;" + number_format(totaal, 2, ",", ".") + "</strong>";
	}
}

function number_format(number, decimals, dec_point, thousands_sep)
{
	var n = number, c = isNaN(decimals = Math.abs(decimals)) ? 2 : decimals;
	var d = dec_point == undefined ? "," : dec_point;
	var t = thousands_sep == undefined ? "." : thousands_sep, s = n < 0 ? "-" : "";
	var i = parseInt(n = Math.abs(+n || 0).toFixed(c)) + "", j = (j = i.length) > 3 ? j % 3 : 0;
	return s + (j ? i.substr(0, j) + t : "") + i.substr(j).replace(/(\d{3})(?=\d)/g, "$1" + t) + (c ? d + Math.abs(n - i).toFixed(c).slice(2) : "");
}

