	var cratracker = null;
	var logoutwin  = null;
	var labelwin = null;
	var reportwin = null;
	var avawin = null;
	var detailwin = null;	

  
  function confirmExit()
  {
    return "You have attempted to leave this page.  If you have made any changes to the fields without clicking the Save button, your changes will be lost.  Are you sure you want to exit this page?";

  }
   function opentracker()
  {
  	if ( !cratracker ) {
  	cratracker = window.open("tracker.cfm", "tracker", "height=200,width=300");
    }
	
  }
   function openlabel(url)
  {		

  	if ( !labelwin ) {

  		labelwin = window.open(url, "labelwin","height=500, width=725,menubar");
    } else {

		labelwin.close();

		if ( labelwin.closed) {

		  	labelwin = window.open(url, "labelwin","height=500, width=725,menubar");
		
		}
	
	}
	labelwin.focus();


  }  
 
   function openreport(url)
  {
	
 	if ( !reportwin ) {
  		reportwin = window.open(url, "reportwin","height=500, width=725, dependent,resizable,scrollbars,menubar");
    } else {
		reportwin.close();
		if ( reportwin.closed) {
		  	reportwin = window.open(url, "reportwin","height=500, width=725,dependent,resizable,scrollbars,menubar");
		
		}
	
	}
	
	
  }    
  
   function opendetail(url)
  {
	
 	if ( !detailwin ) {
  		detailwin = window.open(url, "detailwin","height=500, width=725, dependent,resizable,scrollbars,menubar");
    } else {
		detailwin.close();
		if ( detailwin.closed) {
		  	reportwin = window.open(url, "detailwin","height=500, width=725,dependent,resizable,scrollbars,menubar");
		
		}
	
	}
	
	
  }   
   function openava(url)
  {
 	if ( !avawin ) {
  		avawin = window.open(url, "avawin","height=500, width=725, dependent,resizable,scrollbars");
    } else {
		avawin.close();
		if ( avawin.closed) {
		  	avawin = window.open(url, "avawin","height=500, width=725,dependent,resizable,scrollbars");
		
		}
	
	}
	
	
  }  
   function openlogout(must)
  {

  	if ( !logoutwin ) {
  	logoutwin = window.open("logout.cfm?must=" + must, "logoutwin", "height=1,width=1");
	} else {
		if ( logoutwin.closed ) {
		
		
			logoutwin = window.open("logout.cfm?must=" + must, "logoutwin", "height=1,width=1");
		}
	
	}
	
  }
 


function logout() {



	/*openreport("closing.cfm"); 

	openava("closing.cfm");	

	openlabel("closing.cfm");	*/


	
/*	avawin.close();
	labelwin.close(); */


	window.close();


	
} 


function currentdate()
{
var d = new Date();

var curr_date = d.getDate();
var curr_month = d.getMonth();
curr_month++;
var curr_year = d.getFullYear();

return (curr_month + "/" + curr_date + "/" + curr_year);

}



function DateCompare(date1value, date2value ){
	


	var str = "";
	var day = 0;
	var month = 0;
	var year = 0;	
	var hr = 0;
	var minute = 0;	


	str =  FormatDate(date1value,"mm/dd/yyyy");
	month = str.substring(0,2)  - 1;
	day = str.substring(3,5)  ;
	year = str.substring(6,10) ;	

	var date1 = new Date(year, month, day);
		
	str =  FormatDate(date2value,"mm/dd/yyyy");
	month = str.substring(0,2)  - 1;
	day = str.substring(3,5)  ;
	year = str.substring(6,10) ;	
	
	var date2 = new Date(year, month, day);
	
	if  (  date1 == date2 ) {
		return "E";
	} else {
		if ( date1 < date2 ){
			return "L";	
		} else {
			return "G";
			
		}
		
	}
	
	
}

