//CAPTCHA functions
function RefreshImage(valImageId) {
	var objImage = document.images[valImageId];
	if (objImage == undefined) {
		return;
	}
	var now = new Date();
	objImage.src = objImage.src.split('?')[0] + '?x=' + now.toUTCString();
}

//AJAX Functions
//Req. prototype.js
function checkEmail() {
	if($F('email1').length>0) {
		var url = 'checkEmail.asp';
		var params = 'perf=emailCheck&email1=' + $F('email1');
		var ajax = new Ajax.Updater('email1Result', url, {
			method: 'post', parameters: params, onFailure: reportError}
			);
	}
}

function reportError(request) {
	$F('email1Result') = "Error";
}

function confirmEmail() {
	if($F('email2').length>0) {
		var url = 'checkEmail.asp';
		var params = 'perf=emailConfirm&email2=' + $F('email2') + '&email1=' + $F('email1');
		var ajax = new Ajax.Updater('email2Result', url, {
			method: 'post', parameters: params, onFailure: reportError}
			);
	}
}

//javascript form validation
function validate_required(field,alerttxt)
{
	with (field)
	{
		if (value==null||value=="")
		  {alert(alerttxt);return false;}
		else {return true}
	}
}

function validate_email(field,alerttxt)
{
	with (field)
	{
		
		//var filter = /^(\w+\.)*\w+@(\w+\.)+[A-Za-z]+$/;
		
		var email = value
		var filter =   /^(('[\w-\s]+')|([\w-]+(?:\.[\w-]+)*)|('[\w-\s]+')([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i;
		if (!filter.test(email)) {
			alert('Please provide a valid email address');
			return false;
		}
		else {
			return true;
		}
	}
}

//very simple validation
function validate_checked(field,alerttxt)
{
	with (field)
	{
		if (checked)
		   {return true;}
		else {alert(alerttxt);return false;}
	}
}

function validate_form(thisform)
{
    
	with (thisform)
	{ 
	  //if (validate_required(email1,"Please enter a valid email.")==false)
	  //  {email1.focus();return false;}
	  if(validate_email(email1,"Please enter a valid email!")==false)
	    {email1.focus();return false;}
	  if (validate_emailsMatch(email1, email2, "Please confirm the emails match")==false)
		{email2.focus();return false;}
	}
	
}

function validate_emailsMatch(email1,email2,alerttxt)
{
	if (email1.value.toLowerCase()!=email2.value.toLowerCase()){
		alert(alerttxt);
		return false;
	}
	else {
		return true
	}
}

function regIsEmail(fData)
{
	//var reg = new RegExp("^[0-9a-zA-Z]+@[0-9a-zA-Z]+[\.]{1}[0-9a-zA-Z]+[\.]?[0-9a-zA-Z]+$");
	//var reg = new RegExp("^(([^<>()[\]\\.,;:\s@""]+(\.[^<>()[\]\\.,;:\s@""]+)*)|("".+""))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$");
	var reg = new RegExp("/^(('[\w-\s]+')|([\w-]+(?:\.[\w-]+)*)|('[\w-\s]+')([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i");
	alert(fData);
	return reg.test(fData);
}
