//Global Menu variables
var bBtf = false;
var bFile = false;
var bTran = false;
var bRpt = false;
var bHlp = false;
var bSec = false;
var bGbl = false;
var bPwd = false;

//VERISIGN INFO Scripts
function popVerisign() {
	var url = 'https://digitalid.verisign.com/as2/2a348dc944cc3195711b1166f107b98f';
	sealWin=window.open(url,"win",'toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=1,width=500,height=450');
	self.name = "mainWin";
}

//FRAME CHECKING ROUTINES
function CheckFrames(strPage) {
	if (top.location.href != location.href){
		if(parent.frames.length!=0){
			parent.location.href=strPage;
		}
	}
}

function ForceFrames(strPage) {
	if (parent.location.href == self.location.href) {
    	window.location.href = 'SecMenuPage.jsp?Page='+strPage;		
//    } else {
//	    if (strPage!='SecMenuPage.jsp') {
//		    if (document.all["News"] != null ) {
//		    	parent.frames["menu"].location.href= "NavAgent.jsp?Access=10&Admin=Y&Page=";
//		    }
//		}
	}
}
	
//Function for jumping to other URL
function jumptoURL(hreflink) {
	window.location = hreflink;
}

//Function for jumping to other URL
function setMainURL(hreflink) {
	parent.frames.main.location = hreflink;
}

//Function for open new window with passed URL
function openNewURL(hreflink) {
	if ((hreflink.indexOf("MasterReport")>-1)||(hreflink.indexOf("HlpPDF")>-1) ||
		(hreflink.indexOf("FileDownload")>-1)) {
		var strHelpOptions = "";
		strHelpOptions += ",location=no";
		strHelpOptions += ",toolbar=no";		
		strHelpOptions += ",menubar=no";
		strHelpOptions += ",status=no";	
		strHelpOptions += ",resizeable=yes";	
		window.open(hreflink,"LookUp",strHelpOptions);
	} else {
		window.open(hreflink);
	}
}

//Function for combo/listbox positioning
function listPosition(srchText, listCtrl){ 
	var size, text, value; 
	var pos;
	
	size = listCtrl.size; 
	text = srchText.toLowerCase(); 
	pos = -1;

	if (trim(text)!="") {
		//Check is listbox ctrl is multiselect true
		if (listCtrl.multiple) {
			//Clear all current selections
			for(var ii=0; ii<listCtrl.options.length; ii++) { 
				if(listCtrl.options[ii].selected) { 
			       	listCtrl.options[ii].selected=false; 
			    } 
			} 
		}
		
		for(var ii=0, opt=listCtrl, n=opt.length; ii<n; ii++) { 
			value = opt[ii].text.toLowerCase(); 
			if(value.indexOf(text)==0) { 
		    	//opt[ii+size<n?ii+size:n-1].selected=true; 
		       	//opt[ii].selected=true; 
		       	pos = ii;
		       	break; 
		    } 
		} 
	} else {
		if (listCtrl.multiple) {
			//Clear all current selections
			for(var ii=0; ii<listCtrl.options.length; ii++) { 
				if(listCtrl.options[ii].selected) { 
			       	listCtrl.options[ii].selected=false; 
			    } 
			} 
		}
	}
	return pos;
} 

//Function for rounding money entries
function roundTo(num,accuracy) {
	if (!accuracy) accuracy=2
		return Math.round(num*Math.pow(10,accuracy))/Math.pow(10,accuracy);
}
	
//Function for switching Inquiry Mode to Entry Mode
function ModeSwitch(strURL,logID,transID) {
	var strParms = "";
	var strQ = "";
	if (logID!='') {
		strParms = strParms + "logID="+logID+"&";
	}
	if (transID!='') {
		strParms = strParms + "transID="+transID+"&";
	}
	if (strParms!='') {
		strParms = strParms.substring(0,strParms.length-1);
	}
	if (strURL.indexOf("?")>-1) {
		strQ = "&";
	} else {
		strQ = "?";
	}
	strURL = strURL + strQ + "reset=Y&" + strParms;
	//alert('URL:'+strURL);
	jumptoURL(strURL);
}

