//
// Dit bestand wordt gebruikt voor zowel www.sportwijzer.com als voor www.recreatiewerksportwijzer.nl!!!
// Wijzigingen dienen dan ook op beide websites geupload te worden.
// Plaats dit bestand niet lokaal op het netwerk onder account www.sportwijzer.com.
// 

var foutInDezeRun;
// Validatie van formulier "Formulier aanvraag brochure sportwijzer.com" van www.sportwijzer.com
function controleerFormulierAanvraagBrochure(formulier)
{
	foutInDezeRun = false;

	controleerVeld(formulier.elements.Naam,"");
	controleerVeld(formulier.elements.Voorletters,"");
	controleerVeld(formulier.elements.Adres,"");
	controleerVeld(formulier.elements.Postcode,"");
	controleerVeld(formulier.elements.Woonplaats,"");

	if (formulier.elements.TelefoonZakelijk.value == "" &&
		formulier.elements.TelefoonPrive.value == "" &&
		formulier.elements.TelefoonMobiel.value == "") {
		
		//document.getElementById("Telefoonnummer").className = 'foutMarkerOn';
		formulier.elements.TelefoonZakelijk.className = 'veldFout';
		formulier.elements.TelefoonPrive.className = 'veldFout';
		formulier.elements.TelefoonMobiel.className = 'veldFout';
		
		foutInDezeRun = true;
	} else {
		//document.getElementById("Telefoonnummer").className = 'foutMarkerOff';
		formulier.elements.TelefoonZakelijk.className = 'veld';
		formulier.elements.TelefoonPrive.className = 'veld';
		formulier.elements.TelefoonMobiel.className = 'veld';
	}
	
	controleerVeld(formulier.elements.Email,"^[^@]+@[^@]+.[a-z]{2,}$");
	controleerVeld(formulier.elements.GeinteresseerdIn,"");
	controleerVeld(formulier.elements.Referentie,"");
	
	if (foutInDezeRun)
	{
		getChildElementById(formulier, "meldingFormulierAanvraagBrochure").style.display = 'block';
		return (false);
	} else {
		getChildElementById(formulier, "meldingFormulierAanvraagBrochure").style.display = 'none';
		return (true);
	}
}

// Validatie van formulier "Formulier offerte activiteit sportwijzer.com" van www.sportwijzer.com
function controleerOfferteActiviteiten(formulier)
{
	foutInDezeRun = false;

	controleerVeld(formulier.elements.Naam,"");
	controleerVeld(formulier.elements.Voorletters,"");
	controleerVeld(formulier.elements.Adres,"");
	controleerVeld(formulier.elements.Postcode,"");
	controleerVeld(formulier.elements.Woonplaats,"");
	
	if (formulier.elements.TelefoonZakelijk.value == "" &&
		formulier.elements.TelefoonPrive.value == "" &&
		formulier.elements.TelefoonMobiel.value == "") {
		
		document.getElementById("TelefoonnummerOfferteActiviteiten").className = 'foutMarkerOn';
		formulier.elements.TelefoonZakelijk.className = 'veldFout';
		formulier.elements.TelefoonPrive.className = 'veldFout';
		formulier.elements.TelefoonMobiel.className = 'veldFout';
		
		foutInDezeRun = true;
	} else {
		document.getElementById("TelefoonnummerOfferteActiviteiten").className = 'foutMarkerOff';
		formulier.elements.TelefoonZakelijk.className = 'veld';
		formulier.elements.TelefoonPrive.className = 'veld';
		formulier.elements.TelefoonMobiel.className = 'veld';
	}
	
	controleerVeld(formulier.elements.Email,"^[^@]+@[^@]+.[a-z]{2,}$");
	controleerVeld(formulier.elements.SoortActiviteit,"");
	controleerVeld(formulier.elements.Groepsgrootte,"");
	controleerVeld(formulier.elements.LeeftijdDeelnemers,"");

	if (formulier.elements.HorecaOntvangst.checked == false &&
		formulier.elements.HorecaLunch.checked == false &&
		formulier.elements.HorecaBuffet.checked == false &&
		formulier.elements.HorecaBarbecue.checked == false &&
		formulier.elements.HorecaGeen.checked == false) {
		
		document.getElementById("HorecaOfferteActiviteiten").className = 'foutMarkerOn';
		
		foutInDezeRun = true;
	} else {
		document.getElementById("HorecaOfferteActiviteiten").className = 'foutMarkerOff';
	}
	
	controleerVeld(formulier.elements.BegintijdProgramma,"");
	controleerVeld(formulier.elements.EindtijdProgramma,"");
	
	if (foutInDezeRun)
	{
		getChildElementById(formulier, "meldingOfferteActiviteiten").style.display = 'block';
		return (false);
	} else {
		getChildElementById(formulier, "meldingOfferteActiviteiten").style.display = 'none';
		return (true);
	}
}

