//////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Globals
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
	var FV3_encArray = new Array();
	var FV3_enctotal = 0;
	
	var navArray = new Array();
	var total = 0;
	
	//Input the IDs of the IFRAMES you wish to dynamically resize to match its content height:
	//Separate each ID with a comma. Examples: ["myframe1", "myframe2"] or ["myframe"] or [] for none:
	var FV3_iframeids=["iframe_content"]
	
	//The extensions of content that should be rendered with the "embed" tag
	var FV3_embedded=[".pdf"]
	
	//The extensions of pages that should not have a unique id appended
	var FV3_uidexclusions=[".asp",".aspx"]
	
	//Should script hide iframe from browsers that don't support this script (non IE5+/NS6+ browsers. Recommended):
	var FV3_iframehide="no"
	
	//Browser detection
	var FV3_getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1]
	var FV3_FFextraHeight=parseFloat(FV3_getFFVersion)>=0.1? 16 : 0 //extra height in px to add to iframe in FireFox 1.0+ browsers
	
	var FV3_ie4 = document.all;
	var FV3_ns4 = document.layers;
	var FV3_ns6 = document.getElementById && !document.all; 
	
	//Events
	if (window.addEventListener)
	{
		window.addEventListener("load", FV3_resizeCaller, false);
		window.addEventListener("resize", FV3_resizeCaller, false);
	}
	else if (window.attachEvent)
	{
		window.attachEvent("onload", FV3_resizeCaller);
		window.attachEvent("onresize", FV3_resizeCaller);
	}
	else
	{
		window.onload=FV3_resizeCaller;
		window.onresize=FV3_resizeCaller;
	}
	
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_addItem(itemID)
// Last Change: 7.20.2006
// Notes: This function creates the Array of ids that need to be encrypted from the sce.js file
// Dependencies: sec.js
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
	function FV3_addItem(itemID)
	{
		FV3_encArray[FV3_enctotal] = new Object();
		FV3_encArray[FV3_enctotal].itemID = itemID;
		
		FV3_enctotal++;
	}
	
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_GetSecondaryNavName()
// Last Change: 8.14.2006
// Notes: This function will write the selected secondary nav name into the page.  
// Dependencies: nav.js, WritePrimaryNavigation
//----------------------------------------------------------------------------------------------------------------
// Text Output Example: 
//	About Us    
//----------------------------------------------------------------------------------------------------------------
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	function FV3_GetSecondaryNavName()
	{
		FV3_CheckDefaultSelections();
		NavArray = getPartialNav(2, selectedPrimaryID);
				
		for (var i = 0; i < NavArray.length; i++)
		{
			
			//Style the selected item differently
			if (NavArray[i].itemID == selectedSecondaryID)
			{
				document.write(NavArray[i].name);
			}
					
		}
	}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_GetSplashImage()
// Last Change: 7.20.2006
// Notes: This function will write an inline "img" element for the selected primary nav item into the page.  
//		 This image is maintained in the backoffice | Site Editor | Area | General Tab | Splash (image hyperlink). 
//		 A id and name property will be assigned to the img element for addition control with CSS
//----------------------------------------------------------------------------------------------------------------
// Output Example 
//	<img src="/navImages/[selectedPrimaryId]_slide.jpg" id="splash_image" name="splash_image">
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
	function FV3_GetSplashImage()
	{
		FV3_CheckDefaultSelections();
		if(selectedPrimaryID != -1)
		{
			document.write("<img src=\"/navImages/"+selectedPrimaryID+"_slide.jpg\" class=\"splash_image\">"); 
		}
	}