//GENERAL FIELD VALIDATION ROUTINES

//Function to check an array of Required fields and list all those that have
//no entry.
function valFormReqFields(srcForm, reqFields, reqNFields) {
	//Variables
	var missFlds = "\nThe following field(s) require entries:\n\n\t";
	var reqFldsOK = true;
	
	// First check all required fields have been populated.
	for (var fldNo=0; fldNo<reqFields.length; fldNo++) {
		var wrk = trim(srcForm.elements[reqFields[fldNo]].value);
		srcForm.elements[reqFields[fldNo]].value = wrk;
		if (srcForm.elements[reqFields[fldNo]].value == "") {
			missFlds += reqNFields[fldNo] + "\n\t";
			reqFldsOK = false;
		}	
	}
	if (reqFldsOK == true) {
		return true;
	} else {
		alert(missFlds);
		return false;
	}	
}

//Function to check an array of Number fields and list all those that have
//an invalid numeric entry.
function valFormNumbers(srcForm, numFields, numNFields) {
	//Variables
	var missNums = "\nThe following field(s) require numeric entries:\n\n\t";
	var numFldsOK = true;

	//Check if numeric entries have been entered.	
	for (var fldNo=0; fldNo < numFields.length; fldNo++) {
		//alert('Fld: '+numFields[fldNo]);
		var fldVal = srcForm.elements[numFields[fldNo]].value;
		if (fldVal.length !=0) {
			for (i=0; i<fldVal.length; i++) {
				ch = fldVal.substring(i, i+1);
				if ((ch>="0" && ch<="9") || (ch==".") || (ch==",") || (ch=="-")) {
					//dunno
				}
				else {
					missNums += numNFields[fldNo] + "\n\t";
					numFldsOK = false;
					break;
				}
			}	
		} else {
			missNums += numNFields[fldNo] + "\n\t";
			numFldsOK = false;
		}
	}
	if (numFldsOK == true) {
		return true;
	} else {
		alert(missNums);
		return false;
	}	
}

//Function to check an array of Date fields and list all those that have
//an invalid date entry. (Doesn't handle leap year yet).
function valFormDates(srcForm, datFields, datNFields) {
	//Variables
	var missDates = "\nThe following field(s) require valid date entries (MM/DD/YYYY):\n\n\t";
	var datFldsOK = true;
	
	//Check if date entries have been entered.	
	for (var fldNo=0; fldNo < datFields.length; fldNo++) {
		var bLen = true;
		var datVal = srcForm.elements[datFields[fldNo]].value;
		if (datVal.indexOf("-")!=-1) {
			var wrkDate = datVal.split("-");
		} else {
			if (datVal.indexOf("/")!=-1) {
				var wrkDate = datVal.split("/");
			} else {
				missDates += datNFields[fldNo] + "\n\t";
				datFldsOK = false;			
				break;
			}
		}
		if (wrkDate[2].length == 2) {
			if (eval(wrkDate[2]) < 50) {
				wrkDate[2] = eval(wrkDate[2])+2000;
			} else {
				wrkDate[2] = eval(wrkDate[2])+1900;
			}
			bLen = false;
		}
		var chkDate = new Date(wrkDate[2],wrkDate[0],wrkDate[1]);
		var cmpDate = (chkDate.getMonth())+"/"+(chkDate.getDate())+"/"+(chkDate.getFullYear());
		var wrkDate2 = (Math.abs(wrkDate[0]))+"/"+(Math.abs(wrkDate[1]))+"/"+(Math.abs(wrkDate[2]));
		if (wrkDate2 != cmpDate) {
			missDates += datNFields[fldNo] + "\n\t";
			datFldsOK = false;
			break;
		} else {
			if (cmpDate=="NaN/NaN/NaN") {
				missDates += datNFields[fldNo] + "\n\t";
				datFldsOK = false;
				break;
			} 	
		}
		if (bLen == false) {
			var rtnDate = LZ(chkDate.getMonth())+"/"+LZ(chkDate.getDate())+"/"+(chkDate.getFullYear());
			srcForm.elements[datFields[fldNo]].value = rtnDate;			
		}
	}
	if (datFldsOK == true) {
		return true;
	} else {
			alert(missDates);
			return false;
	}	
}

