function xmlhttpPost(ajaxUrl,queryStr,returnFunc,waitMessage) {
	var xmlHttpReq = false;
	var self = this;
	if (window.XMLHttpRequest) {
        self.xmlHttpReq = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
    }
	self.xmlHttpReq.open('POST',ajaxUrl,true);
	self.xmlHttpReq.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	self.xmlHttpReq.onreadystatechange = handleReturn;
    self.xmlHttpReq.send(queryStr);
	function handleReturn() {
		if (self.xmlHttpReq.readyState == 4) {
			if (self.xmlHttpReq.status == 200) {
				returnFunc(self.xmlHttpReq.responseText);
			} else {
				alert("There was a problem in request"); 
			}
		} else {
			displayMessage("<img src='images/wait.gif'><br><br>"+waitMessage);
		}
	}
}
function checkLocation() {
	var fTop = (screen.height)/4 + 30;
	var fLeft = ((screen.width)-200)/2;
	if(navigator.appName == "Netscape") {
		document.getElementById("dvMessage").style.top = window.pageYOffset+fTop+30+'px';
		document.getElementById("dvMessage").style.left = window.pageXOffset+fLeft;
	} else {
		document.getElementById("dvMessage").style.top = document.body.scrollTop+fTop+30+'px';
		document.getElementById("dvMessage").style.left = document.body.scrollLeft+fLeft;
	}
	setTimeout("checkLocation()",10);
}
function closeMessage() {
	document.getElementById("dvMessage").style.visibility = 'hidden';
}
function closeForm() {
	document.getElementById("dvForms").style.visibility = 'hidden';
}
function displayMessage(message) {
	var browser = navigator.appName;
	if(browser == "Netscape") {
		document.getElementById("dvMessage").innerHTML = "<table width='200' border='0' cellpadding='0' cellspacing='0' bgcolor='#f3f3f3'><tr><td width='200' height='100' align='Center' class='AllBox'>"+message+"</td></tr></table>";
	} else {
		window.frames['frmMessage'].document.getElementById('divMessage').innerHTML = "<table width='200' border='0' cellpadding='0' cellspacing='0' bgcolor='#f3f3f3'><tr><td width='200' height='100' align='Center' class='AllBox'>"+message+"</td></tr></table>";
	}
	document.getElementById("dvMessage").style.visibility = 'visible';
	//setTimeout(closeMessage,3000);
}
function displayFrameMessage(message) {
	var browser = navigator.appName;
	if(browser == "Netscape") {
		document.getElementById("dvMessage").innerHTML = "<table width='200' border='0' cellpadding='0' cellspacing='0' bgcolor='#f3f3f3'><tr><td width='200' height='100' align='Center' class='AllBox'>"+message+"</td></tr></table>";
	} else {
		parent.document.getElementById('divMessage').innerHTML = "<table width='200' border='0' cellpadding='0' cellspacing='0' bgcolor='#f3f3f3'><tr><td width='200' height='100' align='Center' class='AllBox'>"+message+"</td></tr></table>";
	}
	document.getElementById("dvMessage").style.visibility = 'visible';
	//setTimeout(closeMessage,3000);
}
function formatinput(object) {
	var string = object.value;
	var text = string.replace(/(^\s*|\s*$)/g, "");
	object.value = text;
}

function validateField(fieldName,fieldLabel,fieldType,isRequired) {
	var field = document.getElementById(fieldName);
	var fieldValue = field.value;
	var error = "no";
	if(isRequired == "r" && fieldValue.length < 1) {
		error = "Please fill in "+fieldLabel+" field";
	}
	if(fieldValue.length > 0) {
	switch(fieldType) {
		case "url":
			var RegExp = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/; 
			if(!RegExp.test(fieldValue)){ 
				error = "Please enter a valid URL in to the "+fieldLabel+" field.";
			}
		break;
		case "email":
			var RegExp = /^((([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+(\.([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+)*)@((((([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.))*([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.)[\w]{2,4}|(((([0-9]){1,3}\.){3}([0-9]){1,3}))|(\[((([0-9]){1,3}\.){3}([0-9]){1,3})\])))$/ 
			if(!RegExp.test(fieldValue)){ 
				 error = "Please enter a valid email address in to the "+fieldLabel+" field.";
			}
		break;
		case "lettersonly":
			var filteredValues = "#$%^&*<>?";
			for (i = 0; i < fieldValue.length; i++) {
				var c = fieldValue.charAt(i);
				if (filteredValues.indexOf(c)!=-1) {
					error = "Please do not enter special characters in to the "+fieldLabel+" field.";
				}
			}
		break;
	}
	}
	if(error != "no"){
		parent.closeMessage();
		document.getElementById('dvFormHelp').innerHTML = error;
		document.getElementById('dv'+fieldName).innerHTML = "<img src='images/wrong.gif'>";
		return false;
	} else {
		document.getElementById('dv'+fieldName).innerHTML = "<img src='images/ok.jpg'>";
		return true;
	}
}
function validateField2(fieldName,fieldLabel,fieldType,isRequired) {
	var field = document.getElementById(fieldName);
	var fieldValue = field.value;
	var error = "no";
	if(isRequired == "r" && fieldValue.length < 1) {
		error = "Please fill in "+fieldLabel+" field";
	}
	if(fieldValue.length > 0) {
	switch(fieldType) {
		case "url":
			var RegExp = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/; 
			if(!RegExp.test(fieldValue)){ 
				error = "Please enter a valid URL in to the "+fieldLabel+" field.";
			}
		break;
		case "email":
			var RegExp = /^((([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+(\.([a-z]|[0-9]|!|#|$|%|&|'|\*|\+|\-|\/|=|\?|\^|_|`|\{|\||\}|~)+)*)@((((([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.))*([a-z]|[0-9])([a-z]|[0-9]|\-){0,61}([a-z]|[0-9])\.)[\w]{2,4}|(((([0-9]){1,3}\.){3}([0-9]){1,3}))|(\[((([0-9]){1,3}\.){3}([0-9]){1,3})\])))$/ 
			if(!RegExp.test(fieldValue)){ 
				 error = "Please enter a valid email address in to the "+fieldLabel+" field.";
			}
		break;
		case "lettersonly":
			var filteredValues = "#$%^&*<>?";
			for (i = 0; i < fieldValue.length; i++) {
				var c = fieldValue.charAt(i);
				if (filteredValues.indexOf(c)!=-1) {
					error = "Please do not enter special characters in to the "+fieldLabel+" field.";
				}
			}
		break;
		case "image":
			error = "Invalid file type";
			extArray = new Array(".jpg",".gif",".png",".jpeg");
			while (fieldValue.indexOf("\\") != -1)
			fieldValue = fieldValue.slice(fieldValue.indexOf("\\") + 1);
			var ext = fieldValue.slice(fieldValue.indexOf(".")).toLowerCase();
			alert(ext);
			for (var i = 0; i < extArray.length; i++) {
				if (extArray[i] == ext) { error = "no"; }
			}
		break;
	}
	}
	if(error != "no"){
		alert(error);
		field.focus();
		return false;
	} else {
		return true;
	}
}