function FormatDate(DateToFormat,FormatAs){
if(DateToFormat==""){return"";}
if(!FormatAs){FormatAs="dd/mm/yyyy";}

var strReturnDate;
FormatAs = FormatAs.toLowerCase();
DateToFormat = DateToFormat.toLowerCase();
var arrDate
var arrMonths = new Array("January","February","March","April","May","June","July","August","September","October","November","December");
var strMONTH;
var Separator;

while(DateToFormat.indexOf("st")>-1){
DateToFormat = DateToFormat.replace("st","");
}

while(DateToFormat.indexOf("nd")>-1){
DateToFormat = DateToFormat.replace("nd","");
}

while(DateToFormat.indexOf("rd")>-1){
DateToFormat = DateToFormat.replace("rd","");
}

while(DateToFormat.indexOf("th")>-1){
DateToFormat = DateToFormat.replace("th","");
}

if(DateToFormat.indexOf(".")>-1){
Separator = ".";
}

if(DateToFormat.indexOf("-")>-1){
Separator = "-";
}


if(DateToFormat.indexOf("/")>-1){
Separator = "/";
}

if(DateToFormat.indexOf(" ")>-1){
Separator = " ";
}

arrDate = DateToFormat.split(Separator);
DateToFormat = "";

	for(var iSD = 0;iSD < arrDate.length;iSD++){
		if(arrDate[iSD]!=""){
		DateToFormat += arrDate[iSD] + Separator;
		}
	}

DateToFormat = DateToFormat.substring(0,DateToFormat.length-1);
arrDate = DateToFormat.split(Separator);

if(arrDate.length < 3){
return "";
}


/* Always use American format mm/dd/yyyyy in this application
var DAY = arrDate[0];
var MONTH = arrDate[1];
var YEAR = arrDate[2];




if(parseFloat(arrDate[1]) > 12){
DAY = arrDate[1];
MONTH = arrDate[0];
}
*/
var DAY = arrDate[1];
var MONTH = arrDate[0];
var YEAR = arrDate[2];


if(parseFloat(DAY) && DAY.toString().length==4){
YEAR = arrDate[0];
DAY = arrDate[2];
MONTH = arrDate[1];
}


for(var iSD = 0;iSD < arrMonths.length;iSD++){
var ShortMonth = arrMonths[iSD].substring(0,3).toLowerCase();
var MonthPosition = DateToFormat.indexOf(ShortMonth);
	if(MonthPosition > -1){
	MONTH = iSD + 1;
		if(MonthPosition == 0){
		DAY = arrDate[1];
		YEAR = arrDate[2];
		}
	break;
	}
}

var strTemp = YEAR.toString();
if(strTemp.length==2){

	if(parseFloat(YEAR)>40){
	YEAR = "19" + YEAR;
	}
	else{
	YEAR = "20" + YEAR;
	}

}


	if(parseInt(MONTH)< 10 && MONTH.toString().length < 2){
	MONTH = "0" + MONTH;
	}
	if(parseInt(DAY)< 10 && DAY.toString().length < 2){
	DAY = "0" + DAY;
	}
	switch (FormatAs){
	case "dd/mm/yyyy":
	return DAY + "/" + MONTH + "/" + YEAR;
	case "mm/dd/yyyy":
	return MONTH + "/" + DAY + "/" + YEAR;
	case "dd/mmm/yyyy":
	return DAY + " " + arrMonths[MONTH -1].substring(0,3) + " " + YEAR;
	case "mmm/dd/yyyy":
	return arrMonths[MONTH -1].substring(0,3) + " " + DAY + " " + YEAR;
	case "dd/mmmm/yyyy":
	return DAY + " " + arrMonths[MONTH -1] + " " + YEAR;	
	case "mmmm/dd/yyyy":
	return arrMonths[MONTH -1] + " " + DAY + " " + YEAR;
	}

return DAY + "/" + strMONTH + "/" + YEAR;;

} 

