/* Common client-side functions */

// get a cookie
function getCookie(strName) {
	var len = strName.length + 1;
	var index = document.cookie.indexOf(strName + "=");
	if (index != -1) {
		var end = document.cookie.indexOf(";", index);
		if (end == -1) end = document.cookie.length;
		return unescape((document.cookie.substring(index+len,end)));
	}
	return(null);
}

// print the current page
function printPage(){  
	if (window.print) {
		window.print() ;  
	} else {
		var strObj = '<object id="printObj" width=0 height=0 classid="clsid:8856f961-340a-11d0-a96b-00c04fd705a2"></object>';
		document.body.insertAdjacentHTML('beforeEnd', strObj);
		printObj.ExecWB(6,2); // Use a 1 vs. a 2 for a prompting dialog box
		printObj.outerHTML = "";  
	}
}

// validate a form before sending
// must specify arrCompulsoryFields as an array of field names
function validate() {
	var form = document.forms[0];
	var validated = true;
	var errorField = "";
	var errmsg = "";
	for (var i=0; i < arrCompulsoryFields.length; i++) {
		var field = arrCompulsoryFields[i];
		if (form.elements[field] && form.elements[field].value == "") {
			validated = false;
			errorField = arrCompulsoryFields[i];
			errmsg = 'Please complete all of the compulsory fields before submitting the form.';
			break;
		}
		if (field == "email") {
			// check that email has the right format
			if ((form.elements[field].value.indexOf("@") < 0) || (form.elements[field].value.indexOf(".") < 0)) {
				validated = false;
				errorField = arrCompulsoryFields[i];
				errmsg = 'Your email address is invalid.';
				break;
			}
		}

	}
	if (validated) {
		form.submit();
	} else {
		//alert("Please complete all of the compulsory fields before submitting the form.");
		alert(errmsg);
		form.elements[errorField].focus();
	}
}

// Test the max length of a field. This should be used for TEXTAREA boxes.
function TextMaxLength(field, maxLength) {
	if (field.length >= maxLength) { return false; }
}