//////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_WriteDHTMLNavigation(priNavType, secNavType)
// Last Change: 7.20.2006
// Notes: This function assembles the DHTML menu elements.  
// Dependencies: nav.js
//----------------------------------------------------------------------------------------------------------------
// Inputs: 
//  priNavType
//	0 = Render Text
//	1 = Render Image
//	default = Render Text
//
//  secNavType
//	0 = Render Text
//	1 = Render Image
//	default = Render Text
//----------------------------------------------------------------------------------------------------------------
//  Note: styles ids and classes only applied to 'Image' output, text based navigation is styled through the 
//  menu application.
//----------------------------------------------------------------------------------------------------------------
// Style Classes:
//	img_pri_dhtmlnav = Class assigned to each primary nav image
//	img_pri_dhtmlnav_selected = Class assigned to each selected the selected primary nav image
//	img_sec_dhtmlnav = Class assigned to each secondary nav image
//	img_sec_dhtmlnav_selected = Class assigned to each selected the selected secondary nav image
//----------------------------------------------------------------------------------------------------------------
// Image Output Example (primary): 
//	<img class="[img_pri_dhtmlnav | img_pri_dhtmlnav_selected]" src="/navImages/[objectId]bttn[ | _s].jpg" onmouseover="this.src='/navImages/navImages/[objectId]bttn_s.jpg';" onmouseout="this.src='/navImages/navImages/[objectId]bttn.jpg';"></a>
//
// Image Output Example (secondary): 
//	<img class="[img_sec_dhtmlnav | img_sec_dhtmlnav_selected]" src="/navImages/[objectId]bttn[ | _s].jpg" onmouseover="this.src='/navImages/navImages/[objectId]bttn_s.jpg';" onmouseout="this.src='/navImages/navImages/[objectId]bttn.jpg';"></a>
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
function FV3_WriteDHTMLNavigation(priNavType, secNavType)
{
	
	FV3_CheckDefaultSelections();
	NavArray = getPartialNav(1, 0);
	
	for (var i = 0; i < NavArray.length; i++)
	{
		
		var pSelected = 'img_pri_dhtmlnav';
		var pSelectedOpts = ""; 
		var prinavimg = '';
		
		//Style the selected item differently
		if (NavArray[i].itemID == selectedPrimaryID)
		{
			
			//Primary Selected Options
			try
			{
				if (selectedPrimaryBackgroundColor != null)
				{
					pSelectedOpts = ";b:"+selectedPrimaryBackgroundColor;
				}
			}
			catch (FV3_err1)
			{}
			
			try
			{
				if (selectedPrimaryFontColor != null)
				{
					pSelectedOpts += ";c:"+selectedPrimaryFontColor;
				}
			}
			catch (FV3_err2)
			{}

			//Class
			pSelected = 'img_pri_dhtmlnav_selected';
			prinavimg = NavArray[i].itemID+"bttn_s.jpg";
		}
		else
		{
			prinavimg = NavArray[i].itemID+"bttn.jpg";
		}

		var mVar;

		if (priNavType == 0)
		{
			//Render text
			mVar = addTopLevelMenu(NavArray[i].name,"default.asp?P="+NavArray[i].itemID,"",pSelectedOpts);
		}
		else
		{
			
			//Render image
			var prinavout = '';
			
			prinavout += ("<img");
			prinavout += (" class=\""+pSelected+"\"");
			prinavout += (" src=\"/navImages/"+prinavimg+"\"");
			if (NavArray[i].itemID != selectedPrimaryID)
			{
				prinavout += (" onmouseover=\"this.src='/navImages/"+NavArray[i].itemID+"bttn_s.jpg';\"");
				prinavout += (" onmouseout=\"this.src='/navImages/"+NavArray[i].itemID+"bttn.jpg';\"");				
			}
			prinavout += (">");
			
			mVar = addTopLevelMenu(prinavout,"default.asp?P="+NavArray[i].itemID,"",pSelected);
			
		}

		SNavArray = getPartialNav(2, NavArray[i].itemID);
		
		for (var x = 0; x < SNavArray.length; x++)
		{
			
			var sSelected = 'img_sec_dhtmlnav';
			var sSelectedOpts = "";
			var secnavimg = '';
			var pref = '';
			
			//Style the selected item differently
			if (SNavArray[x].itemID == selectedSecondaryID)
			{
			
				//Secondary Selected Options
				try
				{
					if (selectedSecondaryBackgroundColor != null)
					{
						sSelectedOpts = ";b:"+selectedSecondaryBackgroundColor;
					}
				}
				catch (FV3_err3)
				{}
				
				try
				{
					if (selectedSecondaryFontColor != null)
					{
						sSelectedOpts += ";c:"+selectedSecondaryFontColor;
					}
				}
				catch (FV3_err4)
				{}

				//Class 
				sSelected = "img_sec_dhtmlnav_selected";				
				secnavimg = SNavArray[x].itemID+"bttn_s.jpg";
			}
			else
			{
				secnavimg = SNavArray[x].itemID+"bttn.jpg";
			}

			//Get Encrypted flag
			if (FV3_IsEncrypted(SNavArray[x].itemID))
			{
				pref = "https://"+window.location.host+"/";
			}
			else
			{
				pref = "";
			}
			
			if (secNavType == 0)
			{
				//Render text
				addMenuItem (SNavArray[x].name,pref+"default.asp?P="+NavArray[i].itemID+"&S="+SNavArray[x].itemID,"",mVar,sSelectedOpts);
			}
			else
			{
				//Render image
				var secnavout = '';
				
				secnavout += ("<img");
				secnavout += (" class=\""+sSelected+"\"");
				secnavout += (" src=\"/navImages/"+secnavimg+"\"");
				if (SNavArray[x].itemID != selectedSecondaryID)
				{
					secnavout += (" onmouseover=\"this.src='/navImages/"+SNavArray[x].itemID+"bttn_s.jpg';\"");
					secnavout += (" onmouseout=\"this.src='/navImages/"+SNavArray[x].itemID+"bttn.jpg';\"");				
				}
				secnavout += (">");
				addMenuItem (secnavout,pref+"default.asp?P="+NavArray[i].itemID+"&S="+SNavArray[x].itemID,"",mVar,sSelected);
			}
		}
		
	}
}

