function isChecked(radioObj) {
	for (var i = 0; i < radioObj.length; i++) {
		if (radioObj[i].checked) {
			return true;
		}
	}
	return false;
}

function evalForm(theform) {

// -----------------------------------------------------------------------------
// Declaring general variables...
// -----------------------------------------------------------------------------

// variables for return information
	var errorString, addStr = new String();
	addStr = 'Controleert u a.u.b. de invoer van het formulier!\n';
	var submitVal = true;

// variables for location field
	var location = new String(document.aanmelding.thv.value);

// variables for direction field
	var direction = new String(document.aanmelding.richting.value);

// variables for control field
	var controlmbvString = new String(document.aanmelding.mbv.options[document.aanmelding.mbv.selectedIndex].value);
//	var controlsoortString = new String(document.aanmelding.soort_controle.options[document.aanmelding.soort_controle.selectedIndex].value);
	
// variables for datefield
	var dateString = new String(document.aanmelding.datum_controle.value);
	var datestrLength = parseInt(dateString.length);
	var date_ddStr = dateString.substring(0,2);
	var date_mmStr = dateString.substring(3,5);
	var date_jjStr = dateString.substring(6,8);
	var date_tempStr1 = dateString.substring(2,3);
	var date_tempStr2 = dateString.substring(5,6);

// variables for timefield
	var timeString = new String(document.aanmelding.tijdstip_controle.value); // waarde van string uit textveld inlezen
	var strLength = parseInt(timeString.length); // lengte van de string bepalen
	var hhStr = timeString.substring(0,2);
	var mmStr = timeString.substring(3,5);
	var tempStr = timeString.substring(2,3);

// -----------------------------------------------------------------------------
// This part is road fields...
// -----------------------------------------------------------------------------

	if (!isChecked(document.aanmelding.wegtype) && (document.aanmelding.wegtype_plaats.checked == true) && (document.aanmelding.plaats.value == '')) {
		submitVal = false
		addStr += '- U moet een plaatsnaam invullen -\n';
	} else if (!isChecked(document.aanmelding.wegtype) && document.aanmelding.wegtype_plaats.checked == false){
		submitVal = false
		addStr += "- Het wegtype is nog niet aangegeven -\n";
	} else if (isChecked(document.aanmelding.wegtype) && document.aanmelding.wegnummer.value == ''){
		submitVal = false
		addStr += "- Het wegnummer moet worden ingevuld -\n";
	}


// -----------------------------------------------------------------------------
// This part is for the located at field...
// -----------------------------------------------------------------------------

	if (location == "") {
	submitVal = false
	addStr += "- voer 'ter hoogte van in' -\n";	
	}

// -----------------------------------------------------------------------------
// This part is for the direction field...
// -----------------------------------------------------------------------------

	if (direction == "") {
	submitVal = false
	addStr += '- voer de richting in -\n';	
	}

// -----------------------------------------------------------------------------
// This part is for the control field...
// -----------------------------------------------------------------------------
	
	if (controlmbvString == "null") {
	submitVal = false
	addStr += '- voer de soort controle in -\n';
	}

//	if (controlsoortString == "null") {
//	submitVal = false
//	addStr += '- voer de soort controle in -\n';
//	}
		
// -----------------------------------------------------------------------------
// This part is for the date field...
// -----------------------------------------------------------------------------

	if (dateString == '') {
	submitVal = false
	addStr += '- controleer het datumveld: (dd-mm-jj) - Dit veld moet worden ingevuld -\n';	
	}

	else if (datestrLength != 8) {
	submitVal = false
	addStr += '- controleer het datumveld: (dd-mm-jj) - 6 karakters moeten worden ingevuld -\n';
	}	

	else if ((isNaN(date_ddStr)) || (isNaN(date_mmStr)) || (isNaN(date_jjStr))) { // functie isNaN gaat na of de string een getal is of niet
	submitVal = false
	addStr += '- controleer het datumveld: (dd-mm-jj) - alleen getallen invoeren voor dd en mm en jj -\n';
	}

	else if (!((date_ddStr >= 0) && (date_ddStr <= 31))) {
	submitVal = false
	addStr += '- controleer het datumveld: (dd-mm-jj) - dd moet tussen 0 en 31 zijn -\n';
	}

	else if (!((date_mmStr >= 0) && (date_mmStr <= 12))) {
	submitVal = false
	addStr += '- controleer het datumveld: (dd-mm-jj) - mm moet tussen 0 en 12 zijn -\n';
	}

	else if (!((date_jjStr >= 00) && (date_jjStr <= 99))) {
	submitVal = false
	addStr += '- controleer het datumveld: (dd-mm-jj) - jj moet tussen 00 en 99 zijn -\n';
	}

	else if (date_tempStr1 != '-') {
	submitVal = false
	addStr += '- controleer het datumveld: (dd-mm-jj) - koppelteken invoeren als scheidingsteken -\n';
	}

	else if (date_tempStr2 != '-') {
	submitVal = false
	addStr += '- controleer het datumveld: (dd-mm-jj) - koppelteken invoeren als scheidingsteken -\n';
	}

// -----------------------------------------------------------------------------
// This part is for the time field...
// -----------------------------------------------------------------------------

	if (timeString == '') {
	submitVal = false
	addStr += '- controleer het tijdveld: (hh:mm) - Dit veld moet worden ingevuld -\n';	
	}

	else if (strLength != 5) {
	submitVal = false
	addStr += '- controleer het tijdveld: (hh:mm) - 5 karakters moeten worden ingevuld -\n';
	}	

	else if ((isNaN(hhStr)) || (isNaN(mmStr))) { // functie isNaN gaat na of de string een getal is of niet
	submitVal = false
	addStr += '- controleer het tijdveld: (hh:mm) - alleen getallen invoeren voor hh en mm -\n';
	}

	else if (!((hhStr >= 0) && (hhStr <= 23))) {
	submitVal = false
	addStr += '- controleer het tijdveld: (hh:mm) - hh moet tussen 0 en 23 zijn -\n';
	}

	else if (!((mmStr >= 0) && (mmStr <= 59))) {
	submitVal = false
	addStr += '- controleer het tijdveld: (hh:mm) - mm moet tussen 0 en 59 zijn -\n';
	}

	else if (tempStr != ':') {
	submitVal = false
	addStr += '- controleer het tijdveld: (hh:mm) - dubbele punt invoeren als scheidingsteken -\n';
	}

// -----------------------------------------------------------------------------
// General part for the return value of the caller of this function...
// -----------------------------------------------------------------------------

	errorString = addStr;
	if (errorString != 'Controleert u a.u.b. de invoer van het formulier!\n') {
		alert(errorString);
		return false;
	}
	else {
		return submitVal;
	}
	alert(addStr);
}
