var illegalCharacters = new Array("/","\\","\"",";",":","?","!","(",")","[","]","{","}","^","|","<",">"," ","*");	
var requiredCharacters = new Array("@",".");
var emaillist;
  
function checkFields() {
	if (checkEmptyRadioButtonToepassing('Gelieve een toepassing te selecteren!')) {
		return false;
	}
	
	if (checkToepassingAndere()) {
		return false;
	} 
	
	if (checkEmptyRadioButtonSysteem('Gelieve een systeem te selecteren!')) {
		return false;
	}

	if (checkEmpty('txtNaam', 'Gelieve je naam en voornaam in te vullen!')) {
		return false;
	}
	
	if (checkEmpty('txtAdres', 'Gelieve je adres in te vullen!')) {
		return false;
	}
	
	if (checkEmpty('txtWoonplaats', 'Gelieve je woonplaats in te vullen!')) {
		return false;
	}
	
	if (checkEmpty('txtProjectplaats', 'Gelieve de projectplaats in te vullen!')) {
		return false;
	}
	
	if (checkEmpty('txtTelefoon', 'Gelieve een telefoonnummer in te vullen!')) {
		return false;
	}
	
	if (hasIllegalCharacters('txtEmail', 'Het e-mailadres bevat ongeldige karakters: ')) {
		return false;
	}
	
	if (hasRequieredCharacters('txtEmail', 'Ongeldig e-mailadres!')) {
		return false;
	}
	
	document.frmSendRequest.submit();	
}

function hasIllegalCharacters(object, message) {
	for (var i=0;i<illegalCharacters.length;i++)	{
		var character = illegalCharacters[i];
		var index = trim(document.getElementById(object).value).indexOf(character);
		if (index > -1) {
			if (character == " ") {
				character = "<spatie>";
			}
			alert(message + character);
			return true;
		} 
	}		
	return false;
}

function hasRequieredCharacters(object, message) {
	var data = trim(document.getElementById(object).value);
	var indexAT = -1;
	for (var i=0;i<requiredCharacters.length;i++) {
		var character = requiredCharacters[i];
		if (character == "@") {				
			indexAT = data.indexOf(character);
			if (indexAT == -1) {
				alert(message);
				return true;
			} else {
				if (data.substring(0,indexAT).length < 1) {
					alert(message);
					return true;
				}
				if (data.substring(indexAT).length < 3) {
					alert(message);
					return true;
				}
			}
		} else {
			var index = data.indexOf(character);
			if (index == -1) {
				alert(message);
				return true;
			} else {
				if (data.substring((indexAT + 1),index).length < 1) {
					alert(message);
					return true;
				}
				if (data.substring((index + 1)).length < 2) {
					alert(message);
					return true;
				}
			}
		}
		
	}		
	return false;
}

function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}

function checkEmpty(object, message) {
	if (document.getElementById(object).value == "") {
		alert(message);
		return true ;
	}
	return false;
}

function checkEmptyRadioButtonToepassing(message) {
	checked = -1;
	
	for (i=document.frmSendRequest.rbtToepassing.length-1; i > -1; i--) {
		if (document.frmSendRequest.rbtToepassing[i].checked) {
			checked = i; i = -1;
		}
	}
	
	if (checked == -1) {
		alert(message);
		return true ;
	}
	return false;
}

function checkToepassingAndere() {
	for (i=document.frmSendRequest.rbtToepassing.length-1; i > -1; i--) {
		if (document.frmSendRequest.rbtToepassing[i].checked && document.frmSendRequest.rbtToepassing[i].value == 'andere') {
			return checkEmpty('txtAndere', 'Gelieve een toepassing op te geven!');
		}
	}
}

function checkEmptyRadioButtonSysteem(message) {
	checked = -1;
	
	for (i=document.frmSendRequest.rbtSysteem.length-1; i > -1; i--) {
		if (document.frmSendRequest.rbtSysteem[i].checked) {
			checked = i; i = -1;
		}
	}
	
	if (checked == -1) {
		alert(message);
		return true ;
	}
	return false;
}