//////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_WritePrimaryNavigation(navType)
// Last Change: 7.20.2006
// Notes: This function will write the primary nav items into the page.  
// Dependencies: nav.js
//----------------------------------------------------------------------------------------------------------------
// Inputs: navType
//	0 = Render Text
//	1 = Render Image
//	default = Render Text
//----------------------------------------------------------------------------------------------------------------
// Style Ids:
//	div_prinav_[objectId] = Unique Id assigned to each primary nav div
//----------------------------------------------------------------------------------------------------------------
// Style Classes:
//	div_prinav = Class assigned to each primary nav div
//	div_prinav_selected = Class assigned to each selected primary nav div
//----------------------------------------------------------------------------------------------------------------
// Text Output Example: 
//	<div id="div_prinav_[objectId]" class="[div_prinav | div_prinav_selected]"><a href="default.aspP=[objectId]" title="[objectName]">[objectName]</a></div>   
//----------------------------------------------------------------------------------------------------------------
// Image Output Example: 
//	<div id="div_prinav_[objectId]" class="[div_prinav | div_prinav_selected]"><a href="default.aspP=[objectId]" title="[objectName]"><img src="/navImages/[objectId]bttn[ | _s].jpg" onmouseover="this.src='/navImages/navImages/[objectId]bttn_s.jpg';" onmouseout="this.src='/navImages/navImages/[objectId]bttn.jpg';"></a></div>
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
	function FV3_WritePrimaryNavigation(navType)
	{
		FV3_CheckDefaultSelections();
		NavArray = getPartialNav(1, 0);
		
		var prinavout = '';
		var prinavstyle = '';
		var prinavimg = '';
		
		for (var i = 0; i < NavArray.length; i++)
		{
			
			//Style the selected item differently
			if (NavArray[i].itemID == selectedPrimaryID)
			{
				prinavstyle = "div_prinav_selected";
				prinavimg = NavArray[i].itemID+"bttn_s.jpg";
			}
			else
			{
				prinavstyle = "div_prinav";
				prinavimg = NavArray[i].itemID+"bttn.jpg";
			}			

			prinavout += ("<div id=\""+prinavstyle+"_"+NavArray[i].itemID+"\" class=\""+prinavstyle+"\">");
			//Render opening a tag
			prinavout += ("<a href=\"");
			//Test to see if the First Page under this Area is Secure
			SecNavArray = getPartialNav(2, NavArray[i].itemID);
			if (FV3_IsEncrypted(SecNavArray[0].itemID))
				prinavout += ("https://"+window.location.host+"/");
			else
				prinavout += ("http://"+window.location.host+"/");
			//Render opening div tag
			prinavout += ("default.asp?P="+NavArray[i].itemID+"\"");		
			prinavout += (" title=\""+NavArray[i].name+"\"");
			prinavout += (">");
			
			if (navType == 0)
			{
				//Render text
				prinavout += (NavArray[i].name);
			}
			else
			{
				//Render image
				prinavout += ("<img");
				prinavout += (" src=\"/navImages/"+prinavimg+"\"");
				if (NavArray[i].itemID != selectedPrimaryID)
				{
					prinavout += (" onmouseover=\"this.src='/navImages/"+NavArray[i].itemID+"bttn_s.jpg';\"");
					prinavout += (" onmouseout=\"this.src='/navImages/"+NavArray[i].itemID+"bttn.jpg';\"");				
				}
				prinavout += (">");
			}
			
			//Render close tags
			prinavout += ("</a>");
			prinavout += ("</div>");
					
		}
		
		document.write(prinavout);
	}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_WriteSecondaryNavigation(navType)
