// Wharf for Internet & Design
//
// Form validator
//
//

function Validator(formname, textFields, emailFields, errorMessage){
	obj = new Object();
	if (errorMessage) {
		obj.errorMessage = errorMessage;
	}
	else {
		obj.errorMessage = 'Niet alle velden zijn correct ingevuld. Alle velden zijn verplicht';
	}
	obj.formname = formname;
	obj.textFields = textFields;
	if (emailFields) {
		obj.emailFields = emailFields;
	}
	obj.isValidEmail = function(email){
		apos = email.indexOf("@")
		dotpos = email.lastIndexOf(".")
		if (apos < 1 || dotpos - apos < 2) { 
			return true;
		}
		else {
			return false;
		}
	}
		
	obj.formobj = document.forms[obj.formname];	
	obj.formElements = obj.formobj.elements;

	
	obj.formobj.onsubmit = function () {
		var valid = true;
		for(var index = 0; index < obj.textFields.length; index++){
			if(obj.formElements[obj.textFields[index]].value == '' && valid){
				valid = false;
				alert(obj.errorMessage)
			};
		}
		
		if (obj.emailFields) {
			for(var index = 0; index < obj.emailFields.length; index++){
				if(obj.isValidEmail(obj.formElements[obj.emailFields[index]].value) && valid){
					valid = false;
					alert('Niet alle velden zijn correct ingevuld.')
				};
			}
		}
		
		return valid;
	};
	
	return obj;
}

