

// important browser variables



var agt=navigator.userAgent.toLowerCase(); 

var is_major = parseInt(navigator.appVersion); 

var is_minor = parseFloat(navigator.appVersion); 

	

//check IE 3

var is_ie   = (agt.indexOf("msie") != -1);

var is_ie3  = (is_ie && (is_major < 4)); 



//check Netscape 3 and friends

var is_nav  = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1) && (agt.indexOf('compatible') == -1));

var is_nav3 = (is_nav && (is_major == 3)); 

var is_nav40x = (is_nav&&!is_nav3&&(is_minor<4.1))

var is_NOTnav6 = (is_nav&&(is_minor<5))



/*  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -

	getLastModDate()

	Created:  	July 2001

	Author:  	Yassen Bakalov (ybakalov@icfconsulting.com)

	Modified:  	______________

	

	Comments: 

	This function will produce page's last modified date.

	

	##########################################################################

    -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  */

function getLastModDate() {

	var lastModDate = new Date(document.lastModified);

	lastModDate = dateToString(lastModDate)

	lastModDate = "<span class='dateStyle'>Last modified: "+lastModDate+"</span>"

	return lastModDate

}



/*  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -

	getTodayDate()

	Created:  	November 2001

	Author:  	Yassen Bakalov (ybakalov@icfconsulting.com)

	Modified:  	______________

	

	Comments: 

	This function will return today's date.

	

	##########################################################################

    -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  */

function getTodayDate() {

	var todayDate = new Date();

		var hours = todayDate.getHours();

		var minutes = todayDate.getMinutes();

		var seconds = todayDate.getSeconds();

		var amOrPm = "AM";

		if (hours > 11) amOrPm = "PM";

		if (hours > 12) hours = hours - 12;

		if (hours == 0) hours = 12;

		if (minutes <= 9) minutes = "0" + minutes;

		if (seconds <= 9) seconds = "0" + seconds;

	var timeNow = hours +":"+ minutes +":"+ seconds +" "+ amOrPm

	todayDate = dateToString(todayDate)

	return todayDate + "  at " + timeNow

}



/*  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -

	dateToString(myDate)

	Created:  	July 2001

	Author:  	Yassen Bakalov (ybakalov@icfconsulting.com)

	Modified:  	______________

	

	Comments: 

	A helper function to convert a date into nice format: i.e. 1/1/01 -> January 1, 2001

	

	##########################################################################

    -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  */

function dateToString(myDate) {



	monthNames = new Array()

	monthNames[1] = "January"

	monthNames[2] = "February"

	monthNames[3] = "March"

	monthNames[4] = "April"

	monthNames[5] = "May"

	monthNames[6] = "June"

	monthNames[7] = "July"

	monthNames[8] = "August"

	monthNames[9] = "September"

	monthNames[10] = "October"

	monthNames[11] = "November"

	monthNames[12] = "December"



	dayNames = new Array()

	dayNames[1] = "Sunday"

	dayNames[2] = "Monday"

	dayNames[3] = "Tuesday"

	dayNames[4] = "Wednesday"

	dayNames[5] = "Thursday"

	dayNames[6] = "Friday"

	dayNames[7] = "Saturday"

	

	var theDay = dayNames[myDate.getDay() + 1]

	var theDate = myDate.getDate()

	var theMonth = monthNames[myDate.getMonth() + 1]

	var theYear = myDate.getFullYear()

	

	//return (theDay + ", " + theMonth + " " + theDate + ", " + theYear)

	return (theMonth + " " + theDate + ", " + theYear)

}





/*  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -

	showDivLayer(whichDiv)

	Created:  	July 2001

	Author:  	Yassen Bakalov (ybakalov@icfconsulting.com)

	Modified:  	______________

	

	Comments: 

	A relatively generic function to toggle DIVs/layers on and off.

	When one is switched on, the previous one is set to off.

	

	##########################################################################

    -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  */

var layerToHide = "divSubMenu1";

var firstSectionCompleted = true;