// Last Change: 7.20.2006
// Notes: This function will write the secondary nav items into the page.  
// Dependencies: nav.js, WritePrimaryNavigation
//----------------------------------------------------------------------------------------------------------------
// Inputs: navType
//	0 = Render Text
//	1 = Render Image
//	default = Render Text
//----------------------------------------------------------------------------------------------------------------
// Style Ids:
//	div_secnav_[objectId] = Unique Id assigned to each secondary nav div
//----------------------------------------------------------------------------------------------------------------
// Style Classes:
//	div_secnav = Class assigned to each secondary nav div
//	div_secnav_selected = Class assigned to each selected secondary nav div
//----------------------------------------------------------------------------------------------------------------
// Text Output Example: 
//	<div id="div_secnav_[objectId]" class="[div_secnav | div_secnav_selected]"><a href="default.aspP=[PrimaryObjectId]&S=[objectId]" title="[objectName]">[objectName]</a></div>     
//----------------------------------------------------------------------------------------------------------------
// Image Output Example: 
//	<div id="div_secnav_[objectId]" class="[div_secnav | div_secnav_selected]"><a href="default.aspP=[PrimaryObjectId]&S=[objectId]" title="[objectName]"><img src="/navImages/[objectId]bttn[ | _s].jpg" onmouseover="this.src='/navImages/navImages/[objectId]bttn_s.jpg';" onmouseout="this.src='/navImages/navImages/[objectId]bttn.jpg';"></a></div>
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	function FV3_WriteSecondaryNavigation(navType)
	{
		FV3_CheckDefaultSelections();
		NavArray = getPartialNav(2, selectedPrimaryID);
		var secnavout = '';
		var secnavstyle = '';
		var secnavimg = '';
		var pref = '';
		
		for (var i = 0; i < NavArray.length; i++)
		{
			
			//Style the selected item differently
			if (NavArray[i].itemID == selectedSecondaryID)
			{
				secnavstyle = "div_secnav_selected";
				secnavimg = NavArray[i].itemID+"bttn_s.jpg";
			}
			else
			{
				secnavstyle = "div_secnav";
				secnavimg = NavArray[i].itemID+"bttn.jpg";
			}			
			//Render opening div tag
			secnavout += ("<div id=\""+secnavstyle+"_"+NavArray[i].itemID+"\" class=\""+secnavstyle+"\">");
			//Get Encrypted flag
			if (FV3_IsEncrypted(NavArray[i].itemID))
				pref = "https://"+window.location.host+"/";
			else
				pref = "http://"+window.location.host+"/";

			//Render opening a tag
			secnavout += ("<a");
			secnavout += (" href=\""+pref+"default.asp?P="+selectedPrimaryID+"&S="+NavArray[i].itemID+"\"");		
			secnavout += (" title=\""+NavArray[i].name+"\"");
			secnavout += (">");
			
			if (navType == 0)
			{
				//Render text
				secnavout += (NavArray[i].name);
			}
			else
			{
				//Render image
				secnavout += ("<img");
				secnavout += (" src=\"/navImages/"+secnavimg+"\"");
				if (NavArray[i].itemID != selectedSecondaryID)
				{
					secnavout += (" onmouseover=\"this.src='/navImages/"+NavArray[i].itemID+"bttn_s.jpg';\"");
					secnavout += (" onmouseout=\"this.src='/navImages/"+NavArray[i].itemID+"bttn.jpg';\"");				
				}
				secnavout += (">");
			}
			
			//Render close tags
			secnavout += ("</a>");
			secnavout += ("</div>");
					
		}
		document.write(secnavout);
	}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_WriteComboNavigation(priNavType, secNavType)
