//Object oPageValidate = new Object();
//oPageValidate.IsValid = false;
// 1. validate empty input
// 2. validate email address

function LoginFieldValidation()
{
	return true;
}
function LoginFieldValidation_org()
{
	var aLoginField = new Array("eWebLoginControl_txtUsername","eWebLoginControl_txtPassword");
	var lblErrorMsg = document.getElementById("eWebLoginControl_lblErrorMsg");
	//1.
	var aRLoginField = IsGroupFieldEmpty(aLoginField);
	lblErrorMsg.innerHTML = "";
	var bEmailValidate = false;
	var bIsPassword = false;
	//var oPageValidate = document.getElementById("eWebACOGLoginControl_hdPageValidate");
	var bPageValidate = false;

	for(var iEle in aRLoginField)
	{		
		if((aRLoginField[iEle] == "null")&&(iEle == "eWebACOGLoginControl_txtUsername"))
		{
			lblErrorMsg.innerHTML = "Please enter an e-mail address and password.";
			//oPageValidate.value = "false";
			return false;
		}else
		if((aRLoginField[iEle] != "null")&&(iEle == "eWebACOGLoginControl_txtUsername"))
		{
			var aResult = ValidateEmailAddress(aRLoginField[iEle]);			
			if(!aResult['IsEmail'])
			{
				lblErrorMsg.innerHTML = aResult['ErrorMsg'];
				//oPageValidate.value = "false";
				return false;
			}
			if(aResult['IsEmail'])
			{
				bEmailValidate = true;
			}
		}else
		if((aRLoginField[iEle] == "null")&&(iEle == "eWebACOGLoginControl_txtPassword"))
		{
			lblErrorMsg.innerHTML = "Please enter a password.<br />";
			//bEmailValidate = true;
			bIsPassword = false;
			return false;
		}else
		if((aRLoginField[iEle] == "password")&&(iEle == "eWebACOGLoginControl_txtPassword"))
		{
			//bEmailValidate = true;
			bIsPassword = true;
		}
		
	}

	//lblErrorMsg.innerHTML += "<br />PreviousURL: "+window.history.previous;
	if((bEmailValidate)&&(bIsPassword))
	{
		bPageValidate = true;
		//oPageValidate.value = "true";
	}

	return bPageValidate;
}
function isNumberKey(evt)
{
	 var charCode = (evt.which) ? evt.which : event.keyCode
	var lblErrorMsg = document.getElementById("NSPEJobPosting_lblErrorMsg");
	 if(lblErrorMsg != null)
		{
			lblErrorMsg.innerHTML = "";
		}
	 if (charCode > 31 && (charCode < 48 || charCode > 57)){
		if(lblErrorMsg != null)
		{
			lblErrorMsg.innerHTML = "Please enter validate SSN.";
		}
		return false;
	 }		
	 return true;

}

/*
Call on page load Acog menu
window.onload=startList;
startList = function()
  {
  var node = document.getElementById("nav");
    
  AssignMenuEvents(node) ;
  }*/
function IsGroupFieldEmpty(aControls)
{
	//var iNum = 0;
	var aCtlTable = new Array();
	for(n=0;n<aControls.length;n++)
	{
		 var oCtl = TrimAll(document.getElementById(aControls[n]).value);
		if((oCtl != null)&&(oCtl.length == 0))
		{			
			aCtlTable[aControls[n]] = "null";
			//iNum++;
		}else if((oCtl != null)&&(oCtl.length > 0)){
			if(aControls[n] != "eWebACOGLoginControl_txtPassword")
			{
				aCtlTable[aControls[n]] = oCtl;
			}
			if(aControls[n] == "eWebACOGLoginControl_txtPassword")
			{
				aCtlTable[aControls[n]] = "password";
			}			
		}
	}
	return aCtlTable;
}
function ValidateEmailAddress(emailID)
{		
	var eFilter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	var ErrorMSg = "";
	var aResult = new Array();
	aResult['IsEmail'] = false;
	aResult['ErrorMsg'] = "";
	if (eFilter.test(emailID))
	{
		aResult['IsEmail'] = true;
	}		
	else
	{
		aResult['ErrorMsg'] = "Please enter a valid e-mail address";
		aResult['IsEmail'] = false;
	}
	return aResult;

}  
 