function showDivLayer(whichDiv) {

	if (is_nav){	// if browser is Netscape

		if (is_NOTnav6){

			document.layers[layerToHide].visibility = "hidden";

			document.layers[whichDiv].visibility = "visible";

		}

		else { 		// if browser is Netscape 6

			var myObjToShow = "document.getElementById('"+whichDiv+"')"

			var myObjToHide = "document.getElementById('"+layerToHide+"')"

			myObjToShow = eval (myObjToShow)

			myObjToHide = eval (myObjToHide)

			myObjToHide.style.visibility = "hidden";

			myObjToShow.style.visibility = "visible";

		}

	}

	else {			// if browser is IE

		document.all[layerToHide].style.visibility ="hidden";

		document.all[whichDiv].style.visibility ="visible";

	}

	layerToHide = whichDiv

}



/*  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -

	showDivLayer(whichDiv)

	Created:  	July 2001

	Author:  	Yassen Bakalov (ybakalov@icfconsulting.com)

	Modified:  	______________

	

	Comments: 

	This function is not used at this point.

	

	##########################################################################

    -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  */

function onlyShowDivLayer(whichDiv) {



	if (is_nav){	// if browser is Netscape

		if (is_NOTnav6){

			document.layers[whichDiv].visibility = "visible";

		}

		else { 		// if browser is Netscape 6

			var myObjToShow = "document.getElementById('"+whichDiv+"')"

			myObjToShow = eval (myObjToShow)

			myObjToShow.style.visibility = "visible";

		}

	}

	else {			// if browser is IE

		document.all[whichDiv].style.visibility ="visible";

	}

	

}



/*  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -

	onlyHideDivLayer(whichDiv)

	Created:  	July 2001

	Author:  	Yassen Bakalov (ybakalov@icfconsulting.com)

	Modified:  	______________

	

	Comments: 

	This function is not used at this point.

	

	##########################################################################

    -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  */

function onlyHideDivLayer(whichDiv) {



	if (is_nav){	// if browser is Netscape

		if (is_NOTnav6){

			document.layers[whichDiv].visibility = "hide";

		}

		else { 		// if browser is Netscape 6

			var myObjToShow = "document.getElementById('"+whichDiv+"')"

			myObjToShow = eval (myObjToShow)

			myObjToShow.style.visibility = "hidden";

		}

	}

	else {			// if browser is IE

		document.all[whichDiv].style.visibility ="hidden";

	}

	

}



/*  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -

	showDivLayer(whichDiv)

	Created:  	July 2001

	Author:  	Yassen Bakalov (ybakalov@icfconsulting.com)

	Modified:  	______________

	

	Comments: 

	This function is not used at this point.

	

	##########################################################################

    -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  */

function onlyShowSubDivLayer(whichDiv,whichSpan) {

	if (is_nav){	// if browser is Netscape

		if (is_NOTnav6){

			document.layers[whichDiv].document.layers[whichSpan].visibility = "visible";

		}

		else { 		// if browser is Netscape 6

			var myObjToShow = "document.getElementById('"+whichSpan+"')"

			myObjToShow = eval (myObjToShow)

			myObjToShow.style.visibility = "visible";

		}

	}

	else {			// if browser is IE

		document.all[whichSpan].style.visibility ="visible";

	}

}







/***********************



	IMAGES manipulation



************************/

onImages = new Array();

offImages = new Array();



	if(document.images){

		//main nav buttons

		onImages[1] = new Image()

		onImages[1].src = "images/01_x.gif";

		offImages[1] = new Image()

		offImages[1].src = "images/01_y.gif";

		

		onImages[2] = new Image()

		onImages[2].src = "images/02_x.gif";

		offImages[2] = new Image()

		offImages[2].src = "images/02_y.gif";



		onImages[3] = new Image()

		onImages[3].src = "images/03_x.gif";

		offImages[3] = new Image()

		offImages[3].src = "images/03_y.gif";



		onImages[4] = new Image()

		onImages[4].src = "images/04_x.gif";

		offImages[4] = new Image()

		offImages[4].src = "images/04_y.gif";



		onImages[5] = new Image()

		onImages[5].src = "images/05_x.gif";

		offImages[5] = new Image()

		offImages[5].src = "images/05_y.gif";

		

		onImages[6] = new Image()

		onImages[6].src = "images/06_x.gif";

		offImages[6] = new Image()

		offImages[6].src = "images/06_y.gif";

		

		// submenu buttons

		onImages[7] = new Image()

		onImages[7].src = "images/button_welcome_over.gif";

		offImages[7] = new Image()

		offImages[7].src = "images/button_welcome.gif";



		onImages[8] = new Image()

		onImages[8].src = "images/button_program_info_over.gif";

		offImages[8] = new Image()

		offImages[8].src = "images/button_program_info.gif";



		onImages[9] = new Image()

		onImages[9].src = "images/button_employer_info_over.gif";

		offImages[9] = new Image()

		offImages[9].src = "images/button_employer_info.gif";

						

		onImages[10] = new Image()

		onImages[10].src = "images/button_employee_particip_over.gif";

		offImages[10] = new Image()

		offImages[10].src = "images/button_employee_particip.gif";

								

	}	