// Last Change: 7.20.2006
// Notes: This function will write the primary and secondary nav items into the page in a tree style format. 
// Dependencies: nav.js, sec.js
//----------------------------------------------------------------------------------------------------------------
// Inputs: 
// priNavType
//	0 = Render Text
//	1 = Render Image
//	default = Render Text
// secNavType:
//	0 = Render Text
//	1 = Render Image
//	default = Render Text
//----------------------------------------------------------------------------------------------------------------
// Style Ids
//	div_prinav_[objectId] : Unique Id assigned to each primary nav div
//	div_secnav_[objectId] : Unique Id assigned to each secondary nav div
//----------------------------------------------------------------------------------------------------------------
// Style Classes
//	div_prinav : Class assigned to each primary nav div
//	div_prinav_selected : Class assigned to each selected primary nav div
//	div_secnav : Class assigned to each secondary nav div
//	div_secnav_selected : Class assigned to each selected secondary nav div
//----------------------------------------------------------------------------------------------------------------
// Text Output Example: 
//	<div id="div_prinav_[objectId]" class="[div_prinav | div_prinav_selected]">
//		<a href="default.aspP=[objectId]" title="[objectName]">[objectName]</a>
//		<div id="div_secnav_[objectId]" class="[div_secnav | div_secnav_selected]"><a href="default.aspP=[PrimaryObjectId]&S=[objectId]" title="[objectName]">[objectName]</a></div>
//		<div id="div_secnav_[objectId]" class="[div_secnav | div_secnav_selected]"><a href="default.aspP=[PrimaryObjectId]&S=[objectId]" title="[objectName]">[objectName]</a></div>
//		<div id="div_secnav_[objectId]" class="[div_secnav | div_secnav_selected]"><a href="default.aspP=[PrimaryObjectId]&S=[objectId]" title="[objectName]">[objectName]</a></div>
//	</div>     
//----------------------------------------------------------------------------------------------------------------
// Image Output Example: 
//	<div id="div_prinav_[objectId]" class="[div_prinav | div_prinav_selected]">
//		<a href="default.aspP=[objectId]" title="[objectName]"><img src="/navImages/[objectId]bttn[ | _s].jpg" onmouseover="this.src='/navImages/navImages/[objectId]bttn_s.jpg';" onmouseout="this.src='/navImages/navImages/[objectId]bttn.jpg';"></a>
//		<div id="div_secnav_[objectId]" class="[div_secnav | div_secnav_selected]"><a href="default.aspP=[PrimaryObjectId]&S=[objectId]" title="[objectName]"><img src="/navImages/[objectId]bttn[ | _s].jpg" onmouseover="this.src='/navImages/navImages/[objectId]bttn_s.jpg';" onmouseout="this.src='/navImages/navImages/[objectId]bttn.jpg';"></a></div>
//		<div id="div_secnav_[objectId]" class="[div_secnav | div_secnav_selected]"><a href="default.aspP=[PrimaryObjectId]&S=[objectId]" title="[objectName]"><img src="/navImages/[objectId]bttn[ | _s].jpg" onmouseover="this.src='/navImages/navImages/[objectId]bttn_s.jpg';" onmouseout="this.src='/navImages/navImages/[objectId]bttn.jpg';"></a></div>
//		<div id="div_secnav_[objectId]" class="[div_secnav | div_secnav_selected]"><a href="default.aspP=[PrimaryObjectId]&S=[objectId]" title="[objectName]"><img src="/navImages/[objectId]bttn[ | _s].jpg" onmouseover="this.src='/navImages/navImages/[objectId]bttn_s.jpg';" onmouseout="this.src='/navImages/navImages/[objectId]bttn.jpg';"></a></div>
//	</div>
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	function FV3_WriteComboNavigation(priNavType, secNavType)
	{
	
		FV3_CheckDefaultSelections();
		PriNavArray = getPartialNav(1, 0);
		
		var combonavout = '';
		var prinavstyle = '';
		var prinavimg = '';
		
		for (var i = 0; i < PriNavArray.length; i++)
		{
			
			//Style the selected item differently
			if (PriNavArray[i].itemID == selectedPrimaryID)
			{
				prinavstyle = "div_prinav_selected";
				prinavimg = PriNavArray[i].itemID+"bttn_s.jpg";
			}
			else
			{
				prinavstyle = "div_prinav";
				prinavimg = PriNavArray[i].itemID+"bttn.jpg";
			}			
			
			//Render opening div tag
			combonavout += ("<div id=\"div_prinav_"+PriNavArray[i].itemID+"\" class=\""+prinavstyle+"\">");
			
			//Render opening a tag
			//Test to see if the First Page under this Area is Secure
			SecNavArray = getPartialNav(2, PriNavArray[i].itemID);
			if (FV3_IsEncrypted(SecNavArray[0].itemID))
				combonavout += ("<a href=\"https://"+window.location.host+"/default.asp?P="+PriNavArray[i].itemID+"\" title=\""+PriNavArray[i].name+"\">");
			else
				combonavout += ("<a href=\"http://"+window.location.host+"/default.asp?P="+PriNavArray[i].itemID+"\" title=\""+PriNavArray[i].name+"\">");
			if (priNavType == 0)
			{
				//Render text
				combonavout += (PriNavArray[i].name);
			}
			else
			{
				//Render image
				combonavout += ("<img");
				combonavout += (" src=\"/navImages/"+prinavimg+"\"");
				if (PriNavArray[i].itemID != selectedPrimaryID)
				{
					combonavout += (" onmouseover=\"this.src='/navImages/"+PriNavArray[i].itemID+"bttn_s.jpg';\"");
					combonavout += (" onmouseout=\"this.src='/navImages/"+PriNavArray[i].itemID+"bttn.jpg';\"");				
				}
				combonavout += (">");
			}
			
			//Render close tags
			combonavout += ("</a>");
			
			if (PriNavArray[i].itemID == selectedPrimaryID)
			{
				SecNavArray = getPartialNav(2, selectedPrimaryID);
				var secnavstyle = '';
				var secnavimg = '';
				var pref = '';
				
				for (var n = 0; n < SecNavArray.length; n++)
				{
					
					//Style the selected item differently
					if (SecNavArray[n].itemID == selectedSecondaryID)
					{
						secnavstyle = "div_secnav_selected";
						secnavimg = SecNavArray[n].itemID+"bttn_s.jpg";
					}
					else
					{
						secnavstyle = "div_secnav";
						secnavimg = SecNavArray[n].itemID+"bttn.jpg";
					}			
					
					//Render opening div tag
					combonavout += ("<div");
					combonavout += (" id=\"div_secnav_"+SecNavArray[n].itemID+"\"");
					combonavout += (" class=\""+secnavstyle+"\"");
					combonavout += (">");
					
					//Get Encrypted flag
					if (FV3_IsEncrypted(SecNavArray[n].itemID))
					{
						pref = "https://"+window.location.host+"/";
					}
					else
					{
						pref = "";
					}
					
					//Render opening a tag
					combonavout += ("<a");
					combonavout += (" href=\""+pref+"default.asp?P="+selectedPrimaryID+"&S="+SecNavArray[n].itemID+"\"");		
					combonavout += (" title=\""+SecNavArray[n].name+"\"");
					combonavout += (">");
					
					if (secNavType == 0)
					{
						//Render text
						combonavout += (SecNavArray[n].name);
					}
					else
					{
						//Render image
						combonavout += ("<img");
						combonavout += (" src=\"/navImages/"+secnavimg+"\"");
						if (SecNavArray[n].itemID != selectedSecondaryID)
						{
							combonavout += (" onmouseover=\"this.src='/navImages/"+SecNavArray[n].itemID+"bttn_s.jpg';\"");
							combonavout += (" onmouseout=\"this.src='/navImages/"+SecNavArray[n].itemID+"bttn.jpg';\"");				
						}
						combonavout += (">");
					}
					
					//Render close tags
					combonavout += ("</a>");
					combonavout += ("</div>");
							
				}			
			}
			
			combonavout += ("</div>");
					
		}
		document.write(combonavout);
	}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_WriteContent()
