var HTMLEditorSRV='src="../graphics';
var HTMLEditorCLN='src="C:\\Inetpub\\wwwroot\\precheckN\\graphics';
function hideMe(iBegin,iEnd) {
	var elem=null;
	var i=0;
	for (i=iBegin;i<=iEnd;i++) {
		elem=document.all['TIDshouldHide' + i];
		if (elem!=null) elem.style.display='none';
	}
}
function sortMe(SORTBY) {
    //alert('here');
    var fm=document.frm;

    //alert(fm['SORTBY'].value);
    //alert(fm['SORTORDER'].value);
    if (fm['SORTBY'].value==SORTBY) {
        if (fm['SORTORDER'].value=='DESC') {fm['SORTORDER'].value='';} else {fm['SORTORDER'].value='DESC';};
    } else {
        fm['SORTBY'].value=SORTBY;
        fm['SORTORDER'].value='';
    }
    fm.submit();
}
function iAmDate() {
	var elem=window.event.srcElement;
	var sDD=elem.value;
	var DD1="";
	var DD2="";
	var DD3="";
	var HH=""
	if (sDD.indexOf("/")>0) return;
	if (sDD.indexOf("-")>0) return;
	var i=0;
	i=sDD.indexOf(" ");
	if (i>0){
		HH=sDD.slice(i);
		sDD=sDD.slice(0,i);
	}
	if (isNaN(parseInt(sDD))) return;
	
	if (sDD.length>8 || sDD.length<5) {
		alert("Please enter a valid Date in MM/DD/YYYY format");
		elem.value='';
		elem.focus();
		return;	
	}
	
	if (sDD.length==5) {
		DD1=sDD.slice(0,1)
		DD2=sDD.slice(1,3)
		DD3=sDD.slice(3,5)
	}
	if (sDD.length==6) {
		DD1=sDD.slice(0,2)
		DD2=sDD.slice(2,4)
		DD3=sDD.slice(4,6)
	}
	if (sDD.length==7) {
		DD1=sDD.slice(0,1)
		DD2=sDD.slice(1,3)
		DD3=sDD.slice(3,7)
	}
	if (sDD.length==8) {
		DD1=sDD.slice(0,2)
		DD2=sDD.slice(2,4)
		DD3=sDD.slice(4,8)
	}		
	sDD=DD1+'/' + DD2 + '/' + DD3
	//alert(	sDD)
	if (isDate(sDD)) {
		if (HH>'') sDD+=' '+ HH;
		elem.value=sDD ;
	} else {
		alert("Please enter a valid Date in MM/DD/YYYY format");
		elem.value='';
		elem.focus();
		return;
	}
}
function iAmSSN() {
	var elem=window.event.srcElement;
	var SSN=elem.value;
	var SS1="";
	var SS2="";
	var SS3="";
	SSN=jsReplace(SSN,"-","");
	var i=0;

	if (SSN.length!=9 || isNaN(parseInt(SSN))) {
		alert("Please enter a valid SSN in NNN-NN-NNNN format");
		elem.value='';
		elem.focus();
		return
	}
	SSN=SSN.slice(0,3) + '-' + SSN.slice(3,5) + '-' + SSN.slice(5,9);
	elem.value=SSN;
}
function dateStampMe() {
	event.srcElement.value=myNowSring();
}
function myDateString(cDate) {
	if (cDate==null) {
		cDate = new Date(); 
	}
	var YYYY=cDate.getFullYear();
	var MM=cDate.getMonth() + 1;
	var DD=cDate.getDate();
	return MM + '/' + DD + '/' + YYYY;	
}