/*  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -

	swapImage(imgName,imgSrc)

	Created:  	July 2001

	Author:  	Yassen Bakalov (ybakalov@icfconsulting.com)

	Modified:  	______________

	

	Comments: 

	This function is not used at this point.  It is a generic image rollover function.

	

	##########################################################################

    -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  */

function swapImage(imgName,imgSrc){

// imgState can be on and off

	if(document.images){

		if (is_nav){	// if browser is Netscape

			currentDiv = "hiddenOptions" + imgName.substring(imgName.length-1,imgName.length)

			eval("document.layers[\""+currentDiv+"\"].document.images[\""+imgName+"\"].src = "+ imgSrc + ".src");	

		}

		else{

			document.images[imgName].src = eval(imgSrc + ".src");

		}

	}

}



/*  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -

	swapSubImage(currentDiv,imgName,imgSrc)

	Created:  	July 2001

	Author:  	Yassen Bakalov (ybakalov@icfconsulting.com)

	Modified:  	______________

	

	Comments: 

	This function produces rollover effects on the image specified.

		* currentDiv is the DIV in which the image is located (needed for Netscape)

		* imgName is the image name

		* imgSrc is the image source to be used for the on-state

	

	##########################################################################

    -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  */

function swapSubImage(currentDiv,imgName,imgSrc){

// imgState can be on and off

	if(document.images){

		if (is_nav){	// if browser is Netscape

			eval("document.layers[\""+currentDiv+"\"].document.images[\""+imgName+"\"].src = "+ imgSrc + ".src");	

		}

		else{

			document.images[imgName].src = eval(imgSrc + ".src");

		}

	}

}





/*  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -

	setImage(imgName,imgId)

	Created:  	July 2001

	Author:  	Yassen Bakalov (ybakalov@icfconsulting.com)

	Modified:  	______________

	

	Comments: 

	This function is not used at this point.

	

	##########################################################################

    -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  */

var lastImgId = 1;

var lastImage = new Image();

lastImage.src=offImages[1].src



function setImage(imgName,imgId){

	//This function can be used to control the button images the user has clicked.

	//See setImage_original(imgName,imgId) for an example.

}



/*  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -

	setImage_original(imgName,imgId)

	Created:  	July 2001

	Author:  	Yassen Bakalov (ybakalov@icfconsulting.com)

	Modified:  	______________

	

	Comments: 

	This function is not used at this point.

	

	##########################################################################

    -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  */

function setImage_original(imgName,imgId){

//alert(imgName +  "  " + imgId)



	lastImgName = "imgName" + lastImgId

	lastImgSrc = lastImage.src;

	// imgState can be on and off

		if(document.images){

			if (lastImgId != imgId) { // don't bother doing anything if you click on the same spot

				//if (lastImgId > 0) { // the first image swap is a special case

						if (is_nav){	// if browser is Netscape				

							eval("document.layers[\"hiddenOptions" + lastImgId+"\"].document.images[\"" + lastImgName + "\"].src = \"" + lastImage.src + "\"");

						}

						else{

							document.images[lastImgName].src = lastImage.src;

						}

					eval("offImages[" + lastImgId + "].src = '" + lastImage.src + "'");

				//} // end if (lastImgId > 0)

	

			lastImage.src = eval("offImages[" + imgId + "].src")

			

			eval("offImages[" + imgId + "].src = onImages[" + imgId + "].src")

			

			if (is_nav){	// if browser is Netscape				

				//eval("document.layers[\"hiddenOptions"+imgId+"\"].images["+lastImgName+"].src = onImages[" + imgId + "].src");

				eval("document.layers[\"hiddenOptions" + imgId+"\"].document.images[\"" + imgName + "\"].src = " + "onImages[" + imgId + "].src");

			}

			else{

				document.images[imgName].src = eval("onImages[" + imgId + "].src");;

			}		

			

			lastImgId = imgId;

				

			} 	// end if (lastImgId != imgId)

		}		// end if(document.images)

		

}	









