<!-- Form test -->
<!-------------------------------------------------------
// Site URL: www.tahboesch.nl
// Copyright (C) 2008 TahBoeSch, Alle rechten voorbehouden
//-------------------------------------------------------

function ShowMenu(num,menu,max){
        var lb_vn = "Voornaam_";
        var lb_an = "Achternaam_";
        var lb_gb = "Geboortedatum_";
        var lb_tp = "Type_";
        var lb_ls = "Lessen_";
        var lb_nv = "Niveau_";
        var lb_mt = "Materiaal_";
        var tststr = "";
        var mutmin = 0;
        var mutmax = num + 1;

        //starting at one, loop through until the number chosen by the user
        for(i = 1; i <= num; i++){
        //add number onto end of menu
        var menu2 = menu + i;
        //change display to block, or 'visible'
                        if ((document.getElementById(menu2).style.display == 'none') && mutmin == 0){
                mutmin = i;
                        }
                document.getElementById(menu2).style.display = 'block';
        }
        //make a number one more than the number inputed
        var num2 = num;
        num2++;
        //hide it if the viewer selects a number lower
        //this will hide every number between the selected number and the maximum
        //ex. if 3 is selected, hide the <div> cells for 4, 5, and 6
        //loop until max is reached

        while(num2 <= max){
        var menu3 = menu + num2;
        //hide
                if (document.getElementById(menu3).style.display == 'block'){
                        tststr = lb_vn + num2;
                        document.form1[tststr].value = "";
                        tststr = lb_an + num2;
                        document.form1[tststr].value = "";
                        tststr = lb_gb + num2;
                        document.form1[tststr].value = "";
                        tststr = lb_tp + num2;
                        setCheckedValue(document.form1[tststr], 100);
                        tststr = lb_ls + num2;
                        setCheckedValue(document.form1[tststr], 100);
                        tststr = lb_nv + num2;
                        setCheckedValue(document.form1[tststr], 100);
                        }
                document.getElementById(menu3).style.display = 'none';

        //add one to loop
        num2=num2+1;
        }

        if (mutmax > 1){
                for( i = mutmin; i < mutmax; i++){
                         tststr = lb_tp + i;
                        setCheckedValue(document.form1[tststr], 0);
                        tststr = lb_ls + i;
                        setCheckedValue(document.form1[tststr], 0);
                        tststr = lb_nv + i;
                        setCheckedValue(document.form1[tststr], 0);

                }
        }
}


function setCheckedValue(radioObj, newSts) {
        if(!radioObj)
                return;
        var radioLength = radioObj.length;
        for(var tl = 0; tl < radioLength; tl++) {
                radioObj[tl].checked = false;
                if(tl == (newSts)) {
                radioObj[tl].checked = true;
                }
        }
}

function CheckForm(){
        var returnval = false;
        var fouttxt = "";
        var lb_vn = "Voornaam";
        var lb_an = "Achternaam";
        var lb_gb = "Geboortedatum";
        var lb_dn = "  Deelnemer ";
        var tststr = "";

        if (trim(document.form1.Contact.value) == "") {
                fouttxt += '- Contactpersoon \n';}

        var emailAddress = document.form1.email;
        if ((emailAddress.value == null)||(emailAddress.value == "")){
                fouttxt += '- emailadres foutief \n';}
        else {
                if (!emailValidator(emailAddress.value)) {
                fouttxt += '- emailadres foutief \n';}
                }
        if (fouttxt != '') {
                fouttxt += '\n';}

        var maxtest = document.form1.numdeelname.value;
        var i = 0 ;
        var teller = 0;
        while(i < maxtest){
                i= i + 1;
                // pluis de string
                tststr = lb_vn + "_" + i;
                if ( trim(document.form1[tststr].value) == ""){
                        if (i > 1 && teller < i ){
                                fouttxt += '\n';
                                teller = i;
                        }
                        fouttxt += lb_dn + i + ' : '  + lb_vn + '\n'  ;
                        }
                tststr = lb_an + "_" + i;
                if ( trim(document.form1[tststr].value) == ""){
                        fouttxt += lb_dn + i + ' : '  + lb_an + '\n'  ;
                        if (i > 1 && teller < i ){
                                fouttxt += '\n';
                                teller = i;
                        }
                }
                tststr = lb_gb + "_" + i;
                if (!CheckDate(document.form1[tststr].value)){
                        if (i > 1 && teller < i ){
                                fouttxt += '\n';
                                teller = i;
                        }
                        fouttxt += lb_dn + i + ' : '  + lb_gb + ' (formaat: dd-mm-jjjj) \n'  ;
                        }
        }

if (fouttxt == ""){
                returnval = true;}
        else {
                alert("Ontbrekende of foutieve gegevens:\n\n"+fouttxt);}

        return returnval;
}

function CheckDate(DateString){
if((DateString.length != 10) || (!validateInteger(DateString.substring(0, 2))) || (!validateInteger(DateString.substring(3,5))) || (DateString.substring(0, 2) > "31") || (DateString.substring(3, 5) > "12") || (!validateInteger(DateString.substring(6, 10))) || (DateString.substring(2, 3) != "-") || (DateString.substring(5, 6) != "-"))        {
                return false;
        }
var zoekstring = "04060911";
if ((zoekstring.indexOf(DateString.substring(3,5)) != -1  ) && (DateString.substring(0, 2) > "30")){
        return false;
        }

var zoekjaar = DateString.substring(6);
zoekjaar = zoekjaar / 4 ;
if (!validateInteger( zoekjaar ) && (DateString.substring(0, 2) == "29") && (DateString.substring(3,5) == "02")){
        return false;
        }

return true;
}