//Utils 
function TrimAll(sString)
{
	while (sString.substring(0,1) == ' ')
	{
		sString = sString.substring(1, sString.length);
	}
	while (sString.substring(sString.length-1, sString.length) == ' ')
	{
		sString = sString.substring(0,sString.length-1);
	}
	return sString;
}




//End Utils

  function ReverseString(pString)
    {
    var vResults = "";

    for (i=pString.length - 1; i >= 0; i--)
      {
      vResults += pString.charAt(i);
      }
    return vResults;
    }
function ValidatePassword()
{	
	var aPwdField = new Array("eWebACOGResetPassword_txtNewPassword","eWebACOGResetPassword_txtConfirmPassword");
	var lblMessage = document.getElementById("eWebACOGResetPassword_lblErrorMsg");
	var oValidate = document.getElementById("eWebACOGResetPassword_hValidation");
	var txtPwd = TrimAll(document.getElementById("eWebACOGResetPassword_txtNewPassword").value);
	var txtConfirmPwd = TrimAll(document.getElementById("eWebACOGResetPassword_txtConfirmPassword").value);
	var iEmpty = 0;
	var bIsEmpty = true;
	var bValidation = false;
	for(var n=0;n<aPwdField.length;n++)
	{
		var oCtl = TrimAll(document.getElementById(aPwdField[n]).value);
		if((oCtl != null)&&(oCtl.length > 0))
		{
			iEmpty++;
		}
	}
	if((iEmpty == 0) || (iEmpty < 2))
	{
		lblMessage.innerHTML = "Please enter password and confirm password.";
		return false;
	}else{
		bIsEmpty = false;
	}
	if(!bIsEmpty){
		for(var n=0;n<aPwdField.length;n++)
		{
			var oCtl = TrimAll(document.getElementById(aPwdField[n]).value);
			if(oCtl != null)
			{
				if(txtPwd != txtConfirmPwd)
				{
					lblMessage.innerHTML = "Passwords do not match. Please re-enter.";
					return false;
				}else if(txtPwd == txtConfirmPwd)
				{
					oValidate.value = "validated";
					bValidation = true;
				}
			}
		}
	}
	return bValidation;
	
}
function LookupFieldValidation()
{
	var aPwdField = new Array("eWebACOGLookupPage_txtACOGId","eWebACOGLookupPage_txtLastname","eWebACOGLookupPage_txtSSN");
	var BtnClick = document.getElementById("eWebACOGLookupPage_btnSubmit");
	BtnClick.disabled = true;
	BtnClick.value = " Please wait ";
	var bIsValidate = false;
	var lblMessage = document.getElementById("eWebACOGLookupPage_lblErrorMsg");	
	var iEmpty = 0;	
	for(var n=0;n<aPwdField.length;n++)
	{
		var oCtl = TrimAll(document.getElementById(aPwdField[n]).value);
		if((oCtl != null)&&(oCtl.length > 0))
		{
			iEmpty++;
		}
	}
	//lblMessage.innerHTML = "searching..."+iEmpty;
	if((iEmpty == 0)||(iEmpty < 3))
	{
		lblMessage.innerHTML = "All fields are required.";
		bIsValidate = false;
		BtnClick.disabled = false;
		BtnClick.value = " Lookup ";
		return false;
	}
	if(iEmpty == 3)
	{
		bIsValidate = true;
	}
	
	return bIsValidate;
}
//
/*
	Auther:	Chaiyanet Sadeewong
	Date: Dec 28,2007
*/	
//	::: Events Utility :::
function JobPostSelectPackagePublishClick()
{
	var btnCancel = document.getElementById("NSPEJobPostSelectPackage_buttonCancel");
	var btnPublishNow = document.getElementById("NSPEJobPostSelectPackage_buttonPublishNow");
	var btnPyblishLater = document.getElementById("NSPEJobPostSelectPackage_buttonPublishLater");
	ButtonClickDisable(btnCancel);
	ButtonClickDisable(btnPublishNow);
	ButtonClickDisable(btnPyblishLater);
	var col = document.getElementsByTagName("input");
	var ErrorMsg = document.getElementById("NSPEJobPostSelectPackage_lblErrorMsg");
	ErrorMsg.innerHTML = "";
	var bIsComplete = false;
	if (col!=null)
	{
		var colLength = 0;
		var iCount = 0;
		for (var i=0; i<col.length; i++)
		{
			if(col[i].type == "radio")
			{
				colLength++;
			}	
		}
		for (var i=0; i<col.length; i++)
		{
			if ((col[i].type == "radio") && (col[i].checked))
			{
				iCount++;
			}
		}
		var iSum = colLength - iCount;
		if(iSum == 0)
		{
			bIsComplete = true;
			ButtonClickDisable(btnCancel);
			ButtonClickDisable(btnPublishNow);
			ButtonClickDisable(btnPyblishLater);
		}else
		{
			ErrorMsg.innerHTML = "Please select the package before continuing.";
			bIsComplete = false;
			ButtonClickEnable(btnCancel);
			ButtonClickEnable(btnPublishNow);
			ButtonClickEnable(btnPyblishLater);
		}
		
	}
	return bIsComplete;
}
function JobPostSelectPackageCancelClick(e,sMsg,oCtl)
{
	var btnCancel = document.getElementById("NSPEJobPostSelectPackage_buttonCancel");
	var btnPublishNow = document.getElementById("NSPEJobPostSelectPackage_buttonPublishNow");
	var btnPyblishLater = document.getElementById("NSPEJobPostSelectPackage_buttonPublishLater");
	ButtonClickDisable(btnCancel);
	ButtonClickDisable(btnPublishNow);
	ButtonClickDisable(btnPyblishLater);
	if (!confirm(sMsg))
	{
		ButtonClickEnable(btnCancel);
		ButtonClickEnable(btnPublishNow);
		ButtonClickEnable(btnPyblishLater);
		if (e)
			{
				e.returnValue = false;
				if(!(navigator.appVersion.indexOf('MSIE') != -1))
				{return e.preventDefault();		
				}
				//
			}		
		return false;
	}else
	{				
		__doPostBack('NSPEJobPostSelectPackage:buttonCancel','');		
	}
	return true;
}
function btnSubmit_Click()
{
	var oState = document.getElementById("").value;
	alert(oState);
	__doPostBack('NSPEJobPostSelectPackage:buttonContinue','');
}
function PromptButtonAction(e,sMsg, oCtl)
{	
	if (!confirm(sMsg))
	{
		ButtonClickEnable(oCtl);
		if (e)
			{
				e.returnValue = false;
				if(!(navigator.appVersion.indexOf('MSIE') != -1))
				{return e.preventDefault();		
				}
				//
			}		
		return false;
	}else
	{				
		__doPostBack('NSPEJobPostSelectPackage:buttonCancel','');		
	}
	return true;	
}
function ButtonClickDisable(oCtl)
{
	if(oCtl != "undefined")
	{
		document.getElementById(oCtl.id).disabled = true;
	}
}
function ButtonClickEnable(oCtl)
{
	if(oCtl != "undefined")
	{
		document.getElementById(oCtl.id).disabled = false;
	}
}
function FormValidation(aFieldsToValidate,oPrintError)
{
	//var aFields = new Array("NSPEJobPosting_j01_company_name","NSPEJobPosting_j01_adr_line1","NSPEJobPosting_j01_zip");
	var aFields = aFieldsToValidate;
	var PrintError = document.getElementById(oPrintError);
	var bIsRequireValidate = false;
	var bIsValid = false;
	if(PrintError != "undefinded")
	{
		PrintError.innerHTML = "";
		var cField;
		var iCount = 1;
		var sErrField = "";
		var sSubString = "";
		var sComma = ", ";
		for(var oCtl in aFields)
		{
			//select-one
			
			if(iCount == aFields.length-1){sComma = ", and ";}
			else{sComma = ", ";}
			
			var ctlLength = TrimAll(document.getElementById(aFields[oCtl]).value);
				if(ctlLength.length == 0)
				{
					var strSub = document.getElementById(aFields[oCtl]).getAttribute("displayName")+sComma;
					sErrField += strSub;
				}
			iCount++;
			
		}
		if(iCount == aFields.length)
		{bIsValid = true;}
		if(sErrField.substr(sErrField.length-2, 1) == ",")
		{
			sErrField = sErrField.substr(0, sErrField.length - 2);
		}
		//var sEq = (sErrField.length-2);
		if(sErrField.length > 0)
		{
			//PrintError.innerHTML = "Please enter the following field before you continue: "+ sErrField;
			PrintError.innerHTML = "All fields marked with * are required.";
			bIsRequireValidate = false;
		}else{bIsRequireValidate = true;}
		
		
	}
	//if((bIsEmailValidate)&&(bIsRequireValidate))
	//{bIsValid = true;}
	//return bIsValid;
	return bIsRequireValidate;
}
//