/* Original:  Mike McGrath   (mike_mcgrath@lineone.net) 

	Web Site:  http://website.lineone.net/~mike_mcgrath/ */



var nav = (document.layers); 

var iex = (document.all);

var skn = ""; //(nav) ? document.topdeck : topdeck.style;

if (nav) document.captureEvents(Event.MOUSEMOVE);



function adminCostCalc(){

	myMessage = "<strong>How are administrative costs calculated?</strong><br><br>"

	if (nav)  

		myMessage += "<form><textarea name=descr001 cols=25 rows=6 wrap='virtual'>"

	myMessage += "Program administration costs are calculated by multiplying the "

	myMessage += "number of hours it takes to administer the benefit program (per year) "

	myMessage += "times the full cost of those hours (salary plus estimated 50% overhead costs). "

	if (nav)  

		myMessage += "</textarea></form>"	

	

	pop(myMessage)

}



var descrTxt = new Array();



//	descrTxt[0] = new Array(); // TITLE of the description text

//	descrTxt[1] = new Array(); // TEXT of the description

	

function createDescription(descrID,descrObj){

	descrTxt[descrID] = new Array("","")

	

	var tmpDescr = descrObj.split("~");  //title and text are separated by "~"

	descrTxt[descrID][0] = tmpDescr[0];

	descrTxt[descrID][1] = tmpDescr[1];

}



popcnt=0;

/* Modified by chris.gerlt@erg.com to change from onmouseover functionality to onclick */

function pop(msgID,moveleft) {

     //alert(popcnt);

	 //get_mouse;

	 

     if(popcnt==0) {

				popcnt = 1;

				

				var msg = "<strong>"+descrTxt[msgID][0]+"</strong>"

				if (descrTxt[msgID][0] != "") msg += "<br><br>"

				tblHeight = parseInt(descrTxt[msgID][1].length/50)+1;//15 is default

				

				if (nav)  

					msg += "<form><textarea name=descr001 cols=30 rows="+tblHeight+" wrap='virtual'>"

				

				msg += descrTxt[msgID][1]

				

				if (nav)  

					msg += "</textarea></form>"	

				

				// ERG edited table formatting and added close link

				//var content ="<TABLE WIDTH=250 BORDER=0 CELLPADDING=1 CELLSPACING=0 BGCOLOR=#000000><TR><TD><TABLE WIDTH=100% BORDER=0 CELLPADDING=8 CELLSPACING=0 BGCOLOR=#ffffff><TR><TD><TABLE WIDTH=100% BORDER=0 CELLPADDING=0 CELLSPACING=0 BGCOLOR=#ffffff>"+msg+"</TD></TR></TABLE></TD></TR></TABLE></TD></TR></TABLE>";

			      //msg += "<p align=center><a href='javascript:kill()'>Close Window</a></p>"

				  //msg += "";

			      var content = "<TABLE WIDTH=250 BORDER=1 bordercolor=black bgcolor=white CELLPADDING=8 CELLSPACING=0><TR><TD><p align='right'><a href='javascript:kill()' style='font-family:Verdana, Arial, sans-serif; font-size:10px'>close window</a></p>"+msg+"</TD></TR></TABLE>";

			

				/*var content = "<TABLE WIDTH=140 BORDER=0 CELLPADDING=1 CELLSPACING=0 BGCOLOR=#000000><TR><TD>"

				content += "<TABLE WIDTH=100% BORDER=0 CELLPADDING=2 CELLSPACING=0 BGCOLOR=white><TR><TD>"

				content += "<span style='font-family:arial; font-size:10pt'><!--CENTER-->"+msg+"<!--/CENTER--></span>"

				content += "</TD></TR></TABLE></TD></TR></TABLE>";

				*/

				

				  if (nav) { 

				    skn.document.write(content); 

					skn.document.close();

					/*if (moveleft) {

							current_left = skn.left;

							//alert(current_left);

							//loc_px = current_left.indexOf('p');

							//alert(loc_px);

							//current_left = current_left.substr(0,loc_px);

							//alert(current_left);

							skn.left = current_left - moveleft;

						  }*/

					skn.visibility="show";

				  }

				    else if (iex) {

				          document.all("topdeck").innerHTML = content;

				          if (moveleft) {

							current_left = skn.left;

							//alert(current_left);

							loc_px = current_left.indexOf('p');

							//loc_px = loc_px - 1;

							current_left = current_left.substr(0,loc_px);

							//current_left += 0;

							skn.left = current_left - moveleft;

						  }

						  skn.visibility = "visible";  

				  }

				  

			  

			} else if(popcnt==1) {

				    popcnt=0;

				    kill();

			} 

}