// Last Change: 7.24.2006
// Notes: This function will write the backoffice content into the page.  
// Dependencies: nav.js
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	function FV3_WriteContent()
	{
		
		FV3_CheckDefaultSelections();
		var randomnumber=Math.floor(Math.random()*100000000);
		
		page = new Object();
		page = getItem(selectedSecondaryID);
		
		var excludedFlag = false;
		
		if (page != null && page != 0)
		{
			output = "";
			var embeddedFlag = false;
			
			//Check if this extension should be rendered with the "<embed>" tag
			for (i=0; i<FV3_embedded.length; i++)
			{
				if(page.loc.indexOf(FV3_embedded[i]) != -1)
				{
					embeddedFlag = true;
				}
			}
			
			//Check if this extension will be excluded from receiving a unique querystring id
			for (i=0; i<FV3_uidexclusions.length; i++)
			{
				if(page.loc.indexOf(FV3_uidexclusions[i]) != -1)
				{
					excludedFlag = true;
				}
			}
			
			if (!embeddedFlag)
			{
				if (excludedFlag)
				{
					output += FV3_writeContentElement(1, page.loc);	
				}
				else
				{
					output += FV3_writeContentElement(1, page.loc+"?FV3_ID="+randomnumber);
				}
			}
			else
			{
				output += FV3_writeContentElement(0, page.loc);
			}

			document.write(output);	
			
			//if (FV3_ns4 || FV3_ns6)
			//{
			//	FV3_loadintoIframe("iframe_content", page.loc)
			//}
			
		}
		else
		{
			var ref;
			
			if (excludedFlag)
			{
				ref = "goto.asp?LPObjID="+selectedSecondaryID;
			}
			else
			{
				ref = "goto.asp?LPObjID="+selectedSecondaryID+"&FV3_ID="+randomnumber;
			}
			
			var out = FV3_writeContentElement(1, ref);
			document.write(out);
		}
	}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_resizeCaller()
// Last Change: 7.26.2006
// Notes: Utility function, loops through our Iframes declared in the globals section and calls our dynamic resize function
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	function FV3_resizeCaller() 
	{
		var dyniframe=new Array();
		for (i=0; i<FV3_iframeids.length; i++)
		{
			if (document.getElementById)
			{
				FV3_resizeIframe(FV3_iframeids[i]);
			}
			
			//reveal iframe for lower end browsers? (see var above):
			if ((document.all || document.getElementById) && FV3_iframehide=="no")
			{
				var tempobj=document.all? document.all[FV3_iframeids[i]] : document.getElementById(FV3_iframeids[i]);
				if (tempobj != null)
				{
					tempobj.style.display="block";
				}
			}
		}
	}


///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_writeContentElement(emb,loc)
// emb = 1 : write frame
// emb = 0 : write embed
// Last Change: 7.26.2006
// Notes: Utility function, sizes an IFrame based on its contents height
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	function FV3_writeContentElement(emb, pLoc)
	{
		var output = "";
				
		if (emb==1)
		{
			output += "<iframe";
			output += " id=\"iframe_content\""; 
			output += " src=\""+pLoc+"\"";
			output += " scrolling=\"no\"";
			output += " marginwidth=\"0\"";
			output += " marginheight=\"0\"";
			output += " frameborder=\"0\""
			output += " vspace=\"0\"";
			output += " hspace=\"0\"";
			output += " style=\"overflow:visible; display:none\"";
			output += "></iframe>";
		}
		else
		{
			output += "<embed ";
			output += " src=\""+pLoc+"\"";
			output += " id=\"embed_content\"";
			output += " width=\"612\"";
			output += " height=\"792\"";
			output += ">";
			output += "</embed>";
		}
		
		return output;
	}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_resizeIframe(frameid)
