// frmValidation.js

function frmValidation(strForm, arrElements, arrTdLabels, arrFunctions, strMissingText) {
try {
	var strMissingText	= strMissingText + "\n\n";
	var objForm		= document.forms[strForm];
	var objFocus		= false;
	var blnError		= false;
	var blnFoundError	= false;
	var agent		= navigator.userAgent.toLowerCase();
	var platform		= navigator.platform.toLowerCase()
	var macUser		= false;
	var winUser		= false;
	var winCE		= false;
	var safari		= false;
	var firefox		= false;
	var msie		= false;
	
	if (agent.indexOf("safari") != -1) {
		safari = true;
	}
	else if (agent.indexOf("firefox") != -1) {
		firefox = true;
	}
	else {
		msie	= true;
	}
	
	if (platform.indexOf("mac") != -1) {
		macUser = true;
	}
	else if(platform == "wince") {
		winCE	= true;
	}
	else {
		winUser = true;
	}
	
	for (var i = 0; i < arrElements.length; i++) {
		var objElement	= document.forms[strForm].elements[arrElements[i]];
		var objTd	= document.getElementById(strForm + "_" + arrElements[i]);

		//alert(arrElements);

		blnError	= false;

		if (macUser) {
			objTd.style.color = "#707070";
		}
		else if (winCE) {
			// bekijk het maar lekker
		}
		else {
			objTd.className		= "label";
			objElement.className	= "npt";
		}

		if (objElement.type != "hidden") {
			if (objElement.value == "") {
				blnError = true;
			}
			else if (arrFunctions[i]) {
				blnError = eval(arrFunctions[i]);
			}

			if (blnError) {
				blnFoundError	= true;

				if (!objFocus) {
					objFocus = objElement;
				}

				strMissingText += "- " + arrTdLabels[i] + "\n";
				if (macUser) {
					objTd.style.color = "#FF0000";
				}
				else if (winCE) {
					// bekijk het maar lekker
				}
				else {
					objTd.className		= "error";
					objElement.className	= "error";
				}
			}
		}
	}

	if (blnFoundError) {
		window.alert(strMissingText);

		if (!objFocus.disabled) {
			objFocus.focus();
		}
		return false;
	}
	else {
		return true;
	}
}
catch (err) {
	alert(err.message);
	return false;
}
}

function isString(frmName, frmInput, minLength) {
	var ABCArray = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	var frmInput = document.forms[frmName].elements[frmInput].value;

	if (frmInput.length < minLength) {
		return true;
	}

	for (var i = 0; i < frmInput.length; i++) {
		if (ABCArray.indexOf(frmInput.substring(i, i + 1).toUpperCase()) == -1) {
			return true;
		}
	}
}

function isNumber(frmName, frmInput, minLength) {
	var frmInput = document.forms[frmName].elements[frmInput].value;

	if (isNaN(frmInput)) {
		return true;
	}
	else if (frmInput.length < minLength) {
		return true;
	}
}

function isTheSame(frmName, frmInputFirst, frmInputSecond) {
	var frmInputFirst = document.forms[frmName].elements[frmInputFirst].value;
	var frmInputSecond = document.forms[frmName].elements[frmInputSecond].value;

	if (frmInputFirst != frmInputSecond) {
		return true;
	}
}