//Function to trim blanks front and back
function trim(string) {
	return string.replace(/^\s+/,'').replace(/\s+$/,'')
}

function replaceString(s, t, u) {
	/*
	**  Replace a token in a string
	**    s  string to be processed
	**    t  token to be found and removed
	**    u  token to be inserted
	**  returns new String
	*/
	i = s.indexOf(t);
	r = '';
	if (i == -1) return s;
	r += s.substring(0,i) + u;
	if ( i + t.length < s.length)
		r += replaceString(s.substring(i + t.length, s.length), t, u);
	return r;
}

//Function to pad Date fields with leading zero (e.g '1' > '01')
function LZ(dateval) {return(dateval<0||dateval>9?"":"0")+dateval}

//Function to check a Date field for a valid date entry. 
//(Handles leap year checking)
function check_date(field){
	var checkstr = "0123456789";
	var DateField = field;
	var Datevalue = "";
	var DateTemp = "";
	var seperator = "/";
	var day;
	var month;
	var year;
	var leap = 0;
	var err = 0;
	var i;
	   err = 0;
	   DateValue = DateField.value;
	   /* Delete all chars except 0..9 */
	   for (i = 0; i < DateValue.length; i++) {
		  if (checkstr.indexOf(DateValue.substr(i,1)) >= 0) {
		     DateTemp = DateTemp + DateValue.substr(i,1);
		  }
	   }
	   if (DateTemp.length == 0){
		   if ((DateValue != "") && (DateValue != " ")) {
		   	  alert("Invalid Date Entry!");
		      DateField.select();
			  DateField.focus();
			  return;
		   } else {
		   		return;
		   }
	   }
	   DateValue = DateTemp;
	   /* Always change date to 8 digits - string*/
	   /* if year is entered as 2-digit / always assume 20xx */
	   if (DateValue.length == 6) {
	      DateValue = DateValue.substr(0,4) + '20' + DateValue.substr(4,2); }
	   if (DateValue.length != 8) {
	      err = 19;}
	   /* year is wrong if year = 0000 */
	   year = DateValue.substr(4,4);
	   if (year == 0) {
	      err = 20;
	   }
	   /* Validation of month*/
	   month = DateValue.substr(0,2);
	   if ((month < 1) || (month > 12)) {
	      err = 21;
	   }
	   /* Validation of day*/
	   day = DateValue.substr(2,2);
	   if (day < 1) {
	     err = 22;
	   }
	   /* Validation leap-year / february / day */
	   if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0)) {
	      leap = 1;
	   }
	   if ((month == 2) && (leap == 1) && (day > 29)) {
	      err = 23;
	   }
	   if ((month == 2) && (leap != 1) && (day > 28)) {
	      err = 24;
	   }
	   /* Validation of other months */
	   if ((day > 31) && ((month == "01") || (month == "03") || (month == "05")
	|| (month == "07") || (month == "08") || (month == "10") || (month ==
	"12"))) {
	      err = 25;
	   }
	   if ((day > 30) && ((month == "04") || (month == "06") || (month == "09")
	|| (month == "11"))) {
	      err = 26;
	   }
	   /* if 00 ist entered, no error, deleting the entry */
	   if ((day == 0) && (month == 0) && (year == 00)) {
	      err = 0; day = ""; month = ""; year = ""; seperator = "";
	   }
	   /* if no error, write the completed date to Input-Field (e.g. 13.12.2001)
	*/
	   if (err == 0) {
	      /*DateField.value = day + seperator + month + seperator + year;*/
	      DateField.value = month + seperator + day + seperator + year;
	   }
	   /* Error-message if err != 0 */
	   else {
	   	  /*alert("Err No:"+err);*/
	      alert("Date is incorrect!");
	      DateField.select();
		  DateField.focus();
	   }
}