// Validatie van formulier "Formulier offerte materiaalverhuur sportwijzer.com" van www.sportwijzer.com
function controleerOfferteMateriaalverhuur(formulier)
{
	foutInDezeRun = false;

	controleerVeld(formulier.elements.Naam,"");
	controleerVeld(formulier.elements.Voorletters,"");
	controleerVeld(formulier.elements.Adres,"");
	controleerVeld(formulier.elements.Postcode,"");
	controleerVeld(formulier.elements.Woonplaats,"");
	
	if (formulier.elements.TelefoonZakelijk.value == "" &&
		formulier.elements.TelefoonPrive.value == "" &&
		formulier.elements.TelefoonMobiel.value == "") {
		
		document.getElementById("TelefoonnummerOfferteMateriaalverhuur").className = 'foutMarkerOn';
		formulier.elements.TelefoonZakelijk.className = 'veldFout';
		formulier.elements.TelefoonPrive.className = 'veldFout';
		formulier.elements.TelefoonMobiel.className = 'veldFout';
		
		foutInDezeRun = true;
	} else {
		document.getElementById("TelefoonnummerOfferteMateriaalverhuur").className = 'foutMarkerOff';
		formulier.elements.TelefoonZakelijk.className = 'veld';
		formulier.elements.TelefoonPrive.className = 'veld';
		formulier.elements.TelefoonMobiel.className = 'veld';
	}
	
	controleerVeld(formulier.elements.Email,"^[^@]+@[^@]+.[a-z]{2,}$");
	controleerVeld(formulier.elements.Referentie,"");
	controleerVeld(formulier.elements.SoortMateriaal,"");
	controleerVeld(formulier.elements.Aantal,"");
	controleerOptionGroup(formulier.elements.Verhuurmogelijkheid, getChildElementById(formulier, "VerhuurmogelijkheidOfferteMateriaalverhuur"));
	controleerVeld(formulier.elements.Locatie,"");
	controleerVeld(formulier.elements.Begindatum,"");
	controleerVeld(formulier.elements.Einddatum,"");

	if (foutInDezeRun)
	{
		getChildElementById(formulier, "meldingOfferteMateriaalverhuur").style.display = 'block';
		return (false);
	} else {
		getChildElementById(formulier, "meldingOfferteMateriaalverhuur").style.display = 'none';
		return (true);
	}
}