function doMask(oCtl, e) {
	var reOneOrMoreDigits = /[\d+]/;
	var reNoDigits = /[^\d]/gi;
	var textBox = document.getElementById(oCtl.id);
	e = e || window.event;
	//e = window.event;
	evtKey = e.which || e.keyCode;
	//var keyCode = event.keyCode;
	var keyCode = evtKey;
	// enter, backspace, delete and tab keys
	if(keyCode == 13 || keyCode == 8 || keyCode == 9 || keyCode == 46)
		return true;
	var keyCharacter = cleanKeyCode(keyCode);
	var val = textBox.value;
	var mask = textBox.mask;
	
	if(reOneOrMoreDigits.test(keyCharacter) == false)
		return false;
	// get value minus any masking by removing all non-numerics
	val = val.replace(reNoDigits,'');
	val += keyCharacter;
	textBox.value = val.maskValue(mask);
	setCaretAtEnd(textBox);
	return false;
}
String.prototype.maskValue = function(mask) {
	var retVal = "(###) ###-####"; 
	
	var val = this;
	//loop thru mask and replace #'s with current value one at a time
	for(var i=0;i<val.length;i++) {
		retVal = retVal.replace(/#/i, val.charAt(i));
	}
	// get rid of rest of #'s
	retVal = retVal.replace(/#/gi, "");
	return retVal;
}
function cleanKeyCode(key)
{
	switch(key)
	{
		case 96: return "0"; break;
		case 97: return "1"; break;
		case 98: return "2"; break;
		case 99: return "3"; break;
		case 100: return "4"; break;
		case 101: return "5"; break;
		case 102: return "6"; break;
		case 103: return "7"; break;
		case 104: return "8"; break;
		case 105: return "9"; break;
		default: return String.fromCharCode(key); break;
	}
}
function setCaretAtEnd (field) {
  if (field.createTextRange) {
    var r = field.createTextRange();
    r.moveStart('character', field.value.length);
    r.collapse();
    r.select();
  }
}
//--->
//------------>
function JobPostingValidation()
{
	var aFields = new Array("NSPEJobPosting_j01_company_name","NSPEJobPosting_j01_adr_line1","NSPEJobPosting_j01_zip","NSPEJobPosting_j01_phone");
	var bIsEmailValidate = false;
	var bIsFieldValidate = false;
	var PrintError = document.getElementById("NSPEJobPosting_lblErrorMsg");
	var bIsValidate = false;
	bIsFieldValidate = FormValidation(aFields,"NSPEJobPosting_lblErrorMsg");
	//email
		var EmlField = document.getElementById("NSPEJobPosting_j01_email");
		if(EmlField.value.length > 0)
		{
			var aResult = ValidateEmailAddress(EmlField.value);			
			if(!aResult['IsEmail'])
			{
				//PrintError.innerHTML += "<br />" + aResult['ErrorMsg'];
				PrintError.innerHTML = "All fields marked with * are required.";
				return false;
			}
			if(aResult['IsEmail'])
			{
				bIsEmailValidate = true;
			}
		}else if(EmlField.value.length == 0)
		{bIsEmailValidate = true;}
	if((bIsFieldValidate)&&(bIsEmailValidate))
	{
		bIsValidate = true;
		var oState = document.getElementById("NSPEJobPosting_j01_sta_code").value;
		//alert(oState);
		__doPostBack('NSPEJobPosting:buttonContinue',oState);
		//btnSubmit_Click();
	}
	return bIsValidate;
}
function JobPostInfoValidation()
{
	//var aFields = new Array("NSPEJobPostInformation_j01_company_name","NSPEJobPostInformation_j01_adr_line1","NSPEJobPostInformation_j01_zip","NSPEJobPostInformation_j01_city","NSPEJobPostInformation_j01_title","NSPEJobPostInformation_j01_description");
	var aFields = new Array("NSPEJobPostInformation_j01_company_name","NSPEJobPostInformation_j01_zip","NSPEJobPostInformation_j01_city","NSPEJobPostInformation_j01_title","NSPEJobPostInformation_j01_description");
	var bIsEmailValidate = false;
	var bIsFieldValidate = false;
	var PrintError = document.getElementById("NSPEJobPostInformation_lblErrorMsg");
	bIsFieldValidate = FormValidation(aFields,"NSPEJobPostInformation_lblErrorMsg");
	var oNewControl = document.getElementById("NSPEJobPostInformation_j01_j04_key");
	var bIsValidate = false;
	//email
		var EmlField = document.getElementById("NSPEJobPostInformation_j01_email");
		if(EmlField.value.length > 0)
		{
			var aResult = ValidateEmailAddress(EmlField.value);			
			if(!aResult['IsEmail'])
			{
				PrintError.innerHTML += "<br />" + aResult['ErrorMsg'];
				return false;
			}
			if(aResult['IsEmail'])
			{
				bIsEmailValidate = true;
			}
		}else if(EmlField.value.length == 0){bIsEmailValidate = true;}
	if (bIsFieldValidate){
	  var cbxApplyEmail = document.getElementById("NSPEJobPostInformation_j01_apply_fax_flag");
	  var cbxApplyFax = document.getElementById("NSPEJobPostInformation_j01_apply_email_flag");
	  var cbxApplyWeb = document.getElementById("NSPEJobPostInformation_j01_apply_web_flag");
	  var bAnAppMethod = (cbxApplyWeb.checked || cbxApplyFax.checked || cbxApplyEmail.checked);
	  if (bAnAppMethod == false){
	    PrintError.innerHTML += "<br /> Please select an application method";
	  }
	  bIsFieldValidate = bIsFieldValidate && bAnAppMethod;
	}
	if(oNewControl.options[oNewControl.selectedIndex].value == "")
	{
		PrintError.innerHTML += "<br />status is required.";
	}else
	{
		if((bIsFieldValidate)&&(bIsEmailValidate))
		{
			bIsValidate = true;
			bIsValidate = true;
			var oState = document.getElementById("NSPEJobPostInformation_j01_sta_code").value;
			//alert(oState);
			__doPostBack('NSPEJobPostInformation_buttonContinue',oState);
		}
	}
	
	return bIsValidate;
}
function getStateJobInformation()
{
	//var oState = document.getElementById("NSPEJobPostInformation_j01_cty_code").value;
	//alert(oState);
			//__doPostBack('NSPEJobPostInformation_buttonContinue',oState);
}
function JobPostPackageValidation()
{
	//CC fields validator
	var aFields = new Array("NSPEJobPostSelectPackage_pin_cc_number","NSPEJobPostSelectPackage_pin_cc_cardholder_name","NSPEJobPostSelectPackage_pin_cc_security_code");
	var bIsExpireDateSelected = false;
	var bIsFieldValidate = false;
	var PrintError = document.getElementById("NSPEJobPostSelectPackage_lblErrorMsg");
	var bIsValidate = false;
	bIsFieldValidate = FormValidation(aFields,"NSPEJobPostSelectPackage_lblErrorMsg");
	var ExpireDateDDL = document.getElementById("NSPEJobPostSelectPackage_pin_cc_expire");
	if(ExpireDateDDL.selectedIndex == 0)
	{
		PrintError.innerHTML = PrintError.innerHTML.replace("and","")+", and expiration date";
	}else
	{
		bIsExpireDateSelected = true;
	}		
	//if((bIsFieldValidate)&&(bIsEmailValidate))
	if((bIsFieldValidate)&&(bIsExpireDateSelected))
	{
		bIsValidate = true;
	}
	return bIsValidate;	
}
function isNumberEnter(evt)
{
	var charCode = (evt.which) ? evt.which : event.keyCode
	//var lblErrorMsg = document.getElementById("NSPEJobPosting_lblErrorMsg");
	 
	 if (charCode > 31 && (charCode < 48 || charCode > 57)){
		//document.write("<p>Please enter validate number.</p>");
		return false;
	 }		
	 return true;

}

//----------->

//End Email mask
// new Utilities
function textCounter(field,cntfield,maxlimit) {
	var xField = document.getElementById(field);
	var xcntfield = document.getElementById(cntfield);
	if (xField.value.length > maxlimit)
	{
		xField.value = xField.value.substring(0, maxlimit);
	}else
	xcntfield.value = maxlimit - xField.value.length;
}

//check if string s  is empty
function isEmpty(s)
{   return ((s == null) || (s.length == 0))
}