//Function to check a Numeric field for a valid Numeric entry. 
function check_number(field, numOnly) {
	//Check if numeric entries have been entered.	
	var fldVal = field.value;
	if (fldVal.length !=0) {
		for (i=0; i<fldVal.length; i++) {
			ch = fldVal.substring(i, i+1);
			if (numOnly == "true") {
				if (ch>="0" && ch<="9") {
					//OK
				} else {
				      alert("Invalid Number Entry!\nWhole numbers only.");
				      field.select();
					  field.focus();
					  return false;
				}
			} else {
				if ((ch>="0" && ch<="9") || (ch==".") || (ch==",") || (ch=="-")) {
					//Check if - is at beginning
					if ((ch=="-")&&(i>0)) {
		    		  	alert("Invalid Negative Numeric Entry!");
		      			field.select();
			  			field.focus();
			  			return false;
					}
				} else {
		    		  	alert("Invalid Numeric Entry!");
		      			field.select();
			  			field.focus();
			  			return false;
			  	}
			}
		}	
	}
	return true;	
}

function check_money(field) {
	//Check if numeric entries (2 decimals max) have been entered.	
	var fldVal = field.value;
	var strVal = "";
	if (fldVal.length !=0) {
		for (i=0; i<fldVal.length; i++) {
			ch = fldVal.substring(i, i+1);
			if ((ch>="0" && ch<="9") || (ch==".") || (ch==",") || (ch=="-")) {
				if (ch!=",") {
					strVal = strVal + ch;
				}
				//Check if - is at beginning
				if ((ch=="-")&&(i>0)) {
	    		  	alert("Invalid Negative Money Entry!");
	      			field.select();
		  			field.focus();
		  			return false;
				}
			} else {
    		  	alert("Invalid Money Entry!");
      			field.select();
	  			field.focus();
	  			return false;
		  	}
		}	
		// Find decimal.
		var pos = -1;
		pos = strVal.indexOf(".");
		//alert('Decimal Pt position: ' + pos);
		if (eval(pos)>-1) {
			var data = strVal.substring(pos+1,strVal.length);
			if (data.length > 2) {
    		  	alert("Invalid Money Entry!");
      			field.select();
	  			field.focus();
	  			return false;
			} else {
				if (data.length==1) {strVal = strVal + '0';data = data + '0';}
				if (data.length==0) {strVal = strVal + '00';data = data + '00';}
				ch = data.charAt(0);
				if (!(ch>="0" && ch<="9")) {
	    		  	alert("Invalid Money Entry!");
	      			field.select();
		  			field.focus();
		  			return false;
				} else {
					ch = data.charAt(1);
					if (!(ch>="0" && ch<="9")) {
		    		  	alert("Invalid Money Entry!");
		      			field.select();
			  			field.focus();
			  			return false;
					}
				}
			}
		}
		if (eval(pos)==-1) {strVal = strVal + '.00';}
		//Format entry
		pos = strVal.indexOf("-");
		var minus="";
		if (eval(pos)>-1) {
			minus="-";
			strVal = strVal.substring(1,strVal.length);
		}
		pos = strVal.indexOf(".");
		strVal = Comma(strVal.substring(0,pos))+strVal.substring(pos,strVal.length);
		strVal = minus+strVal;
		//Check length of entry to field size (pos/neg check)
		var size = field.maxLength;
		//alert('FldSize:'+size);
		pos = strVal.indexOf("-");
		if (eval(pos)==-1) {
			//Positive Number
			if (eval(strVal.length) > (eval(size)-1)) {
    		  	alert("Amount entered is too big!");
      			field.select();
	  			field.focus();
	  			return false;
			}
		}
		if (eval(strVal.length)>size) {
		  	alert("Amount entered is too big!");
  			field.select();
  			field.focus();
  			return false;
		} else {
			field.value = strVal;
		}
	} else {
		// Set blank to 0.00
		field.value = "";
	}
	return true;	
}

