﻿var veld_kleur 			= "#ffffff";
var tekst_kleur			= "#000000";
var rand_kleur			= "#646464";

var veld_kleur_fout		= "#fff6f6";
var tekst_kleur_fout	= "#a00000";
var rand_kleur_fout		= "#a00000";

var veld_kleur_select	= "#ebf0f4";
var tekst_kleur_select	= "#000000";
var rand_kleur_select	= "#000000";

var missingvalues = -1;
var numberattempt = 0;

function sendData(mailform) {
	if (mailform == undefined || mailform == "") {
		mailform = 'mailform';
	}
	var formtosubmit = document.getElementById(mailform);

	missingvalues = -1;
	for (i = 0; i < formtosubmit.length; i++) {
		veld = formtosubmit.elements[i];
		if (isInvoerVeld(veld)) {
			testVeld(veld);
		}
	}
	if (missingvalues == -1) {
		formtosubmit.submit();
		
	} else {
		numberattempt++;
		if (numberattempt > 4) {
			location.href = "?function=fout";
		} else {
			alert('Let op, niet alle verplichte velden zijn ingevuld.');
		}
	}
}

function resetData(mailform) {
	if (mailform == undefined || mailform == "") {
		mailform = 'mailform';
	}
	var formtosubmit = document.getElementById(mailform);
	
	for (i = 0; i < formtosubmit.length; i++) {
		veld = formtosubmit.elements[i];
		if (isInvoerVeld(veld)) {
			if (veld.name.indexOf("_n") != -1 || 
				veld.name.indexOf("_v") != -1 ||
				veld.name.indexOf("_e") != -1
			) {
				goed(veld);
			}
		}
	}
	formtosubmit.reset();
}

//	veld testen
function testVeld(veld) {
	if (veld.name.indexOf("_n") != -1 && veld.name.indexOf("_v") != -1) {
		if (testV(veld) != "fout") 					testN(veld);
	} else if (veld.name.indexOf("_e") != -1 && veld.name.indexOf("_v") != -1) {
		if (testV(veld) != "fout") 					testE(veld);
	} else if (veld.name.indexOf("_e") != -1 && veld.name.indexOf("_n") != -1) {
		if (testE(veld) != "fout") 					testN(veld);
	} else if (veld.name.indexOf("_e") != -1) 		testE(veld);
	  else if (veld.name.indexOf("_v") != -1) 		testV(veld);
	  else if (veld.name.indexOf("_n") != -1) 		testN(veld);
	  else 											goed(veld);
}

//	veld testen op email
function testE(veld) {
	var tekst = veld.value;
	if (tekst != "") {
		if (tekst.indexOf("@") != -1 &&
			tekst.indexOf(".") != -1 &&
			tekst.length > 4
		) {
				goed(veld);
		} else 	fout(veld);
	} else 		goed(veld);
}

//	veld testen op nummer
function testN(veld) {
	var tekst = veld.value;
	var vervangen = new Array(' ', '-', '+', '(', ')');	
	
	for (var i = 0; i < vervangen.length; i++)	{
		tekst = tekst.split(vervangen[i]);
		tekst = tekst.join("");
	}
	
	if (tekst.length == 0)	goed(veld);
	else if (isNaN(tekst))	fout(veld);
	else 					goed(veld);
}

//	veld testen op waarde
function testV(veld) {
	var tekst = veld.value;
		tekst = tekst.split(" ");
		tekst = tekst.join("");
	
	if (tekst == "") {
			fout(veld);
			return "fout";
	} else 	goed(veld);
}

//	alle velden instellen
function zetVelden(form_str) {
	
	forms = (form_str == undefined || form_str == '') ? 'mailform' : form_str;
	forms = forms.split(' ');
	forms = forms.join(',');
	for (var i = 0; i < 10; i++) {
		forms = forms.split(',,');
		forms = forms.join(',');
	}
	forms = forms.split(',');
	
	for (var j = 0; j < forms.length; j++) {
		var form = document.getElementById(forms[j]);
		for (var i = 0; i < form.length; i++) {
			var veld = form.elements[i];
			if (isInvoerVeld(veld)) {
				if (veld.name.indexOf("_n") != -1 || 
					veld.name.indexOf("_v") != -1 ||
					veld.name.indexOf("_e") != -1
				) {
					veld.onblur 	= function() 	{	testVeld(this);		}
				
				} else {
					veld.onblur 	= function() 	{	goed(this);			}
				}
					veld.onselect 	= function() 	{	selectVeld(this);	}
					veld.onfocus 	= function() 	{	selectVeld(this);	}
			}
		}
	}
}

//	veld selecteren
function selectVeld(veld) {
	veld.style.color 			= tekst_kleur_select;
	veld.style.backgroundColor 	= veld_kleur_select;
	veld.style.borderColor	 	= rand_kleur_select;
}

//	veld goedkeuren
function goed(veld) {
	veld.style.backgroundColor 	= veld_kleur;
	veld.style.color 			= tekst_kleur;
	veld.style.borderColor	 	= rand_kleur;
}

//	veld niet goedkeuren
function fout(veld) {
	veld.style.color			= tekst_kleur_fout;
	veld.style.backgroundColor 	= veld_kleur_fout;
	veld.style.borderColor	 	= rand_kleur_fout;
	missingvalues 				= 1;
}

//	of t een invoerveld is
function isInvoerVeld(veld) {
	if (isFieldSet(veld)) 			return false;
	if (veld.name == 'bottrap') 	return false;
	if (veld.type == 'text')		return true;
	if (veld.type == 'textarea') 	return true;
	
	return false;
}

//	een fieldset gooit roet in het eten...
function isFieldSet(veld) {
	if (veld.id.indexOf("_fs") == -1) return false;
	return true;
}
