// portalscript.js
//This file contains the functions to provide client side error checking and form validation

function validateform() {

	var validate = "OK";	//Set flag on

	var ErrMsg = "";
	var reqdfields = document.getElementById('reqd').value; //Get a list of the required fields
	

	//Get the form elements and loop through them
	var x=document.getElementById("myform");
	for (var i=0;i<x.length;i++) {
		if (x.elements[i].type == "text") {
			
			// Check if it's a required field and if it has an entry
			var req = reqdfields.indexOf(x.elements[i].id);
	  		if (x.elements[i].value == "" && req >= 0) {
	  			ErrMsg =  "Please enter your " + x.elements[i].name;
	  			document.getElementById('err_' + x.elements[i].id).innerHTML = ErrMsg;
	  			validate = null;
	  		} else {
	  			ErrMsg = "";
	  			document.getElementById('err_' + x.elements[i].id).innerHTML = ErrMsg;
	  		}
	  		
	  		// Check 'Name' type fields are alphabetical only
	  		if (validate == "OK" && x.elements[i].id.indexOf('nm_') >=0) {
	  			var myStr = x.elements[i].value;
	  			//alert (myStr);
	  			var patt1 = /[^a-zA-Z'-]/g;
	  			var result = patt1.test(myStr);
	  			if (result) {
	  				ErrMsg =  "Please enter letters only";
	  				document.getElementById('err_' + x.elements[i].id).innerHTML = ErrMsg;
	  				validate = null;
	  			} else {
	  				ErrMsg = "";
	  				document.getElementById('err_' + x.elements[i].id).innerHTML = ErrMsg;
	  			}
	  		}
			
			// Check 'Email' fields are a valid format
	  		if (validate == "OK" && x.elements[i].id.indexOf('em_') >=0) {
	  			var myStr = x.elements[i].value;
	  			//alert (myStr);
	  			var patt1 = /[^a-zA-Z0-9.@_-]/g;
	  			var result = patt1.test(myStr);
	  			if (result) {
	  				ErrMsg =  "Please enter a valid email address";
	  				document.getElementById('err_' + x.elements[i].id).innerHTML = ErrMsg;
	  				validate = null;
	  			} else {
	  				ErrMsg = "";
	  				document.getElementById('err_' + x.elements[i].id).innerHTML = ErrMsg;
	  			}
	  		}

			// Check 'Phone' fields are a valid format
	  		if (validate == "OK" && x.elements[i].id.indexOf('ph_') >=0 && x.elements[i].value !="") {
	  			var myStr = x.elements[i].value;
	  			//alert (myStr);
	  			var patt1 = /[^0-9()-.]/g;
	  			var result = patt1.test(myStr);
	  			if (result) {
	  				ErrMsg =  "Phone numbers must be numeric only";
	  				document.getElementById('err_' + x.elements[i].id).innerHTML = ErrMsg;
	  				validate = null;
	  			} else if (myStr.length < 10) {
	  				ErrMsg =  "Please include your area code";
	  				document.getElementById('err_' + x.elements[i].id).innerHTML = ErrMsg;
	  				validate = null;
	  			} else {
	  				ErrMsg = "";
	  				document.getElementById('err_' + x.elements[i].id).innerHTML = ErrMsg;
	  			}
	  		}

		  }	//Close 'Text' type check
	}	//Close loop
	

	// Finally, check email and verification email match
	if (reqdfields.indexOf('em_verify') >= 0 && reqdfields.indexOf('em_email') >= 0 && validate == "OK") {
		if (document.getElementById("em_email").value != document.getElementById("em_verify").value) {
		ErrMsg =  "Your email and verification email do not match";
		document.getElementById('err_em_verify').innerHTML = ErrMsg;
		validate = null;
		} else {
		ErrMsg = "";
		document.getElementById('err_em_verify').innerHTML = ErrMsg;
		}
	}
	//alert (validate);
	if (validate == null) {
		return false;
	}
	}
	
	
	function chkall() {
		document.getElementById("cbcraft").checked=true;
		document.getElementById("cbhome").checked=true;
		document.getElementById("cbauto").checked=true;
		document.getElementById("cbrec").checked=true;
	}
	
	function checkCookie(str) {
		if (document.cookie.length>0) {
			var cookieValue = document.cookie;
			var cookieStart = cookieValue.indexOf(" " + str + "=");
			if (cookieStart == -1) {
				cookieStart = cookieValue.indexOf(str + "=");
			}
			if (cookieStart == -1) {
				cookieValue = null;
			}
			else {
				cookieStart = cookieValue.indexOf("=", cookieStart) + 1;
				var cookieEnd = cookieValue.indexOf(";", cookieStart);
				if (cookieEnd == -1) {
					cookieEnd = cookieValue.length;
				}
				cookieValue = unescape(cookieValue.substring(cookieStart, cookieEnd));
			}
			return cookieValue;
		}
		return null;
	}
			
/*	var myCookie = checkCookie();
	if (myCookie != null) {
		temp = window.confirm ("You may have already requested an Application Form. Are you sure you want to continue?");
		if (!temp) {
			javascript:history.go(-1);
		}
	}
*/	
//	document.cookie = "apply=y";

	<!-- Function for handling submitted form data -->
	function MySubmit(str) {
		temp = window.confirm('Please confirm you want to ' + str + '?');
		if (temp)
			return true ;
		else
			return false ;
	}
	<!-- Function for creating a popup window passing and returning a value -->
	function popValue (field, strUrl, myWidth, myHeight) {
		var r = showModalDialog(strUrl, field,'dialogWidth:' + myWidth + 'px;dialogHeight:' + myHeight + 'px;center:1;status=no;'); 
		if (typeof r != "undefined")
			field.value = r;
	}