// Validatie van formulier "Formulier offerte recreatiewerksportwijzer.nl" van www.recreatiewerksportwijzer.nl
function controleerOfferteFormulier(formulier)
{
	foutInDezeRun = false;
	
	controleerVeld(formulier.elements.Bedrijfsnaam,"");
	controleerVeld(formulier.elements.Contactpersoon,"");
	
	if (formulier.elements.TelefoonWerk.value == "" &&
		formulier.elements.TelefoonMobiel.value == "") {
		
		document.getElementById("Telefoonnummer_error").className = 'foutMarkerOn';
		formulier.elements.TelefoonWerk.className = 'veldFout';
		formulier.elements.TelefoonMobiel.className = 'veldFout';
		
		foutInDezeRun = true;
	} else {
		document.getElementById("Telefoonnummer_error").className = 'foutMarkerOff';
		formulier.elements.TelefoonWerk.className = 'veld';
		formulier.elements.TelefoonMobiel.className = 'veld';
	}
	
	controleerVeld(formulier.elements.Email,"^[^@]+@[^@]+.[a-z]{2,}$");
	
	if (foutInDezeRun)
	{
		getChildElementById(formulier, "melding").style.display = 'block';
		return (false);
	} else {
		getChildElementById(formulier, "melding").style.display = 'none';
		return (true);
	}
}

// Validatie van formulier "Contact formulier recreatiewerksportwijzer.nl" van www.recreatiewerksportwijzer.nl en van www.sportwijzer.com!
function controleerFormulierAanmeldingRecreatiewerk(formulier)
{
	foutInDezeRun = false;

	controleerVeld(formulier.elements.Voornaam,"");
	controleerVeld(formulier.elements.Achternaam,"");
	controleerVeld(formulier.elements.Adres,"");
	controleerVeld(formulier.elements.Postcode,"");
	controleerVeld(formulier.elements.Plaats,"");
	
	if (formulier.elements.Telefoon.value == "" &&
		formulier.elements.Telefoon_mobiel.value == "") {
		
		document.getElementById("TelefoonFormulierAanmeldingRecreatiewerk").className = 'foutMarkerOn';
		formulier.elements.Telefoon.className = 'veldFout';
		formulier.elements.Telefoon_mobiel.className = 'veldFout';
		
		foutInDezeRun = true;
	} else {
		document.getElementById("TelefoonFormulierAanmeldingRecreatiewerk").className = 'foutMarkerOff';
		formulier.elements.Telefoon.className = 'veld';
		formulier.elements.Telefoon_mobiel.className = 'veld';
	}
	
	controleerVeld(formulier.elements.Email,"^[^@]+@[^@]+.[a-z]{2,}$");
	controleerVeld(formulier.elements.Opleiding,"");
	controleerVeld(formulier.elements.Opmerkingen,"");
	
	if (foutInDezeRun)
	{
		getChildElementById(formulier, "meldingFormulierAanmeldingRecreatiewerk").style.display = 'block';
		return (false);
	} else {
		getChildElementById(formulier, "meldingFormulierAanmeldingRecreatiewerk").style.display = 'none';
		return (true);
	}
}

// Validatie van formulier "Contact formulier sportwijzer.com" van www.sportwijzer.com
function controleerContactformulier(formulier)
{
	foutInDezeRun = false;
	
	controleerVeld(formulier.elements.Naam,"");
	controleerVeld(formulier.elements.Voorletters,"");
	
	if (formulier.elements.TelefoonZakelijk.value == "" &&
		formulier.elements.TelefoonPrive.value == "" &&
		formulier.elements.TelefoonMobiel.value == "") {
		
		document.getElementById("Telefoonnummer").className = 'foutMarkerOn';
		formulier.elements.TelefoonZakelijk.className = 'veldFout';
		formulier.elements.TelefoonPrive.className = 'veldFout';
		formulier.elements.TelefoonMobiel.className = 'veldFout';
		
		foutInDezeRun = true;
	} else {
		document.getElementById("Telefoonnummer").className = 'foutMarkerOff';
		formulier.elements.TelefoonZakelijk.className = 'veld';
		formulier.elements.TelefoonPrive.className = 'veld';
		formulier.elements.TelefoonMobiel.className = 'veld';
	}
	
	controleerVeld(formulier.elements.Email,"^[^@]+@[^@]+.[a-z]{2,}$");
	controleerVeld(formulier.elements.Referentie,"");
	controleerVeld(formulier.elements.Vraag,"");
	

	if (foutInDezeRun)
	{
		getChildElementById(formulier, "melding").style.display = 'block';
		return (false);
	} else {
		getChildElementById(formulier, "melding").style.display = 'none';
		return (true);
	}
}

