addLoadEvent(domToegangAanvragen);

function domToegangAanvragen() {
	var frmToegangAanvragen = document.getElementById("formToegangAanvragen");
	if(frmToegangAanvragen) {
		frmToegangAanvragen.onsubmit = function () {
			return validateToegangAanvragen(this);
		}
		frmToegangAanvragen.beroep.onchange = function () {
			if (this.value == "G" || this.value == "E") {
				document.getElementById("functie_span").innerHTML = "*";
			}
			else {
				document.getElementById("functie_span").innerHTML = "";
			}
			if (this.value == "G") {
				document.getElementById("aantal_gso_span").innerHTML = "*";
			}
			else {
				document.getElementById("aantal_gso_span").innerHTML = "";
			}
		}
	}
	var step1ToegangAanvragen = document.getElementById("step1ToegangAanvragen");
	if(step1ToegangAanvragen) {
		step1ToegangAanvragen.onsubmit = function () {
			return validateStep1ToegangAanvragen(this);
		}
	}
}

function validateStep1ToegangAanvragen(theForm) {
	var msg = "";
	var error = 0;
	
	if (theForm.naam.value == "") {
		msg += "\n- naam";
		error ++;
	}
	if (theForm.voornaam.value == "") {
		msg += "\n- voornaam";
		error ++;
	}
	if (theForm.geboortedatum_dag.value == "" || theForm.geboortedatum_maand.value == "" || theForm.geboortedatum_jaar.value == ""){
		msg += "\n- geboortedatum"
	}
	if (error) {
		alert("Volgende velden zijn verplicht in te vullen: " + msg);
		return false;
	}	

	if (!validate_date(theForm.geboortedatum_dag.value, theForm.geboortedatum_maand.value, theForm.geboortedatum_jaar.value)) {
		alert("Gelieve een geldige geboortedatum in te geven.");
		return false;
	}
	return true
}

function validateToegangAanvragen(theForm) {
	var msg = "";
	var error = 0;
	
	if (theForm.vgebrnaam.value == "") {
		msg += "\n- login";
		error ++;
	}
	if (theForm.vpaswoord.value == "") {
		msg += "\n- paswoord";
		error ++;
	}
	if (theForm.naam.value == "") {
		msg += "\n- naam";
		error ++;
	}
	if (theForm.voornaam.value == "") {
		msg += "\n- voornaam";
		error ++;
	}
	if (theForm.beroep.value == "") {
		msg += "\n- beroep";
		error ++;
	}
	if (theForm.geboortedatum_dag.value == "" || theForm.geboortedatum_maand.value == "" || theForm.geboortedatum_jaar.value == ""){
		msg += "\n- geboortedatum"
	}
	if (theForm.pemail.value == "") {
		msg += "\n- email";
		error ++;
	}
	if (theForm.functie.value == "" && (theForm.beroep.value == "G" || theForm.beroep.value == "E")) {
		msg += "\n- functie";
		error ++;
	}
	if (theForm.aantal_gso.value == "" && theForm.beroep.value == "G") {
		msg += "\n- aantal GSO";
		error ++;
	}
	if (error) {
		alert("Volgende velden zijn verplicht in te vullen: " + msg);
		return false;
	}	

	if (!validateEmail(theForm.pemail.value)) {
		alert("Gelieve een geldig e-mail adres in te geven. (Privaat)");
		return false;
	}
	if (!validateEmail(theForm.cemail.value)) {
		alert("Gelieve een geldig e-mail adres in te geven. (Consultatie)");
		return false;
	}
	if (!validateEmail(theForm.kemail.value)) {
		alert("Gelieve een geldig e-mail adres in te geven. (Kliniek)");
		return false;
	}
	if (!validate_date(theForm.geboortedatum_dag.value, theForm.geboortedatum_maand.value, theForm.geboortedatum_jaar.value)) {
		alert("Gelieve een geldige geboortedatum in te geven.");
		return false;
	}
	
	if (theForm.new_foto.value!="") {
		var test = theForm.new_foto.value + "#";
		if(test.indexOf(".jpg#") < 0 && test.indexOf(".JPG#") < 0 && test.indexOf(".gif#") < 0 && test.indexOf(".GIF#") < 0) {
				alert("Gelieve een JPG of GIF bestand op te laden als beeld.");	
				return false;
			}
	}	
	return true
}
function validateEmail(email) {
	
	if (email != null && email != "") {
		a = email.lastIndexOf("@");
		b = email.lastIndexOf(".");
		c = email.indexOf(":");
		d = email.indexOf("/");
		e = email.substring(0,a);
		f = e.indexOf("@");
		g = email.substring(a+1,email.length);
		h = g.indexOf("[");
		i = g.indexOf("]");
		j = g.indexOf("<");
		k = g.indexOf(">");
		l = email.substring(a+1,b);
		m = email.substring(b+1,email.length);
		n = email.substring(0,a);
		p = email.indexOf("'");
		q = email.indexOf("\"");
		o = 0;
		if (a > b) {o++};
		if (c != -1) {o++};
		if (d != -1) {o++};
		if (f != -1) {o++};
		if (h != -1) {o++};
		if (i != -1) {o++};
		if (j != -1) {o++};
		if (k != -1) {o++};
		if (l.length < 3) {o++};
		if (m.length < 2) {o++};
		if (n.length < 1) {o++};
		if (p != -1) {o++};
		if (q != -1) {o++};
		if (o != 0) {
			return false;
		}
	}
	return true;
}

function validate_date(day,month,year) {
	var error = 0;
	
	if (isNaN(day) || isNaN(month) || isNaN(year)) {
		error++;
	}
	if(year < 1800) {
		error++;
	}
	if(month < 1 || month > 12) {
		error++;
	}
	if(day < 1 || day > 31) {
		error++;
	}

	if(((month==4)||(month==6)||(month==9)||(month==11))&&(day > 30)) {
		error++;
	}
	if(((month==1)||(month==3)||(month==5)||(month==7)||(month==8)||(month==10)||(month==12))&&(day > 31)) {
		error++;
	}
	if(month==2) {
		var schrikkeljaar = false;
		if ((year % 4 == 0) ^ (year % 100 == 0) ^ (year % 400 == 0)) {
			 schrikkeljaar = true;
		}
		if ((schrikkeljaar == false)&&(day>28)) {
			error++;
		}
		if ((schrikkeljaar == true)&&(day>29)) {
			error++;
		}
	}	
	if (error > 0) {
		return false;
	}else{
		return true;
	}
}