// Last Change: 7.26.2006
// Notes: Utility function, sizes an IFrame based on its contents height
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	function FV3_resizeIframe(frameid)
	{
		var currentfr=document.getElementById(frameid)
		
		if (currentfr && !window.opera)
		{
			currentfr.style.display="block";
			
			if (currentfr.contentDocument && currentfr.contentDocument.body.offsetHeight) //ns6 syntax
			{
				currentfr.width = "100%";	
				currentfr.height = currentfr.contentDocument.body.offsetHeight+FV3_FFextraHeight;
			}
			else if (currentfr.Document && currentfr.Document.body.scrollHeight) //ie5+ syntax
			{
				if (currentfr.Document.body.scrollWidth > document.body.scrollWidth)
				{
					currentfr.style.width = (currentfr.Document.body.scrollWidth+"px");
				}
				else
					currentfr.style.width = "100%";
					
				//currentfr.height = currentfr.Document.body.scrollHeight+(currentfr.Document.body.scrollHeight*.025);
				currentfr.style.height = currentfr.Document.body.scrollHeight+(currentfr.Document.body.scrollHeight*.025);
			}
			
			if (currentfr.addEventListener)
			{
				currentfr.addEventListener("load", FV3_readjustIframe, false);
			}
			else if (currentfr.attachEvent)
			{
				currentfr.detachEvent("onload", FV3_readjustIframe) // Bug fix line
				currentfr.attachEvent("onload", FV3_readjustIframe)
			}
		}
	}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_readjustIframe(loadevt)
// Last Change: 7.26.2006
// Notes: Utility function
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	function FV3_readjustIframe(loadevt) 
	{
		var crossevt=(window.event)? event : loadevt;
		var iframeroot=(crossevt.currentTarget)? crossevt.currentTarget : crossevt.srcElement;
		
		if (iframeroot)
		{
			FV3_resizeIframe(iframeroot.id);
		}
	}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_loadintoIframe(iframeid, url)
// Last Change: 7.26.2006
// Notes: Utility function, sets an IFrame's src
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//	function FV3_loadintoIframe(iframeid, url)
//	{
		
//		var FV3_contentFrame;
//		var FV3_contentFrameDoc;
		
//		if (document.frames)
//		{
			//ie
//			FV3_contentFrame = document.frames[iframeid];
//		}
//		else if (document.getElementById)
//		{
			//ns
//			FV3_contentFrame = document.getElementById(iframeid);
//		}
		
//		alert(FV3_contentFrame);
		
//	   if( FV3_contentFrame.contentDocument )
//	   {
		  // For NS6
//		  alert(1);
//		  FV3_contentFrameDoc = FV3_contentFrame.contentDocument; 
//	   }
//	   else if( FV3_contentFrame.contentWindow ) 
//	   {
		  // For IE5.5 and IE6
//		  alert(2);		  
//		  FV3_contentFrameDoc = FV3_contentFrame.contentWindow.document;
//	   }
//	   else if( FV3_contentFrame.document )
//	   {
		  // For IE5
//		  alert(3);		  
//		  FV3_contentFrameDoc = FV3_contentFrame.document;
//	   }
//	   else
//	   {
		  // TODO: Confirm this should be the default
//		  alert(4);		
//		  FV3_contentFrameDoc = FV3_contentFrame.document;		
//	   }
	   
//	   FV3_contentFrameDoc.location.replace(url);		 

//if (IFrameObj.contentDocument) {
//   // For NS6
//    IFrameDoc = IFrameObj.contentDocument; 
//  } else if (IFrameObj.contentWindow) {
//    // For IE5.5 and IE6
//    IFrameDoc = IFrameObj.contentWindow.document;
//  } else if (IFrameObj.document) {
//    // For IE5
//    IFrameDoc = IFrameObj.document;
//  } else {
//    return true;
// }

		
		//if (document.getElementById)
		//{
			//document.getElementById(iframeid).src=url;
			
			//iframe_content.document.location.replace(url);
		//}
//	}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_CheckDefaultSelections()
// Last Change: 7.24.2006
// Notes: This function will set the selected primary and secondary if none have been selected.  It will select the first 
//		  primary area and the first secondary within the first primary.
// Dependencies: nav.js, sec.js
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	function FV3_CheckDefaultSelections()
	{
		//If no secondary has been selected, pull the first secondary for the selected (or first) primary
		if (navArray.length > 0)
		{
			if (selectedSecondaryID == -1)
			{
				if (selectedPrimaryID == -1)
					selectedPrimaryID = navArray[0].itemID;

				tmpArray = getPartialNav(2, selectedPrimaryID);
				selectedSecondaryID = tmpArray[0].itemID;
			}
		}
	}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Name: FV3_IsEncrypted(objectID)