// Validatie van formulier "Formulier vacatures sportwijzer.com" van www.sportwijzer.com
function controleerFormulierVacatures(formulier)
{
	foutInDezeRun = false;
	
	controleerVeld(formulier.elements.Voornaam,"");
	controleerVeld(formulier.elements.Achternaam,"");
	controleerVeld(formulier.elements.Adres,"");
	controleerVeld(formulier.elements.Postcode,"");
	controleerVeld(formulier.elements.Plaats,"");
	
	if (formulier.elements.TelefoonThuis.value == "" &&
		formulier.elements.TelefoonMobiel.value == "") {
		
		document.getElementById("TelefoonFormulierVacatures").className = 'foutMarkerOn';
		formulier.elements.TelefoonThuis.className = 'veldFout';
		formulier.elements.TelefoonMobiel.className = 'veldFout';
		
		foutInDezeRun = true;
	} else {
		document.getElementById("TelefoonFormulierVacatures").className = 'foutMarkerOff';
		formulier.elements.TelefoonThuis.className = 'veld';
		formulier.elements.TelefoonMobiel.className = 'veld';
	}
	
	controleerVeld(formulier.elements.Email,"^[^@]+@[^@]+.[a-z]{2,}$");
	controleerVeld(formulier.elements.Opleiding,"");
	controleerVeld(formulier.elements.Geboortedatum,"");
	controleerVeld(formulier.elements.OpDeHoogteGebrachtDoor,"");
	controleerVeld(formulier.elements.Opmerkingen,"");
	

	if (foutInDezeRun)
	{
		getChildElementById(formulier, "meldingFormulierVacatures").style.display = 'block';
		return (false);
	} else {
		getChildElementById(formulier, "meldingFormulierVacatures").style.display = 'none';
		return (true);
	}
}

// Controleer of voor de gegeven option group een
// optie is geselecteerd.
function controleerOptionGroup(group, veld)
{
	var selectedItems = 0;
	for (var i = 0; i < group.length; i++) {
		if (group[i].checked == true) {
			selectedItems++;
		}
	}
	
	if(selectedItems == 0)
	{
		veld.className = 'foutMarkerOn';
		foutInDezeRun = true;
	}
	else
	{
		veld.className = 'foutMarkerOff';
	}
}

// Controleer of de waarde in het veld voldoet aan 
// de reguliere expressie: format. Als format niet
// wordt opgegeven, dan controleren of het veld 
// gevuld is.
function controleerVeld(veld, format)
{
	var err;
	if (format == "") {
		err = veld.value == "";
	} else {
		err = veld.value == "" || 
				veld.value.search(format) == -1;
	}
	if(err)
	{
		veld.className = 'veldFout';
		if (!foutInDezeRun) { // Focus het eerste veld met een fout
			veld.focus();
		}
		foutInDezeRun = true;
	}
	else
	{
		veld.className = 'veld';
	}
}

function textCounter(field, maxlimit)
{
   if (field.value.length > maxlimit)
   {
       field.value = field.value.substring(0, maxlimit);
   }
}

// Zoek een child met id=child_id in de children van
// component. Geeft null terug als het child_id niet
// is gevonden.
function getChildElementById(component, child_id) {
	var children = new Array();
	var result = null;
	children.push(component);
	
	while (result == null && children.length > 0) {
		child = children.pop();

		if (child.id && child.id == child_id) {
			result = child;
		} else if (child.hasChildNodes() && child.childNodes != null) {
			children2 = children;
			for (var i=0; i<child.childNodes.length; i++) {
				children.push(child.childNodes[i]);
			}
		}
	}
	
	return result;
}