function get_mouse(e) {



		objH = getObjHeight("topdeck");

		winH = getInsideWindowHeight();

		visibleH = getVisibleWindowHeight();

	

		skn = (nav) ? document.topdeck : topdeck.style;



		x = (nav) ? e.pageX : event.x+document.body.scrollLeft; 

		y = (nav) ? e.pageY : event.y+document.body.scrollTop;	

}



function pop_location () {

		skn = (nav) ? document.topdeck : topdeck.style;



		if (((y + objH) > winH) && ((y - objH)>(winH-visibleH))) {

			skn.left = x-100;

			skn.top  = y-objH-10;

		}

		else {

			skn.left = x-100;

			skn.top  = y+15;

		}

}



/*function get_mouse(e) {



		var objH = getObjHeight("topdeck");

		var winH = getInsideWindowHeight();

		var visibleH = getVisibleWindowHeight();

	

		skn = (nav) ? document.topdeck : topdeck.style;



		//var x = (nav) ? e.pageX : event.x+document.body.scrollLeft; 

		//var y = (nav) ? e.pageY : event.y+document.body.scrollTop;

		

		var x = event.x+document.body.scrollLeft; 

		var y = event.y+document.body.scrollTop;

	

		//alert(e)

	if(nav) {

		alert('nav');

		x = e.pageX;

		y = e.pageY;

		alert(x);

		alert(y);

	

		skn.left = x-100;

		skn.top  = y-objH-10;

		//skn.left=100;

		//skn.top=100;}

		

	} else {

		if (((y + objH) > winH) && ((y - objH)>(winH-visibleH))) {

			skn.left = x-100;

			skn.top  = y-objH-10;

		}

		else {

			skn.left = x-100;

			skn.top  = y+15;

		}

	}

	   

	//		skn.left = x - 60;

	//		skn.top  = y+20;

	

//		skn.left = x+10;

//		skn.top  = y-5;



	

		

		//window.status="x=" + x + ";   y=" + y + ";  objH=" + objH + ";  winH=" + winH + "  " +(y - objH) + "   vh:" + (winH-visibleH)

}*/



function kill() {

  

	  skn.visibility = "hidden";

	

	  if (nav) { 

			skn.document.write(""); 

	        skn.document.close();

	  }

	    else if (iex) {

	        document.all("topdeck").innerHTML = "";

	  }

	  

	  popcnt=0;



}



function getContentObj(obj) {

	var theObj

	if (typeof obj == "string") {

		if (nav) theObj = eval ("document." + obj)

		else theObj = eval ("document.all." + obj)

	}

	else theObj = obj



	return theObj

}



function getObjHeight(obj) {

	obj = getContentObj(obj);

	if (nav) return obj.clip.height

	else return obj.clientHeight

}



function getInsideWindowHeight() {

	if (nav) return window.innerHeight + window.pageYOffset

	else return document.body.clientHeight + document.body.scrollTop

}



function getVisibleWindowHeight() {

	if (nav) return window.innerHeight

	else return document.body.clientHeight

}



function newWin(pageName) {

var winH = 500;

var winW = 780;

if (self.screen) {winH = screen.availHeight - 25; winW = screen.availWidth}

if (winW > 900) winW = 800;

var param = ""

if (document.layers) param = "height="+winH+",width="+winW+",top=0,left=0,scrollbars,resizable"

else param = "height="+winH+",width="+winW+",top=0,left=0,scrollbars,resizable"

	window.open(pageName,"newWin",param)

}