//Function to check the Agent Of Record entry fields have been entered correctly. 
function check_AgOfRec(srcForm, aorFlag, prvAgLicNo) {
	if (trim(srcForm.elements[prvAgLicNo].value) != "") {
		//Prev Ag License No entered
		var options = srcForm.elements[aorFlag];
		var optval = null;
		
		for (i = 0; i < options.length && optval == null; i++) {
			if (options[i].checked)
		   	optval = options[i].value;
		}
		
		if (trim(optval)=="N") {
			alert("Prev AgLicNo entry can only be made when the \nChange Agent of Record flag is set to 'Yes'."); 
			var field = srcForm.elements[prvAgLicNo];
			field.select();
  			field.focus();
			return false;
		} 
	}
	return true;
}

function Comma(SS) { 
	var T='';
	var S=String(SS);
	var L=S.length-1;
	var C;
	var j;
	for (j=0; j<=L; j++) {
    	T+=C=S.charAt(j) ;
    	if ((j<L) && ((L-j)%3==0) && (C!='-')) 
    		T+=',';
    }
   	return T;
}
   
//Function to check a Numeric field does not exceed specified digits. 
function check_percent(srcForm, field, fldcnt, name, digits) {
	//Variables
	var missFlds = "\nOne or more of the "+name+" field(s) has an entry \nthat exceeds permitted decimal places ("+digits+"), is a negative value or is zero.";
	var reqFldsOK = true;
	
	var bErr = false;
	// First check all required fields have been populated.
	for (var i=1; i<eval(fldcnt); i++) {
		var fldval = srcForm.elements[field+eval(i)].value;
		var pos = -1;
		for (j=0; j<fldval.length; j++) {
			ch = fldval.substring(j, j+1);
			if (ch==".") {
				pos = eval(j);
				break;
			}
		}	
		if (eval(pos)>0) {
			var data = fldval.substring(pos+1,fldval.length);
			if (data.length > eval(digits)) {
				bErr = true;
				break;
			}	
		}
		//Check for zero values
		if (eval(fldval)==0) {
			bErr = true;
			break;
		}
		//Check for negative values
		if (eval(fldval)<0) {
			bErr = true;
			break;
		}
	}
	if (bErr == true) {
		alert(missFlds);
		return false;
	} else {
		return true;
	}
}

//Function to check a field array for duplicate entries. 
function check_duplicates(srcForm, field, fldcnt) {
	//Variables
	var missFlds = "\nThe following duplicate entries were found:\n\n\t";
	
	var bErr = false;
	// First check all required fields have been populated.
	for (var i=1; i<eval(fldcnt); i++) {
		var fldval = srcForm.elements[field+eval(i)].value;
		fldval = fldval.replace(/^\s+/,'').replace(/\s+$/,'')
		if (fldval.length>0) {
			for (var j=1; j<eval(fldcnt); j++) {
				if (i==j) {
					//skip same field
				} else {
					//Check if entry is found
					var chkval = srcForm.elements[field+eval(j)].value;
					if (fldval == chkval) {
						//Check if entry already reported
						if (eval(missFlds.indexOf(fldval))==-1) {
							missFlds += fldval + "\n\t";
						}
						bErr = true; 
						break;
					}
				}	
			}
		}
	}
	if (bErr == true) {
		alert(missFlds);
		return false;
	} else {
		return true;
	}
}

//Function to check if a selection has been made in the passed Dropdown Control. 
function check_dropdown(form, field, name) {
	//Check if an entry has been made in a dropdown control.	
	var fldVal = form.elements[field].options[form.elements[field].selectedIndex].value;
	if ((fldVal.length !=0) && fldVal != "") {
		return true;
	} else {
		alert(name+' requires an entry.\nPlease make a selection.');
		return false;
	}
}

//Function to check if a selection has been made in the passed checkboxes. 
function check_checkboxes(form, field, fldcnt) {
	var bOK=false;
	//Check if an check box has been checked
	for (var i=0; i<eval(fldcnt); i++) {	
		if (form.elements[field+eval(i)].checked==true) {
			bOK=true;
		} 
	}
	if (bOK==false) {
		alert('At least one selection is required.\n\nPlease make a selection.');
	}
	return bOK;
}