function age (d1,d2) {
	var one_day=1000*60*60*24;
	var one_month=1000*60*60*24*30;
	var one_year=1000*60*60*24*30*12;
	var d1 = new   Date(d1);
	var d2 = new   Date(d2);

	
return  Math.floor((d1 - d2 )/one_year);
	
}
function trim(s) 
{
  // Remove leading spaces and carriage returns
  
  while ((s.substring(0,1) == ' ') || (s.substring(0,1) == '\n') || (s.substring(0,1) == '\r'))
  {
    s = s.substring(1,s.length);
  }

  // Remove trailing spaces and carriage returns

  while ((s.substring(s.length-1,s.length) == ' ') || (s.substring(s.length-1,s.length) == '\n') || (s.substring(s.length-1,s.length) == '\r'))
  {
    s = s.substring(0,s.length-1);
  }
  return s;
}
<!--- valid phone format --->
function ValidPhone(object_value)
{

	phone1 = /^\d\d\d-\d\d\d-\d\d\d\d$/;
	phone2 = /^\(\d\d\d\)\d\d\d-\d\d\d\d$/;
	phone3 = /^\(\d\d\d\)\s\d\d\d-\d\d\d\d$/;	
	phone4 = /^\d\d\d\d\d\d\d\d\d\d$/;
	if ( phone1.test(trim(object_value)) ) 

		return true;
	if ( phone2.test(trim(object_value)) ) 
		return true;
	if ( phone3.test(trim(object_value)) ) 
		return true;
	if ( phone4.test(trim(object_value)) ) 
		return true;
	
	return false;
}
function ValidSSN(object_value)
{

/* CT 20070719 SSN must not be higher than 772 see this http://www.breakingpar.com/bkp/home.nsf/0/87256B280015193F87256F6A0072B54C

ssn1 = /^\d\d\d-\d\d-\d\d\d\d$/;	 */
	
	ssn1 = /^([0-6]\d{2}|7[0-6]\d|77[0-2])-\d\d-\d\d\d\d$/;	

	if ( !ssn1.test(trim(object_value)) ) 

		return false;


	ssn1 = /^000-00-0000$/;	
	ssn2 = /^111-11-1111$/;		
	ssn3 = /^222-22-2222$/;	
	ssn4 = /^333-33-3333$/;	
	ssn5 = /^444-44-4444$/;	
	ssn6 = /^555-55-5555$/;	
	ssn7 = /^666-66-6666$/;	
	ssn8 = /^777-77-7777$/;	
	ssn9 = /^888-88-8888$/;	
	ssn10 = /^999-99-9999$/;

	ssn11 = /.*0000$/;	
	ssn12 = /^000.*/;	
	ssn13 = /.*-00-.*/;		
	


		if ( ssn1.test(trim(object_value)) || ssn2.test(trim(object_value)) || ssn3.test(trim(object_value)) ||
	ssn4.test(trim(object_value)) || ssn5.test(trim(object_value)) || ssn6.test(trim(object_value)) || 
	ssn7.test(trim(object_value))  || ssn8.test(trim(object_value))	 || ssn9.test(trim(object_value))	 ||
	ssn10.test(trim(object_value))	|| ssn11.test(trim(object_value))	 || ssn12.test(trim(object_value))		
	 || ssn13.test(trim(object_value))	) return false;
		
	return true;
}
<!--- valid email --->

function ValidEmail(object_value)
{
	email = /^(\S+)@(\S+)\.(\S+)$/;

	if ( email.test(object_value) ) 
		return true;

	return false;
}


<!--- valid zipcode --->
function ValidZipcode(object_value)
{
	zip = /^\d\d\d\d\d$/;

	if ( zip.test(object_value) ) 
		return true;

	return false;
}
function WithElement(frm, obj_name) 
{
	for (i=0; i < frm.elements.length; i++)
		{
			if (frm.elements[i].name == obj_name ) {
				return true;
			}
	}
	return false;	

}

