window.onload = initAll;



function initAll() {

	initForms();

}


function MM_goToURL() { //v3.0 20090926
  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
}


// validation scripts

function initForms() {

	for (var i=0; i< document.forms.length; i++) {

		document.forms[i].onsubmit = function() {return validForm();}

	}

	//document.getElementById("sunroof").onclick = doorSet;

}



function validForm() {

	var allGood = true;

	var allTags = document.getElementsByTagName("*");



	for (var i=0; i<allTags.length; i++) {

		if (!validTag(allTags[i])) {

			allGood = false;

		}

	}

	return allGood;



	function validTag(thisTag) {

		var outClass = "";

		var allClasses = thisTag.className.split(" ");

	

		for (var j=0; j<allClasses.length; j++) {

			outClass += validBasedOnClass(allClasses[j]) + " ";

		}

	

		thisTag.className = outClass;

	

		if (outClass.indexOf("invalid") > -1) {

			//invalidLabel(thisTag.parentNode);

			thisTag.focus();

			if (thisTag.nodeName == "INPUT") {

				thisTag.select();

			}

			return false;

		}

		return true;

		

		function validBasedOnClass(thisClass) {

			var classBack = "";

		

			switch(thisClass) {

				case "":

				case "invalid":

					break;

				case "reqd":

					if (allGood && thisTag.value == "") {

						classBack = "invalid ";

					}

					classBack += thisClass;

					break;

				case "del":

					if (allGood && thisTag.value == " --- Select Delivery --- ") {

						classBack = "invalid ";

					}

					classBack += thisClass;

					break;

				case "pay":

					if (allGood && (thisTag.value == " --- Select Payment --- " || thisTag.value == " --- Kies Betaling --- ")) {

						classBack = "invalid ";

					}

					classBack += thisClass;

					break;

				//case "radio":

				//	if (allGood && !radioPicked(thisTag.name)) {

				//		classBack = "invalid ";

				//	}

				//	classBack += thisClass;

				//	break;

				case "isNum":

					if (allGood && !isNum(thisTag.value)) {

						classBack = "invalid ";

					}

					classBack += thisClass;

					break;

				case "isZip":

					if (allGood && !isZip(thisTag.value)) {

						classBack = "invalid ";

					}

					classBack += thisClass;

					break;

				case "email":

					if (allGood && !validEmail(thisTag.value)) {

						classBack = "invalid ";

					}

					classBack += thisClass;

					break;

				default:

					/*if (allGood && !crossCheck(thisTag,thisClass)) {

						classBack = "invalid ";

					}*/

					classBack += thisClass;

			}

			return classBack;

		}

				

		/*function crossCheck(inTag,otherFieldID) {

			if (!document.getElementById(otherFieldID)) {

				return false;

			}

		return (inTag.value != "" || document.getElementById(otherFieldID).value != "");

		}*/

		

		//function radioPicked(radioName) {

		//	var radioSet = "";

		//

		//	for (var k=0; k<document.forms.length; k++) {

		//		if (!radioSet) {

		//			radioSet = document.forms[k][radioName];

		//		}

		//	}

		//	if (!radioSet) {

		//		return false;

		//	}

		//	for (k=0; k<radioSet.length; k++) {

		//		if (radioSet[k].checked) {

		//			return true;

		//		}

		//	}

		//	return false;

		//}

		

		function isNum(passedVal) {

			if (passedVal == "") {

				return false;

			}

			for (var k=0; k<passedVal.length; k++) {

				if (passedVal.charAt(k) < "0") {

					return false;

				}

				if (passedVal.charAt(k) > "9") {

					return false;

				}

			}

			return true;

		}

		

		function isZip(inZip) {

			if (inZip == "") {

				return true;

			}

			return (isNum(inZip));

		}

		

		function validEmail(email) {

			var invalidChars = " /:,;";

		

			if (email == "") {

				return false;

			}

			for (var k=0; k<invalidChars.length; k++) {

				var badChar = invalidChars.charAt(k);

				if (email.indexOf(badChar) > -1) {

					return false;

				}

			}

			var atPos = email.indexOf("@",1);

			if (atPos == -1) {

				return false;

			}

			if (email.indexOf("@",atPos+1) != -1) {

				return false;

			}

			var periodPos = email.indexOf(".",atPos);

			if (periodPos == -1) {	

				return false;

			}

			if (periodPos+3 > email.length)	{

				return false;

			}

			return true;

		}

		

		//function invalidLabel(parentTag) {

		//	if (parentTag.nodeName == "LABEL") {

		//		parentTag.className += " invalid";

		//	}

		//}

	}

}



function confirmDelete(yesLinkPage, noLinkPage, curLang) {
	var msg = "The record will be permenantly deleted. Are you sure?";
	if (curLang == "1") { msg = "Die rekord sal permanent verwyder word. Is jy seker?"; }
  if (confirm(msg)) {
		document.location.href = yesLinkPage;
	} else {
		document.location.href = noLinkPage;
	}
		return false;
}