//Phone number validation
function ValidatePhone(field){
	var n;
	var p=field.value.split(/[ \-\(\)]/).join("");
	//Skip if length is 0
	if (p.length == 0) {
		return true;
	}
	//Ensure only numeric entry made
	numchk = parseInt(p);
	if (numchk==0) {
		if (p!='0') {
			field.select();
  			field.focus();
			alert('Invalid Number Entry!');
  			return false;
  		}
	}
	if (isNaN(numchk)) {
  		field.select();
  		field.focus();
		alert('Invalid Number Entry!');
  		return false;
  	}
	//Check overall length
	if (p.length != 10) {
  		field.select();
  		field.focus();
		alert('Invalid Phone Entry.\nTen digit format required.');
  		return false;
	}
	if(p.length==3){
		//d10=p.indexOf('(')
		pp=p;
		d4=p.indexOf('(')
		d5=p.indexOf(')')
		if(d4==-1){
			pp="("+pp;
		}
		if(d5==-1){
			pp=pp+")";
		}
		//pp="("+pp+")";
		field.value="";
		field.value=pp;
	}
	if(p.length>3){
		d1=p.indexOf('(')
		d2=p.indexOf(')')
		if (d2==-1){
			if (d1==-1) {
				p="("+p;
				d1=0;
			}			
			l30=p.length;
			p30=p.substring(0,4);
			p30=p30+")"
			p31=p.substring(4,l30);
			pp=p30+p31;
			field.value="";
			field.value=pp;
			d1=pp.indexOf('(')
			d2=pp.indexOf(')')
		}
	}
	if(p.length>5){
		p11=p.substring(d1+1,d2);
		if(p11.length>3){
			p12=p11;
			l12=p12.length;
			l15=p.length
			//l12=l12-3
			p13=p11.substring(0,3);
			p14=p11.substring(3,l12);
			p15=p.substring(d2+1,l15);
			field.value="";
			pp="("+p13+")"+p14+p15;
			field.value=pp;
		}
		l16=p.length;
		p16=p.substring(d2+1,l16);
		l17=p16.length;
		if(l17>3&&p16.indexOf('-')==-1){
			p17=p.substring(d2,d2+3);
			p18=p.substring(d2+3,l16);
			p19=p.substring(1,d2);
			pp="("+p19+")"+p17+"-"+p18;
			field.value="";
			field.value=pp;		
		}
	}
	
}

//GENERAL FIELD VALIDATION ROUTINES FOR REPORTS

//Function to check a Month/Year field for a valid entry. 
function check_mthyear(field){
	//Check if numeric entries have been entered.	
	var checkstr = "0123456789";
	var tmpVal="";
	var strErr="";
	var fldVal=field.value;
	
	if (fldVal.length !=0) {
	   	/* Delete all chars except 0..9 */
	   	for (i = 0; i < fldVal.length; i++) {
		  	if (checkstr.indexOf(fldVal.substr(i,1)) >= 0) {
		    	tmpVal = tmpVal + fldVal.substr(i,1);
			}
	   	}
	   	if ((tmpVal.length <= 2)||(tmpVal.length >= 7)) {
	    	strErr='Invalid Month/Year Entry.';
		} else {
		  	if (tmpVal.length == 3) {
		    	tmpVal = '0' + tmpVal;
		 	}
			if (tmpVal.length == 4) {
		   	 	/* if year is entered as 2-digit / always assume 20xx */
		    	tmpVal = tmpVal.substr(0,2) + '20' + tmpVal.substr(2,2); 
		   	}
		   	/* year is wrong if year = 0000 */
		   	year = tmpVal.substr(2,4);
			if (year == 0) {
		    	strErr='Invalid Year for Month/Year Entry.';
		   	} else {
			   	/* Validation of month*/
			   	month = tmpVal.substr(0,2);
			   	if ((month < 1) || (month > 12)) {
			      	strErr='Invalid Month for Month/Year Entry.';
				}
			}
	 	}	
		if (strErr.length!=0) {
		  	field.focus();
	  	    field.select();
			alert(strErr);   
			return false;
		} else {
			field.value = tmpVal.substr(0,2)+"/"+tmpVal.substr(2,4);   
			return true;
		}
	} else {
		return true;
	}
}

