/*
	file:			inc/functions.js
	author:			Jonathan Nelisse
	created:		02-09-2007
	last-edited:	28-02-2010
*/

function validateForm(bla) {
	
	//check of Naam leeg is
	frm = document.getElementById('form1');
	if (frm.elements['naam'].value == "") {
		alert("Je hebt je naam niet ingevuld.");
		frm.elements['naam'].focus();
		return(false);
	}
	
	//check of Email leeg is
	if (frm.elements['home'].value == "") {
		alert("Je hebt je e-mailadres niet ingevuld.");
		frm.elements['home'].focus();
		return(false);
	}
	
	//check of Email juist is
	if (!checkEmail(frm.elements['home'].value)) {
		alert("Het e-mailadres dat je ingevoerd hebt, is niet geldig.");
		frm.elements['home'].focus();
		return(false);
	}
	
	//check of Opmerking leeg is
	if (frm.elements['beri'].value == "") {
		alert("Je hebt geen bericht ingevuld.");
		frm.elements['beri'].focus();
		return(false);
	}

	// voeg uniek id toe
	frm.elements['unique'].value = bla;
}

function validateSponsorForm(bla) {
	
	//check of Bedrijfsnaam leeg is
	frm = document.getElementById('form1');
	if (frm.elements['naam_bedrijf'].value == "") {
		alert("U heeft geen bedrijfsnaam ingevuld.");
		frm.elements['naam_bedrijf'].focus();
		return(false);
	}
	
	//check of Contactpersoon naam of voorletters leeg zijn
	frm = document.getElementById('form1');
	if (frm.elements['naam_contactpersoon'].value == "" || frm.elements['voorletters'].value == "") {
		alert("U heeft de naam van de contactpersoon niet volledig ingevuld.");
		frm.elements['naam_contactpersoon'].focus();
		return(false);
	}

	//check of Email leeg is
	if (frm.elements['email'].value == "") {
		alert("U heeft geen e-mailadres ingevuld.");
		frm.elements['email'].focus();
		return(false);
	}
	
	//check of Email juist is
	if (!checkEmail(frm.elements['email'].value)) {
		alert("Het e-mailadres dat u ingevoerd heeft, is niet geldig.");
		frm.elements['email'].focus();
		return(false);
	}
	
	//check of een van de checkboxen is aangevinkt
	if (frm.elements['brochure'].checked == false && frm.elements['contact'].checked == false) {
		alert("U dient minstens 1 van de contact opties aan te vinken.");
		frm.elements['brochure'].focus();
		return(false);
	}
	
	//if brochure box is aangevinkt, check of adres is ingevuld
	if (frm.elements['brochure'].checked == true) {
		if (frm.elements['adres'].value == "" || frm.elements['postcode'].value == "" || frm.elements['plaats'].value == "") {
			alert("U heeft geen volledig adres ingevuld.");
			frm.elements['adres'].focus();
			return(false);
		}
	}
	
	//if contact box is aangevinkt, check of bericht is ingevuld
	if (frm.elements['contact'].checked == true) {
		if (frm.elements['beri'].value == "") {
			alert("U heeft geen bericht ingevuld.");
			frm.elements['beri'].focus();
			return(false);
		}
		// check ook type contact
		if (frm.elements['hoe_contact'].value == "per_telefoon") {
			if (frm.elements['telefoonnummer'].value == "") {
				alert("U heeft geen telefoonnummer ingevuld.");
				frm.elements['telefoonnummer'].focus();
				return(false);
			} else {
				var telnr = frm.elements['telefoonnummer'].value;
				var d;
				if (telnr.length == 10) {
					if (Number(telnr) == "NaN" || Number(telnr).toString().length != 9 || telnr.substr(0,1) != "0") {
						alert("U heeft geen geldig telefoonnummer ingevuld. (0123456789)");
						frm.elements['telefoonnummer'].focus();
						return(false);
					}
				} else {
					alert("U heeft geen geldig telefoonnummer ingevuld. (0123456789)");
					frm.elements['telefoonnummer'].focus();
					return(false);
				}
			}
		}
		if (frm.elements['hoe_contact'].value == "per_post") {
			if (frm.elements['adres'].value == "" || frm.elements['postcode'].value == "" || frm.elements['plaats'].value == "") {
				alert("U heeft geen volledig adres ingevuld.");
				frm.elements['adres'].focus();
				return(false);
			}
		}
		if (frm.elements['hoe_contact'].value == "geen_voorkeur") {
			if ((!(frm.elements['adres'].value == "" && frm.elements['postcode'].value == "" && frm.elements['plaats'].value == "")) &&
				(!(frm.elements['adres'].value != "" && frm.elements['postcode'].value != "" && frm.elements['plaats'].value != ""))) {
				alert("U heeft geen volledig adres ingevuld.");
				frm.elements['adres'].focus();
				return(false);
			}
			if (frm.elements['telefoonnummer'].value != "") {
				var telnr = frm.elements['telefoonnummer'].value;
				var d;
				if (telnr.length == 10) {
					if (Number(telnr) == "NaN" || Number(telnr).toString().length != 9 || telnr.substr(0,1) != "0") {
						alert("U heeft geen geldig telefoonnummer ingevuld. (0123456789)");
						frm.elements['telefoonnummer'].focus();
						return(false);
					}
				} else {
					alert("U heeft geen geldig telefoonnummer ingevuld. (0123456789)");
					frm.elements['telefoonnummer'].focus();
					return(false);
				}
			}
		}
	}

	// voeg uniek id toe
	frm.elements['unique'].value = bla;
}

// deze functie controleert de juistheid van het e-mailadres op meerdere punten
function checkEmail(emailAddress) {
	var foundAtSymbol = 0;
	var foundDot = 0;
	var md;
	// Go through each character in the email address.
	for (var x=0; x<emailAddress.length - 1; x++) {
		md = emailAddress.substr(x, 1);
		// Is the character an @ symbol?
		if (md == '@') foundAtSymbol++;
		// Count how many dots there are after the @ symbol.
		if (md == '.' && foundAtSymbol == 1) foundDot++;
	}
	// Is there only one @ symbol, and are there more than one dots?
	if (foundDot > 0 && foundAtSymbol == 1) {
		return true;
	} else {
		return false;
	}
}

// functie ten behoeve van focus op login veld
function setFocus() {
	x = document.getElementById("login_gebruiker");
	if (x) {
		x.focus();
	}
}

// functies ten behoeve van de activiteiten van Ichthus Landelijk
function AssignPosition(d) {
	var ddd = document.getElementById("IL");
	var dd = ddd.getElementsByTagName("a");
	for (var e=0; e < dd.length - 1; e++) {
		if (dd[e].className == d.id) {
			break;
		}
	}
	d.style.left = ddd.clientWidth + "px";
	var afstand = ddd.offsetTop;
	if (0 < (dd[e].offsetTop - ddd.offsetTop) && (dd[e].offsetTop - ddd.offsetTop) < dd[e].offsetTop) {
		afstand = (afstand + (dd[e].offsetTop - ddd.offsetTop) - 26);
	} else {
		afstand = (afstand + dd[e].offsetTop);
	}
	d.style.top = (afstand + 40) + "px";
}

function ReverseContentDisplay(d) {
	if(d.length < 1) {
		return; 
	}
    var dd = document.getElementById(d);

    if(dd.style.display == "block") { 
	    dd.style.display = "none"; 
	} else { 
		dd.style.display = "block"; 
	}
    AssignPosition(dd);
}