function myNowSring(cDate) {
	if (cDate==null) {
		cDate = new Date(); 
	}
	var MN=cDate.getMinutes()

	var HH=cDate.getHours();

	if (HH>0 && MN>0) return myDateString(cDate) + ' ' + HH + ':' + MN
	return myDateString(cDate);
}
function isDate(sV) {
 return !(isNaN(Date.parse(sV)));
}
function addNote(key1,key2,key3) {
	var sUrl="../Genutil/NotationAdd.aspx?Key1=" + escape(key1)
		+ "&Key2=" + escape(key2)
		+ "&Key3=" + escape(key3)
		+ "&RND=" + Math.random();
	openUrlWH(sUrl,"Notation",450,300);
}
function setBG(sColor) {
	elem=event.srcElement;
	if (elem.tagName!='TD') {
		elem=getParentElem(elem,'TD');
		if (elem==null) return;
	}
	elem.style.background=sColor;
}
function getParentElem(elem,sTagName) {
	if (elem.tagName==sTagName) {
		return elem;
	}
	if (elem.parentElement!=null && elem.parentElement.tagName!='BODY') {
		return getParentElem(elem.parentElement,'TD');
	} else {
		return null;
	}
}
function QuitMe() {
	window.close();
}
function UpdateThenQuit() {
	try {
		window.opener.location.reload();
	} catch(e) {
	
	}
	window.close();
}
function fixSpecialChar(sText) {
	var sRetv=sText;
	return sRetv;
}
function toggleHTML(IDTextarea,IDIFrame) {
	var elem=window.event.srcElement;
	if (elem.value=='Plain Text') {
		document.all[IDTextarea].style.display="";
		document.all[IDIFrame].style.display="None";
		elem.value='HTML Editor';	
		document.all[IDTextarea].value=stripHTML(document.frames[IDIFrame].document.tbContentElement.DocumentHTML);
	} else {
		document.all[IDTextarea].style.display="None";
		document.all[IDIFrame].style.display="";
		elem.value='Plain Text';
		document.frames[IDIFrame].document.tbContentElement.DocumentHTML=convertImgRev(document.all[IDTextarea].value);
	}
}
function convertImg(sRet) {
	return jsReplace(sRet,HTMLEditorCLN,HTMLEditorSRV)
}
function convertImgRev(sRet) {
	return jsReplace(sRet,HTMLEditorSRV,HTMLEditorCLN)
}
function stripHTML(sRet) {
	var p1=sRet.indexOf('<BODY>');
	if (p1>0) sRet=sRet.slice(p1+6);
	p1=sRet.indexOf("</BODY>");
	if (p1>0) sRet=sRet.slice(0,p1);
	sRet=fixSpecialChar(sRet); 
	sRet=convertImg(sRet);
	return sRet;
}
function markList(gList) {
	for (var i=0;i<gList.length;i++) {
		gList.options[i].selected = true;
	}
}
function toASP(sASP) {
	document.frm["NextASP"].value=sASP;
	document.frm.submit();
}
function shouldDelete() {
	window.confirmMessage='Are you sure you want to delete this record>';
}
function toFixDigit(elemvalue,iDigit) {
	var iBigNum=Math.pow(10,iDigit);
	if (elemvalue=='') return '';
	elemvalue=jsReplace(elemvalue,",","");
	if (isNaN(parseFloat(elemvalue))) return '';
	var p = (elemvalue).indexOf(".");
	if (p==-1) {
		elemvalue = elemvalue + "." + "0000000".slice(0,iDigit);
		return elemvalue;
	} 
	//Do not know how to handle this yet...
	elemvalue = (parseInt(parseFloat(elemvalue)*iBigNum+0.5)/iBigNum).toString();
	p = (elemvalue).indexOf(".");
	if (p==-1) {
		elemvalue = elemvalue + "." + "0000000".slice(0,iDigit);
		return elemvalue;
	}
	p += iDigit +1;
	if ((elemvalue).length > p) {
		elemvalue = (elemvalue).slice(0,p);
		return elemvalue;
	}
	if ((elemvalue).length < p) {
		elemvalue += ("000000000").slice(0,p-(elemvalue).length);
		return elemvalue;
	}
	return elemvalue;
}
function setASP(sASP) {
	document.frm["NextASP"].value=sASP;
	//alert(document.frm["NextASP"].value);
}
function appndSEL() {
	var elemName=window.event.srcElement.name;
	if (elemName.slice(0,4)!='CHK:') return;
	elemName=elemName.slice(4);
	var p=elemName.indexOf(':');
	elemName=elemName.slice(0,p);
	var i=0;
	var tV="";
	while(frm[i]) {
		if ((frm[i].name).slice(0,elemName.length +5)=='CHK:' + elemName + ':') {
			if (frm[i].checked) tV += ', ' + (frm[i].name).slice(elemName.length +5);
		}
		i+=1;
	}
	if (tV.length>0) tV=tV.slice(2);
	document.frm[elemName].value=tV;
}
function toDefFloat(sV,sDef) {
	var fv=0;
	fv=parseFloat(sV);
	if (isNaN(fv)) return sDef;
	return fv;
}
function shouldShowWindow(ii) {

}
function jsReplace(sValue,sSearch,sReplace) {
	var i;
	var j = sSearch.length;
	var sOldValue=sValue;
	var sNewValue="";
	i = sOldValue.indexOf(sSearch);

	while (i !=-1) {
		sNewValue +=  ( (i==0) ? "": sOldValue.slice(0,i) ) + sReplace;
		sOldValue=( (i + j > sOldValue.length) ? "" :sOldValue.slice(i + j, sOldValue.length) );
		i = sOldValue.indexOf(sSearch);
	}
	return sNewValue + sOldValue;
}
function jsTrim(sValue) {
	return jsRTrim(jsLTrim(sValue));
}
function jsLTrim(sValue) {
	if (sValue.length==0) return '';
	if (sValue.charAt(0)==' ') return jsLTrim(sValue.slice(1)); else return sValue;
}
function jsRTrim(sValue) {
	if (sValue.length==0) return '';
	if (sValue.charAt(sValue.length-1)==' ') return jsRTrim(sValue.slice(0,sValue.length-1)); else return sValue;
}

