var arrInst;
function validate(strDiv)
{
	var bolValidate = true;
	for (var i=0; i < document.Form1.length; i++)
	{
		var obj = document.Form1[i];
		if(obj.validation)
		{
			arrInst=obj.validation.split(',');
			if(((strDiv) && (arrInst[0] == strDiv)) || (strDiv==''))
			{
				if(arrInst[1] == 'true')
				{
					switch(arrInst[2])
					{ 
						case 'txt': if(!obj.value || (Len(replaceChars(obj.value,' ','')) == 0)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}break;
						case 'ddl': if((obj.options(obj.selectedIndex).value=='-1') || (obj.options(obj.selectedIndex).value=='')){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}break; 
						case 'cmt': if((obj.value =='<ADD NEW COMMENT HERE>') ||  (Len(replaceChars(obj.value,' ','')) == 0)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}break;
						case 'xml': if((Len(eval('xml'+arrInst[5]).xml) > 15) && (!obj.value)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}break;
						case 'lst': if(!obj.value){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}break;
						case 'grp': if(obj.length==0){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}break;
						default: break;
					}
				}
				if (bolValidate)
				{
					switch(arrInst[3])
					{
						case 'int': if((obj.value.length > 0) && isNaN(obj.value)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{if((obj.value.length > 0) && ((obj.value.indexOf('.')>=0) || (obj.value.indexOf(',')>=0)) ){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}}break;
						case 'abs': if((obj.value.length > 0) && isNaN(obj.value)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{if((obj.value.length > 0) && ((obj.value.indexOf('.')>=0) || (obj.value.indexOf(',')>=0))){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{if((obj.value.length > 0) && obj.value < 0){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}}}break;
						case 'ari': if((obj.value.length > 0) && isNaN(obj.value)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{if((obj.value.length > 0) && ((obj.value.indexOf('.')>=0) || (obj.value.indexOf(',')>=0))){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{if( ((obj.value.length > 0) && ((obj.value < 1) || (obj.value > 99999))) ){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}}}break;
						case 'dec': if((obj.value.length > 0) && isNaN(obj.value)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}break;
						case 'zip': if((obj.value.length > 0) && (obj.value.indexOf('-')==-1)){if(obj.value.length <5){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else if(isNaN(obj.value)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}}else if((obj.value.length > 0) && (obj.value.length < 10)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else if(isNaN(replaceChars(obj.value,'-',''))){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}break;
						case 'pho': if(obj.value!=FilterByMask(13,obj.value,'(###) ###-####')){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else if((obj.value.length > 0) && ( (obj.value.length!=14) || isNaN(replaceChars(replaceChars(replaceChars(replaceChars(obj.value,'(','') ,')','') ,'-','') ,' ','')))){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}break;
						case 'loc': if((document.all.ddlProgram.options(document.all.ddlProgram.selectedIndex).value) < '990' && (obj.value.length == 0)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{if((arrInst[1]=='false') && (obj.value.length == 0)){showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}}break;
						case 'bay': if((obj.value.length > 0) && ((obj.value > 999) || (obj.value < 0) || (isNaN(obj.value)))){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}break;
						case 'cfm': if(bolPWChanged){if((obj.value.length == 0) ||((obj.value.length > 0) && !(obj.value == document.all.txtPassword.value))){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}}else{if((arrInst[1]=='false') && (obj.value.length == 0)){showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}}break;
						case 'dat': if(arrInst[2]=='xml'){if((Len(eval('xml'+arrInst[5]).xml) > 15) && (obj.value.length > 0) && !validateDate(obj.value)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{if((arrInst[1]=='false') && (obj.value.length == 0)){showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}}break;}else{if((obj.value.length > 0) && !validateDate(obj.value)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{if((arrInst[1]=='false') && (obj.value.length == 0)){showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}}break;}
						case 'eml': 
						if((obj.value.length > 0) && ((obj.value.indexOf('@')==-1) || (obj.value.indexOf('.')==-1)))
						{
							bolValidate = false;
							showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);
						}
						else
						{
							if((arrInst[1]=='false') && (obj.value.length == 0))
							{
								showhideErr(obj,arrInst[4], false,bolValidate,arrInst[5]);
							}
							else
							{
								showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);
							}
						}break;
						case 'pin': if((obj.value.length > 0) && isNaN(obj.value)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{if(!(eval(obj.value.length)==4)){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else if((obj.value.length >0) && ((obj.value.indexOf('.')>=0) || (obj.value.indexOf(',')>=0)) ){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}}break;
						case 'dte': if((obj.value.length > 0) && (!isDate(obj.value))){bolValidate = false;showhideErr(obj,arrInst[4],true,bolValidate,arrInst[5]);}else{showhideErr(obj,arrInst[4],false,bolValidate,arrInst[5]);}break;
						default: break;
					}
				}
			}
		}
	}
	return bolValidate;
}

function showhideErr(obj,msg,show,bolValidate,suffix)
{
	try{
		
		if(suffix.length==0)
		{
			try
			{
				arrObj=obj.validation.split(',');

				suffix = arrObj[5];
			}
			catch(e){}
		}
	}
	catch(e){}
	//alert('suf:'+suffix);
	/*
	if (!suffix)
	{
		suffix='';
	}
	else
	{
		suffix = getRecord(obj.recordNumber,suffix);
	}
	*/
	var strBase = Right(obj.id,Len(obj.id)-3);
	if(show)
	{
		/*
		eval('document.all.memspn'+strBase+suffix).innerHTML = 
		'<img id="memimg'+strBase+'" onmouseover="showMemo(document.all.memimg'+strBase+',\''+strBase+'\');" src="images/memo/validation.gif" style="cursor:hand;">'
		+'<span id="memspnErr'+strBase+'" style="visibility:hidden;display:none">'+msg+'</span>';
		*/
		
		var sInner =
		'<img id="memimg'+strBase+'" onmouseover="showMemo(document.all.memimg'+strBase+',\''+strBase+'\');" onmouseout="hideddrivetip()" src="images/memo/validation.gif" style="cursor:hand;">'
		+'<span id="memspnErr'+strBase+'" style="visibility:hidden;display:none">'+msg+'</span>';
		
		var sInnerHeader =
		'<img id="memheadimg'+strBase+'" onmouseover="showMemo(document.all.memimg'+strBase+',\''+strBase+'\');" src="images/memo/validation.gif" style="cursor:hand;">';
		
		eval('document.all.memspn'+strBase).innerHTML = sInner;

		try{eval('document.all.accspn'+suffix).innerHTML =sInnerHeader;}catch(e){}
		if(!bolValidate)
		{
			document.all.spnRollMemo.innerHTML = 'Cannot continue, see error(s) below.';
			showInfoDiv(2);
			bolSave = true;
			//document.all.spnBigError.style.visibility = 'visible';
			//document.all.spnBigError.style.display = 'block';
		}
	}
	else
	{
		eval('document.all.memspn'+strBase).innerHTML = '';
		if(bolValidate)
		{
			//document.all.spnBigError.style.visibility = 'hidden';
			//document.all.spnBigError.style.display = 'none';
		}
	}
}

function showMemo(linkObj,baseObj)
{
	ddrivetip(eval('document.all.memspnErr'+baseObj).innerHTML, '#DFDFFF',250);
	 /*
	var popupObj = window.createPopup();
	var popupBodyObj = popupObj.document.body;
	
	var menuID = document.all.tblMemo;
	document.all.divMemo.style.visibility='visible';
	document.all.divMemo.style.display='block';
	document.all.spnMemo.innerHTML = eval('document.all.memspnErr'+baseObj).innerHTML;
	
	popupBodyObj.innerHTML = menuID.outerHTML;
	popupObj.show(0, eval(linkObj.offsetHeight +10), menuID.offsetWidth, menuID.offsetHeight, linkObj);
	*/
}