/*Function to check a Numeric field for a valid Numeric entry, based on type passed. */
function check_rpt_number(field, type){
	//Check if numeric entries have been entered.	
	var checkstr = ".0123456789";
	var tmpVal="";
	var fldVal = field.value;

	if (fldVal.length !=0) {
		/* Delete all chars except 0..9 */
	 	for (i = 0; i < fldVal.length; i++) {
			if (checkstr.indexOf(fldVal.substr(i,1)) >= 0) {
		 	   tmpVal = tmpVal + fldVal.substr(i,1);
		  	}
	   	}
		if ((type=="SG")||(type=="DB")) {
			/* Single and Double parms */
			var val = parseFloat(tmpVal);
			
		} else {
			/* Integers */
			if (type=="TI") {
				if ((eval(tmpVal)>-1) && (eval(tmpVal)<256)) {
					/* OK */
				} else {
					alert('Invalid Tiny Integer Entry!\nEntry Range: 0 to 255');
  					field.focus();
  					field.select();
  					return false;
				}
			}
			if (type=="SI") {
				if ((eval(tmpVal)>-32768) && (eval(tmpVal)<32768)) {
					/* OK */
				} else {
					alert('Invalid Entry!\nEntry Range: -32,768 to 32,767');
  					field.focus();
  					field.select();
  					return false;
				}
			}
			if (type=="I") {
				if ((eval(tmpVal)>-2147483648) && (eval(tmpVal)<2147483647)) {
					/* OK */
				} else {
					alert('Invalid Entry!\nEntry Range: -2,147,483,648 to 2,147,483,647');
  					field.focus();
  					field.select();
  					return false;
				}
			}
			if (type=="BI") {
				//if (eval(tmpVal)>-32768) && (eval(tmpVal)<32768)) {
				//	/* OK */
				//} else {
				//	alert('Invalid Small Integer Entry!\n(-32768 to 32767)');
  				//	return false;
				//}
			}
		}
		/* alert('Invalid '+ strType + ' Entry!'); */
  		/* return false; */
	}
	//return true;	
}

//Button manipulation routines (RollOver)

<!--HPB_SCRIPT_ROV_50
//
//  Licensed Materials - Property of IBM
//  (C) Copyright IBM Corp. 1998, 2001 All Rights Reserved.
//  US Government Users Restricted Rights -
//  Use, duplication or disclosure restricted
//  by GSA ADP Schedule Contract with IBM Corp.
//