function openUrl(sUrl,sName,features) {
	var x=window.open(sUrl,sName,features);
	x.focus();
}
function openUrlWH(sUrl,sName,iW,iH) {
	var iL=0;
	var iT=0;
	iT=(window.screen.availHeight-iH)/2;
	iL=(window.screen.availWidth-iW)/2;
	var features="resizable=yes,scrollbars=yes,height=" + iH + ",width=" + iW
			+ ",left=" + iL + ",top=" + iT;
	window.open(sUrl,sName,features);
	//x.focus();
}
function setConfirmMessage(sMsg) {
	window.confirmMessage=sMsg;
}
function ValidateFm(frm)
{	
	var strErrorMsg;
	var i=0;
	var sType="";
	var sName=""
	var sZip="";
	var iWindow;
	var fourth;
	var tagType="";
	var cc;
	var bOK=false;
	if (window.confirmMessage!=null) {
		if (window.confirmMessage!='') {
			strErrorMsg=window.confirmMessage;
			window.confirmMessage="";
			if (!confirm(strErrorMsg)) return false;
			return true;
		}
	}

	while(frm[i])
	{	

		
		fourth='';
		try {
			fourth=frm[i].tag.charAt(3);
			tagType=(frm[i].type).toUpperCase();
		} catch (e) {}
		/*Supposed passs in 'TTT:ID'*/
		if(fourth==':')
		{

			sType=frm[i].tag.slice(0,3);
			iWindow=parseInt(sType.charAt(2))
			sName=(frm[i].tag).slice(4);
			sName=sName.replace("_"," ");		
			if(sType.charAt(1)=="N" && !frm[i].value=="") 
			{
					if(isNaN(frm[i].value))
					{
						strErrorMsg= sName + " must be a valid Number!";
						alert(strErrorMsg);
						shouldShowWindow(iWindow);
						frm[i].focus();			
						return false;
					}			
			}
			if(sType.charAt(1)=="P" &&!frm[i].value=="") 
			{			
					if(!(/^\d{3}\W\d{3}\W\d{4}$/.test(frm[i].value)))
					{
						strErrorMsg= " Phone number must be of the form 999-999-9999";
						alert(strErrorMsg);
						shouldShowWindow(iWindow);
						frm[i].focus();			
						return false;
					}			
			}
			if(sType.charAt(1)=="D" && !frm[i].value=="")
			{
				if(isNaN(Date.parse(frm[i].value)))
				{
					strErrorMsg= sName + " must be a valid Date!";
					alert(strErrorMsg);
					shouldShowWindow(iWindow);
					frm[i].focus();			
					return false;	
				}							
			}
			if(sType.charAt(0)=="C") {				
				var p1=sName.indexOf(":");
				var p2=sName.indexOf(":",p1+1);
				var sCheckID=sName.slice(0,p1)
				var iIDX=parseInt(sName.slice(p1+1,p2));
				sName=sName.slice(p2+1);
				if (frm[sCheckID][iIDX].checked && frm[i].value=="") {
	
					strErrorMsg= sName + " cannot have a blank value!";
					alert(strErrorMsg);	
					shouldShowWindow(iWindow);
					frm[i].focus();			
					return false;
				}
			}
			if(sType.charAt(0)=="R") {
				if (tagType=='RADIO') {
					bOK=false;
					for (cc=0;cc<frm[frm[i].name].length;cc++) {
						if (frm[frm[i].name][cc].checked) bOK=true;
					}
					if (!bOK) {
						strErrorMsg= sName + " cannot have a blank value!";
						alert(strErrorMsg);	
						shouldShowWindow(iWindow);
						frm[i].focus();			
						return false;
					}
				} else {
					if (frm[i].value=="")
						{
							strErrorMsg= sName + " cannot have a blank value!";
							alert(strErrorMsg);	
							shouldShowWindow(iWindow);
							frm[i].focus();			
							return false;
						}
				}
			}
			if(sType.charAt(1)=="Z" && !frm[i].value=="") 
			{			
					if((sType.charAt(2)=="1" && !(/^\d{5}$/.test(frm[i].value))) || (sType.charAt(2)=="2" && !(/^\d{4}$/.test(frm[i].value))))
					{
						strErrorMsg= " ZipCode must be of the form 99999-9999";
						alert(strErrorMsg);
						shouldShowWindow(iWindow);
						frm[i].focus();			
						return false;
					}			
			}		
			if(sType.charAt(1)=="S" && !frm[i].value=="") 
			{			
					if(!(/^\d{3}\W\d{2}\W\d{4}$/.test(frm[i].value)))
					{
						strErrorMsg= sName + " must be of the form 999-99-9999";
						alert(strErrorMsg);
						shouldShowWindow(iWindow);
						frm[i].focus();			
						return false;
					}			
			}
			if (sType.charAt(1)=="M" && !frm[i].value=="")
			{	
				//var e1,e2,j;
				//e1="@";
				//e2=".";
				//if(frm[i].value.indexOf("@") <= 0 || frm[i].value.lastIndexOf(".") < frm[i].value.indexOf("@"))		
				//{
					//alert ( frm[i].value + " is not a correct e-mail address!" );
					//frm[i].focus();	
					//return false;
				//} 									
			}
		}
		i++;
		
	}	
	return true;
}