// Last Change: 7.24.2006
// Notes: This tests if the page should be encrypted based on the passed in object id.  
// Dependencies: nav.js, sec.js
//----------------------------------------------------------------------------------------------------------------
// Inputs: itemID (the object Id of the content page)
//----------------------------------------------------------------------------------------------------------------
// Outputs: true | false
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	function FV3_IsEncrypted(itemID)
	{
		for (i = 0; i < FV3_encArray.length; i++)
		{
			if (FV3_encArray[i].itemID == itemID)
				return true;
		}
		return false;
	}

//////////////////////////////////////////////////////////////////////////////////////
// Name: Legacy navArray functions
// Last Change: 7.24.2006
//////////////////////////////////////////////////////////////////////////////////////
	function addItem(level, itemID, parentItemID, isParent, name, desc, filetype)
	{
		navArray[total] = new Object();
		navArray[total].itemID = itemID;
		navArray[total].myParent = parentItemID;
		if (isParent > 0)
			navArray[total].isParent = true;
		else
			navArray[total].isParent = false;
		navArray[total].level = level;
		navArray[total].uDisplay = itemID + "bttn.jpg";
		navArray[total].sDisplay = itemID + "bttn_S.jpg";
		navArray[total].loc = itemID + filetype;
		navArray[total].name = name;
		navArray[total].desc = desc;
		if (navArray[total].desc == " ")
			navArray[total].desc = navArray[total].name;
		navArray[total].expanded = 0;
		if (navArray[total].itemID == selectedPrimaryID)
			navArray[total].expanded = 1;
		navArray[total].selected = 0;
		if (navArray[total].itemID == selectedSecondaryID)
			navArray[total].selected = 1;
		total++;
	}
		
	function getItem(itemID)
	{
	
		for (i = 0; i < navArray.length; i++)
		{
			if (navArray[i].itemID == itemID)
			{
				thisObj = new Object();
				thisObj.itemID = itemID;
				thisObj.myParent = navArray[i].myParent;
				thisObj.isParent = navArray[i].isParent;
				thisObj.level = navArray[i].level;
				thisObj.uDisplay = navArray[i].uDisplay;
				thisObj.sDisplay = navArray[i].sDisplay;
				thisObj.loc = navArray[i].loc;
				thisObj.name = navArray[i].name;
				thisObj.desc = navArray[i].desc;
				thisObj.expanded = navArray[i].expanded;
				thisObj.selected = navArray[i].selected;
	
				return thisObj;
			}
		}
		
		return 0;
	}
		
	function getCompleteNav()
	{
		return navArray;
	}
	
	function getPartialNav(type,parent)
	{
		if (parent == 0)
			{
			if (type == 1)
				parent = navArray[0].myParent;
			else
				parent = navArray[0].itemID;
			}
		var thisNavArray = new Array();
		var thisTotal = 0
		for (i = 0; i < navArray.length; i++)
			{
			if (navArray[i].myParent == parent)
				{
				thisNavArray[thisTotal] = new Object();
				thisNavArray[thisTotal].itemID = navArray[i].itemID;
				thisNavArray[thisTotal].myParent = navArray[i].myParent;
				thisNavArray[thisTotal].isParent = navArray[i].isParent;
				thisNavArray[thisTotal].level = navArray[i].level;
				thisNavArray[thisTotal].sDisplay = navArray[i].sDisplay;
				thisNavArray[thisTotal].uDisplay = navArray[i].uDisplay;
				thisNavArray[thisTotal].loc = navArray[i].loc;
				thisNavArray[thisTotal].name = navArray[i].name;
				thisNavArray[thisTotal].desc = navArray[i].desc;
				thisNavArray[thisTotal].expanded = navArray[i].expanded;
				thisNavArray[thisTotal].selected = navArray[i].selected;
				thisTotal++;
				}
			}
		return thisNavArray;
	}
		
	function getSelectedPrimaryID()
	{
		if (selectedPrimaryID == -1)
			{
			selectedPrimaryID = navArray[0].itemID;
			navArray[0].expanded = 1;
			}
		return selectedPrimaryID;
	}
	
	function getSelectedSecondaryID()
	{
		if (selectedSecondaryID == -1)
			{
			if (selectedPrimaryID == -1)
				{
				selectedSecondaryID = navArray[1].itemID;
				navArray[1].selected = 1;
				}
			else
				{
				for (var i=0;i<navArray.length;i++)
					{
					if (navArray[i].itemID == selectedPrimaryID)
						{
						selectedSecondaryID = navArray[i + 1].itemID;
						navArray[i + 1].selected = 1;
						}
					}
				}
			}
		return selectedSecondaryID;
	}
	
	