function SelectValue(obj) {
	for (i=0; i < obj.length; i++)
	{
		if (obj.options[i].selected)
			return obj.options[i].value ;
	}

}
function RadioValue(obj) {
	for (i=0; i < obj.length; i++)
	{
			if (obj[i].checked)
				return obj[i].value;
	}

}

function HasValue(obj, obj_type)
{

	if (obj_type == "TEXT" || obj_type == "PASSWORD")
	{
		if (obj.value.length == 0) 
	  		return false;
		else 
	  		return true;
	}
	else if (obj_type == "SELECT")
	{
		for (i=0; i < obj.length; i++)
		{
			if (obj.options[i].selected)
				return true;
		}
	   	return false;	
	}
	else if (obj_type == "SINGLE_VALUE_RADIO" || obj_type == "SINGLE_VALUE_CHECKBOX")
	{
		if (obj.checked)
			return true;
		else
	   		return false;	
	}
	else if (obj_type == "RADIO" || obj_type == "CHECKBOX")
	{
		for (i=0; i < obj.length; i++)
		{
			if (obj[i].checked)
				return true;
		}
	   	return false;	
	}


}




function _CF_checkdate(object_value)
{
	if (object_value.length == 0)
		return true;

	isplit = object_value.indexOf('/');

	if (isplit == -1 || isplit == object_value.length)
		return false;

	sMonth = object_value.substring(0, isplit);

	if (sMonth.length == 0)
		return false;

	isplit = object_value.indexOf('/', isplit + 1);

	if (isplit == -1 || (isplit + 1 ) == object_value.length)
		return false;

	sDay = object_value.substring((sMonth.length + 1), isplit);

	if (sDay.length == 0)
		return false;

	sYear = object_value.substring(isplit + 1);

	if (!_CF_checkinteger(sMonth))
		return false;
	else if (!_CF_checkrange(sMonth, 1, 12))
		return false;
	else if (!_CF_checkinteger(sYear))
		return false;
	else if (!_CF_checkrange(sYear,1900, 2010))
		return false;
	else if (!_CF_checkinteger(sDay))
		return false;
	else if (!_CF_checkday(sYear, sMonth, sDay))
		return false;
	else
		return true;
}


function _CF_checkeurodate(object_value)
{
	if (object_value.length == 0)
		return true;

	isplit = object_value.indexOf('/');

	if (isplit == -1)
		isplit = object_value.indexOf('.');

	if (isplit == -1 || isplit == object_value.length)
		return false;

	sDay = object_value.substring(0, isplit);

	monthSplit = isplit + 1;

	isplit = object_value.indexOf('/', monthSplit);

	if (isplit == -1)
		isplit = object_value.indexOf('.', monthSplit);

	if (isplit == -1 ||  (isplit + 1 )  == object_value.length)
		return false;

	sMonth = object_value.substring((sDay.length + 1), isplit);

	sYear = object_value.substring(isplit + 1);

	if (!_CF_checkinteger(sMonth))
		return false;
	else
	if (!_CF_checkrange(sMonth, 1, 12))
		return false;
	else
	if (!_CF_checkinteger(sYear))
		return false;
	else
	if (!_CF_checkrange(sYear, 0, null))
		return false;
	else
	if (!_CF_checkinteger(sDay))
		return false;
	else
	if (!_CF_checkday(sYear, sMonth, sDay))
		return false;
	else
		return true;
}


function _CF_checkday(checkYear, checkMonth, checkDay)
{
	maxDay = 31;

	if (checkMonth == 4 || checkMonth == 6 ||
		checkMonth == 9 || checkMonth == 11)
		maxDay = 30;
	else if (checkMonth == 2)
	{
		if (checkYear % 4 > 0)
			maxDay =28;
		else if (checkYear % 100 == 0 && checkYear % 400 > 0)
			maxDay = 28;
		else
			maxDay = 29;
	}

	return _CF_checkrange(checkDay, 1, maxDay);
}