// HpbImgPreload:
//
function HpbImgPreload()
{
  var appVer=parseInt(navigator.appVersion);
  var isNC=(document.layers && (appVer >= 4));
  var isIE=(document.all    && (appVer >= 4));
  if (isNC || isIE)
  {
    if (document.images)
    {
      var imgName = HpbImgPreload.arguments[0];
      var cnt;
      swImg[imgName] = new Array;
      for (cnt = 1; cnt < HpbImgPreload.arguments.length; cnt++)
      {
        swImg[imgName][HpbImgPreload.arguments[cnt]] = new Image();
        swImg[imgName][HpbImgPreload.arguments[cnt]].src = HpbImgPreload.arguments[cnt];
      }
    }
  }
}
// HpbImgFind:
//
function HpbImgFind(doc, imgName)
{
  for (var i=0; i < doc.layers.length; i++)
  {
    var img = doc.layers[i].document.images[imgName];
    if (!img) img = HpbImgFind(doc.layers[i], imgName);
    if (img) return img;
  }
  return null;
}
// HpbImgSwap:
//
function HpbImgSwap(imgName, imgSrc)
{
  var appVer=parseInt(navigator.appVersion);
  var isNC=(document.layers && (appVer >= 4));
  isNC = true;
  var isIE=(document.all    && (appVer >= 4));
  if (isNC || isIE)
  {
    if (document.images)
    { var bCont = true;
   	  if (imgName=="BchMgmt") {
	     if (imgName.indexOf("over.gif")<0) {
	       if (bBtf) bCont = false;
	     }
	  }
   	  if (imgName=="File") {
	     if (imgName.indexOf("over.gif")<0) {
	       if (bFile) bCont = false;
	     }
	  }   	  
   	  if (imgName=="Inquiry") {
	     if (imgName.indexOf("over.gif")<0) {
	       if (bTran) bCont = false;
	     }
	  } 
   	  if (imgName=="Reports") {
	     if (imgName.indexOf("over.gif")<0) {
	       if (bRpt) bCont = false;
	     }
	  }   	  
	  if (imgName=="Help") {
	     if (imgName.indexOf("over.gif")<0) {
	       if (bHlp) bCont = false;
	     }
	  }
	  if (imgName=="SecAdmin") {
	     if (imgName.indexOf("over.gif")<0) {
	       if (bSec) bCont = false;
	     }
	  }
	  if (imgName=="ChgPwd") {
	     if (imgName.indexOf("over.gif")<0) {
	       if (bPwd) bCont = false;
	     }
	  }
   	  if (imgName=="Global") {
	     if (imgName.indexOf("over.gif")<0) {
	       if (bGbl) bCont = false;
	     }
	  } 
	  if (bCont) {
        var img = document.images[imgName];
        if (!img) img = HpbImgFind(document, imgName);
        if (img) img.src = imgSrc;
      }
    }
  }
}
var swImg; swImg=new Array;

//Special Javascript routines for the BtfGoodTransList.jsp & BtfCorrTransList.jsp
// needed to move off the page, as IE would encounter Access Denied issue (Known issue)
// this seems to by pass the problem.
function Val_GoodTrans(input,action) {
	//alert('Action: '+action);
	input.action.value = action;
	if (action == 'S') {
		//Call required field Validation routines
		var numFlds = new Array("logID");
		var numNFlds = new Array("LogBook ID");
		var	bresults = valFormNumbers(input,numFlds,numNFlds); 
		if (bresults == true) {
			//Disable File Type for Log selection
			input.filetype[0].disabled = "disabled";
			input.filetype[1].disabled = "disabled";
			input.submit();
		} else {
			return false;
		}
	} else {
		//Ensure a selection has been made
		var fldcnt = input.elements["count"].value;
		var bresults = check_checkboxes(input,"ckbx",fldcnt);
		if (bresults == true) {
			//OK to Post
			//return true;
			input.elements["action"].value = action;
			//if (ExpYes) {
				//Disable buttons after download if IE + display message
				//document.getElementById('DBtn').style.visibility = "hidden";
				//document.getElementById('AllBtn').style.visibility = "hidden";
				//document.getElementById('NoBtn').style.visibility = "hidden";
				//document.getElementById('DBtn').style.disabled = "true";
				//document.getElementById('AllBtn').style.disabled = "true";
				//document.getElementById('NoBtn').style.disabled = "true";
			//}
			input.submit();
		} else {
			//set focus to a field on form
			return false;
		}
	}
}

function GT_selectAll(form) {
    var allInput = form.elements;
    for( var i = 0; i < allInput.length; ++i) {
        if( allInput[i].type == "checkbox")
            allInput[i].checked = true;
	}
}

function GT_deselectAll(form) {
    var allInput = form.elements;
    for( var i = 0; i < allInput.length; ++i) {
        if( allInput[i].type == "checkbox")
            allInput[i].checked = false;
	}
}

function Corr_ChangeList(filter,logID) {
	var parms = 'filter='+filter;
	if (trim(logID)!='')
		parms = parms + '&logID='+logID;
	var strURL = 'CorrectionMaintenance?'+parms;
	jumptoURL(strURL);
}

// ^ End routines for BtfGoodTransList.jsp & BtfCorrTransList.jsp

//-->