function validateInteger(val) {
        /* hier een kleine toelichting
           \d is een cijfer
           + betekent dat \d zich mag herhalen
           | ene OF andere
           \d$ einde moet dan cijfer zijn
           ^\d begin moet dan zijfer zijn
           meer info: http://www.seeraamuun.net/tutorials/regextutorial.html

           Voor een komma getaal warde
           var anum=/(^\d+$)|(^\d+\.\d+$)/
        */
        var anum = /(^\d+$)/;

        if (anum.test(val)) {
                return true;
        } else {
                return false;
        }
}


//De functie die op een aantal punten kijkt, of de parameter wel een geldig email adres is.
function emailValidator(emailString) {
        var atInt = -1;//emailString.indexOf("@");
        var dotInt = -1;
        var atCount = 0;
        var returnval = false;
        var empty = "";

        // dotInt krijgt de waarde van de laatste positie, waar de punt in emailSTring voor komt
        for(i=0; i<=emailString.length; i++) {
                if (emailString.charAt(i) == ".") dotInt = i;
        }
        // atInt krijgt de waarde van de laatste positie, waar de punt in emailSTring voor komt
        //
        // De reden dat ik niet indexOf() heb gebruikt, is omdat ik dacht dat ik dan niet kon controleren of een @ meer dan 1 keer voorkomt
        // Later kwam ik lastIndexOf() tegen en had die functie ervoor kunnen gebruiken, maar toen had ik deze functie al af en dit werkt ook... :p
        //
        for(i=0; i<=emailString.length; i++) {
                if (emailString.charAt(i) == "@") {
                        atInt = i;
                        atCount += 1;
                }
        }

        // @ en . mogen niet op eerste positie staan
        if ((atInt == 0) || (dotInt == 0)) {
        return returnval;}

        if ( trim((emailString)).indexOf(" ") != -1){
                return returnval;}

        // @ en . mogen niet op de laatste positie staan
        if ((atInt+1 == emailString.length) || (dotInt+1 == emailString.length)) {
                return returnval;}

        // na de @ moet nog een punt voor komen.  En tussen de @ en . moeten minimaal 2 karakters staan
        if (dotInt-2 <= atInt) {
                return returnval;}

        // er mag maar 1 @ in het email adres staan
        if (atCount > 1) {
                return returnval;}

        if (empty == "") {
                returnval = true;
                return returnval;
        } else {
                return returnval;
        }
        return returnval;
}

function trim(value) {
return value.replace(/^\s+|\s+$/,'').replace(/^\s+|\s+$/,'');
}

function tester(form)  { 
    if (form.foto_h[3].checked) { 
            return ; 
    } 
	else {
		alert("Deze keuze kan toch niet goed zijn...\n\nKijk nog maar eens goed!");
		form.foto_h[0].checked = false;
		form.foto_h[1].checked = false;
		form.foto_h[2].checked = false;
  //      form.sizes[3].checked = true; 
    } 
} 


function CheckPrijs(){
	var returnval = false;
	var fouttxt = "";
	 
		if (trim(document.form1.Naam.value) == "") {
                fouttxt += '- Naam deelnemer niet gevuld \n';}

    var emailAddress = document.form1.email;
        if ((emailAddress.value == null)||(emailAddress.value == "")){
                fouttxt += '- emailadres foutief \n';}
        else {
                if (!emailValidator(emailAddress.value))
					{
                		fouttxt += '- emailadres foutief \n';}
              }

	if (fouttxt == ""){
                returnval = true;}
        else {
                alert("Ontbrekende of foutieve gegevens prijsvraag:\n\n"+fouttxt);}

        return returnval;

}

function Checkfoto(foto){
				 var fout = "";
				for (var t=0; t < document.getElementById(foto).length; t++)
					   {
				    fout = " niet gevuld";
				   if (document.getElementById(foto)[t].checked)
    					 {
					      fout = "";
					     }
					   }
				if (fout != "" )
				{
				return false  ;
				}

}

function Checkleeftijd(foto){
                 var fout = "";
				for (var t=0; t < foto.length; t++)
					   {
				    fout = " niet gevuld";
				   if (foto[t].checked)
    					 {
					      fout = "";
					     }
					   }
				if (fout != "" )
				{
				return false  ;
				}

}
function CheckDate(DateString){
if((DateString.length != 10) || (!validateInteger(DateString.substring(0, 2))) || (!validateInteger(DateString.substring(3,5))) || (DateString.substring(0, 2) > "31") || (DateString.substring(3, 5) > "12") || (!validateInteger(DateString.substring(6, 10))) || (DateString.substring(2, 3) != "-") || (DateString.substring(5, 6) != "-"))        {
                return false;
        }
var zoekstring = "04060911";
if ((zoekstring.indexOf(DateString.substring(3,5)) != -1  ) && (DateString.substring(0, 2) > "30")){
        return false;
        }

var zoekjaar = DateString.substring(6);
zoekjaar = zoekjaar / 4 ;
if (!validateInteger( zoekjaar ) && (DateString.substring(0, 2) == "29") && (DateString.substring(3,5) == "02")){
        return false;
        }

return true;
}




function goto(subfoto)
{
	var url = "foto.php?foto=" + subfoto;
	//alert(url);
	//parent.main.location.href= url;
	window.open(url,null,"height=750,width=600,status=yes,toolbar=no,menubar=no,location=no");
}