function _CF_checkinteger(object_value)
{
	if (object_value.length == 0)
		return true;

	var decimal_format = ".";
	var check_char = object_value.indexOf(decimal_format);

	if (check_char == -1)
		return _CF_checknumber(object_value);
	else
		return false;
}


function _CF_numberrange(object_value, min_value, max_value)
{
	if (min_value != null)
	{
		if (object_value < min_value)
			return false;
	}

	if (max_value != null)
	{
		if (object_value > max_value)
			return false;
	}

	return true;
}


function _CF_checknumber(object_value)
{
	if (object_value.length == 0)
		return true;

	var start_format = " .+-0123456789";
	var number_format = " .0123456789";
	var check_char;
	var decimal = false;
	var trailing_blank = false;
	var digits = false;

	check_char = start_format.indexOf(object_value.charAt(0));

	if (check_char == 1)
		decimal = true;
	else if (check_char < 1)
		return false;

	for (var i = 1; i < object_value.length; i++)
	{
		check_char = number_format.indexOf(object_value.charAt(i));
		if (check_char < 0)
			return false;
		else if (check_char == 1)
		{
			if (decimal)
				return false;
			else
				decimal = true;
		}
		else if (check_char == 0)
		{
			if (decimal || digits)	
				trailing_blank = true;
		}
		else if (trailing_blank)
			return false;
		else
			digits = true;
	}	

	return true
}


function _CF_checkrange(object_value, min_value, max_value)
{
	if (object_value.length == 0)
		return true;

	if (!_CF_checknumber(object_value))
		return false;
	else
		return (_CF_numberrange((eval(object_value)), min_value, max_value));

	return true;
}


function _CF_checktime(object_value)
{
	if (object_value.length == 0)
		return true;

	isplit = object_value.indexOf(':');

	if (isplit == -1 || isplit == object_value.length) {
			
		sHour = object_value.substring(0, 2);
		sMin = object_value.substring(2);
	} else {

	sHour = object_value.substring(0, isplit);
	iminute = object_value.indexOf(':', isplit + 1);

	if (iminute == -1 || iminute == object_value.length)
		sMin = object_value.substring((sHour.length + 1));
	else
		sMin = object_value.substring((sHour.length + 1), iminute);
		
	}

	if (!_CF_checkinteger(sHour))
		return false;
	else if (!_CF_checkrange(sHour, 0, 24))
		return false;

	if (!_CF_checkinteger(sMin))
		return false;
	else
	if (!_CF_checkrange(sMin, 0, 59))
		return false;

	if (iminute != -1)
	{
		sSec = object_value.substring(iminute + 1);

		if (!_CF_checkinteger(sSec))
			return false;
		else if (!_CF_checkrange(sSec, 0, 59))
			return false;	
	}

	return true;
}

function _CF_checkMtime(object_value)
{
	if (object_value.length == 0)
		return true;
	isplit = object_value.indexOf(':');
	if (isplit == -1 || isplit == object_value.length) {
	} else {
		return false;
	}
	
	sHour = object_value.substring(0, 2);
	sMin = object_value.substring(2);

	if (!_CF_checkinteger(sHour))
		return false;
	else if (!_CF_checkrange(sHour, 0, 24))
		return false;

	if (!_CF_checkinteger(sMin))
		return false;
	else
	if (!_CF_checkrange(sMin, 0, 59))
		return false;


	return true;
}


function _CF_checkregex(object_value, regex)
{
	return regex.test(object_value);
}


<!-- Idea by:  Nic Wolfe (Nic@TimelapseProductions.com) -->
<!-- Web URL:  http://fineline.xs.mw -->

<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->

<!-- Begin
function popUp(URL) {
day = new Date();
id = day.getTime();
eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=400,height=400');");
}
// End -->

