// THIS FILE IS DEPRECATED AS OF SHARED V2.0 (use dlese_script_x_y.js instead)

// ------------------------------------ Script globals ------------------------------------
// $Id: dlese_script_nav.js,v 1.70 2006/09/25 23:01:58 ryandear Exp $ 
var dlese_isFrontPage = false; // Set to true only for homepage (no specialty areas button)
var dlese_pageShowsVocabSelected = true; // Does the current page display criteria state?
var dlese_documentDoneLoading = false; // Indicates when the page is done loading
var dlese_pageHasVocabs = false; // Does the page display controlled vocabs?
var dlese_navSelected;  // Which nav button is highlighted
var dlese_allNav = new Array(); // List of every navigation list defined so far
var dlese_docIsSideNav = false;	// Does this page have side navigation?
var vocabQueryString = '';	// Only used by Discovery searches
var dlese_DISCOVERY_ROOT = '/dds/'; // Root (servlet context) of the DDS
var dlese_menusOnly = false;	// CRS site does not use search banner
var dlese_isFrames = false;	// Is the current page inside a frameset?
var dlese_ddsQueryForm = null; // HTML/Struts query form
var dlese_ddsQueryFormName = "ddsQueryForm"; // Name of the query form
var mouseClickedOnOpenVocab = false;	// When mouseDown occurs, is it over an open vocab?
var SIDE_MENU_TOP = 120;		// Side menus default position
var SIDE_MENU_WIDTH = 163;		// Side menus default width
var SIDE_MENU_BACK_IMG = "/dlese_shared/images/side_nav_background.gif"; // default image for side menus background
var M0;	// Side menus (null initially)
var dlese_isDevServer = false;	// Dev servers have absolute links re-written
var dlese_myHost = document.location.href.substring( 0, document.location.href.indexOf( '/', 7 ) );
var surveyIsPresent = true;	// set to false to supress surveys
var dlese_noMenus = false;  // are banner menus present?
if ( ( dlese_myHost.indexOf( 'local' ) > -1 ) ||
		( dlese_myHost.indexOf( 'wwwqa' ) > -1 ) || 
		( dlese_myHost.indexOf( 'wwwdev' ) > -1 ) ||
		( dlese_myHost.indexOf( 'aegean' ) > -1 ) || 
		( dlese_myHost.indexOf( 'ionian' ) > -1 ) ||
		( dlese_myHost.indexOf( 'bolide' ) > -1 ) ||
		( dlese_myHost.indexOf( 'dev.dpc' ) > -1 ) || 
		( dlese_myHost.indexOf( 'dev.dlese' ) > -1 ) || 
		( dlese_myHost.indexOf( 'beta.dlese' ) > -1 ) || 
		( dlese_myHost.indexOf( 'preaccession.dlese' ) > -1 ) ||  
		( dlese_myHost.indexOf( 'aegean.dlese' ) > -1 ) || 
		( dlese_myHost.indexOf( 'preview.dlese' ) > -1 ) || 
		( dlese_myHost.indexOf( 'porcupine' ) > -1 ) ||
		( dlese_myHost.indexOf( '66.7.185.166' ) > -1 ) ||			
		( dlese_myHost.indexOf( 'tremor.dpc' ) > -1 ) )
	dlese_isDevServer = true;
if ( document.location.href.indexOf( "dev=false" ) > -1 ) {
	dlese_isDevServer = false;
	createCookie( "dleseDev", "false" );
}
else if ( document.location.href.indexOf( "dev=true" ) > -1 ) {
	dlese_isDevServer = true;
	createCookie( "dleseDev", "true" );
}
if ( readCookie( "dleseDev" ) == "false" )
	dlese_isDevServer = false;
else if ( readCookie( "dleseDev" ) == "true" )
	dlese_isDevServer = true;
// ------------------------------------ Browser detection ------------------------------------
var dlese_isIE;
var dlese_isNetscape;
var dlese_isN4 = false;
var dlese_isSafari = false;
var dlese_isMac = false;
var dlese_agt = navigator.userAgent.toLowerCase();
var dlese_noscript = true; //  2 cases: isStandard (script + .innerHTML) and noscript, so just say noscript
var dlese_isSearchPage = false;
var dlese_isNewsOpps = false;
var dlese_isSiteSearch = false;
var surveyMOCount = 0;  // mouseOver detection of survey (click outside closes it)
if ( navigator.appName.indexOf( 'Microsoft' ) > -1 ) {
	dlese_isIE = true;
}
if ( navigator.appName == 'Netscape' ) {
	if ( parseInt( navigator.appVersion ) == 4 ) {
		dlese_isN4 = true;
		dlese_noscript = true;
	}
}
if ( document.getElementById  ) {	
	dlese_noscript = false;
	if ( navigator.appName == 'Netscape' ) {
		dlese_isNetscape = true;
	}
}
if ( dlese_agt.indexOf( "safari" ) > -1 ) {
	dlese_isSafari = true;
	document.writeln( "<style type='text/css'>.dlese_pageContentHighBanner { position: relative; }" ); 
	document.writeln( ".dlese_pageContentShortBanner { position: relative; }</style>" );	
}
if ( dlese_agt.indexOf( "mac" ) != -1 )
	dlese_isMac = true;
if ( dlese_isNetscape )
	document.writeln( "<style type='text/css'>.dlese_homeEtcLinks { position: relative; top: -24px; }</style>" );

// NOTE: the following setting of dlese_SearchTipsImg is retained only for backwards compatibility with pre-v1.43 
// (that style no longer used)
// Set position of search tips graphic (quite a fudge, ideally it will be re-worked at some point
// so as not to use CSS positioning):
if ( dlese_isSafari ) {
	document.writeln( "<style type='text/css'>.dlese_SearchTipsImg { top: 16px; left: 5px; position: relative; margin: 0px; padding: 0px; }</style>" );
	document.writeln( "<style type='text/css'>.dlese_SearchTipsImgDDS { top: 11px; left: 5px; position: relative; margin: 0px; padding: 0px; }</style>" );	
}
else if ( dlese_isNetscape ) {
	if ( dlese_isMac ) {
		document.writeln( "<style type='text/css'>.dlese_SearchTipsImg { top: 11px; left: 4px; position: relative; margin: 0px; padding: 0px; }</style>" );
		document.writeln( "<style type='text/css'>.dlese_SearchTipsImgDDS { top: 7px; left: 4px; position: relative; margin: 0px; padding: 0px; }</style>" );		
	}
	else {
		document.writeln( "<style type='text/css'>.dlese_SearchTipsImg { top: 7px; left: 5px; position: relative; margin: 0px; padding: 0px; }</style>" );
		document.writeln( "<style type='text/css'>.dlese_SearchTipsImgDDS { top: 1px; left: 5px; position: relative; margin: 0px; padding: 0px; }</style>" );
	}
}
else {
	if ( dlese_isMac ) {
		document.writeln( "<style type='text/css'>.dlese_SearchTipsImg { top: 17px; left: 5px; position: relative; margin: 0px; padding: 0px; }</style>" );
	}
	else {
		document.writeln( "<style type='text/css'>.dlese_SearchTipsImg { top: 15px; left: 5px; position: relative; margin: 0px; padding: 0px; }</style>" );
		document.writeln( "<style type='text/css'>.dlese_SearchTipsImgDDS { top: 9px; left: 5px; position: relative; margin: 0px; padding: 0px; }</style>" );
	}
}

function dlese_doMouseDown( event ) {
	if ( !dlese_noscript ) {
		if ( !dlese_isNetscape ) {
			if ( ( window.event.clientX < getInsideWindowWidth() ) &&
				 ( window.event.clientY < getInsideWindowHeight() ) )
			 	setTimeout( "dlese_mouseDown()", 1 );
		}
		else {
			if ( ( event.pageX < getInsideWindowWidth() ) &&
				 ( event.pageY < getInsideWindowHeight() ) )
			 	setTimeout( "dlese_mouseDown()", 1 );
		}
	}
}
function dlese_mouseDown() {
	if ( !dlese_noscript ) {
		dlese_hideAllNav();
		if ( dlese_pageHasVocabs ) {
			if ( !mouseClickedOnOpenVocab )
				dlese_hideAllVocab();
			else
				mouseClickedOnOpenVocab = false;
		}
		var obj = document.getElementById( "dleseSurvey" );
		if ( obj != null && surveyMOCount == 0 ) {
			obj.style.display = 'none';
			surveyIsShowing = false;
			dlese_hideSelectListsIE( false );
		}		
	}
}
document.onmousedown = dlese_doMouseDown;

// ------------------------------------ DDS/Site searches ------------------------------------

function dlese_siteSearch() {
	var stype = '';
	if ( dlese_isFrontPage ) {
		if ( dlese_ddsQueryForm.over[ 0 ].checked )
			stype = 1;
		if ( dlese_ddsQueryForm.over[ 1 ].checked )
			stype = 2;
		if ( dlese_ddsQueryForm.over[ 2 ].checked )
			stype = 3;
		if ( dlese_ddsQueryForm.over[ 3 ].checked )
			stype = 4;
	}
	else {
		stype = dlese_ddsQueryForm.over.value;
	}
	createCookie( "searchOverSelected", stype - 1 );
	if ( stype > 1 ) {
		if ( self != top )
			top.location.href = dlese_ddsQueryForm.action + "?q=" 
				+ dlese_ddsQueryForm.q.value + "&over=" + stype;
		else {
			if ( stype == 2 ) { // News search
				var searchURL = "/news_opportunities/search.jsp?q=" + dlese_ddsQueryForm.q.value;
				if ( dlese_ddsQueryForm.announcementType )
					searchURL = searchURL + "&announcementType=" + dlese_ddsQueryForm.announcementType.value;
				top.location.href = searchURL;
			}
			else
				dlese_ddsQueryForm.submit();
		}
	}
	else {
		var query = "q=" + dlese_ddsQueryForm.q.value + vocabQueryString + "&s=0";			
		if ( dlese_isDevServer )
			top.location.href = dlese_DISCOVERY_ROOT + "query.do?" + query;
		else {
			if ( self != top )
				top.location.href = "http://www.dlese.org" + dlese_DISCOVERY_ROOT + "query.do?" + query;
			else
				document.location.href = "http://www.dlese.org" + dlese_DISCOVERY_ROOT + "query.do?" + query;
		}
	}
	return false;
}

// ------------------------------------ Utility functions ------------------------------------
function getObject( name ) {
	if ( !dlese_noscript )
		return document.getElementById( name );
}
function getInsideWindowWidth() {
	if ( !dlese_noscript )
		return document.body.clientWidth;
}
function getInsideWindowHeight() {
	if ( !dlese_noscript )
		return document.body.clientHeight;
}
function showObj( name ) {
	var obj = getObject( name );
	if ( !dlese_noscript ) {
		obj.style.display = "block";
		obj.style.visibility = "visible";
	}
}
function hideObj( name ) {
	var obj = getObject( name );
	if ( obj ) {
		if ( !dlese_noscript ) {
			obj.style.display = "none";
			obj.style.visibility = "hidden";
		}
	}
}
function toggleObjDisplay( name ) {
	var obj = getObject( name );
	var showing;
	showing = obj.style.display;
	if ( !showing || showing == "none" ) {
		showObj( name );
	}
	else {
		hideObj( name );
	}
}

var dlese_sectionTitleText = 'Welcome to<br/>DLESE!';
function dlese_highlightSectionTitle() {
	if ( !dlese_noscript && !dlese_menusOnly ) {
		var obj = getObject( 'dlese_sectionTitle' );
		if ( obj && !obj.innerHTML && !( dlese_isMac && dlese_isIE ) ) {
			obj.innerHTML = dlese_sectionTitleText;
		}
	}
	// Also, set query string for banner searches:
	var docLocation = document.location.href;
	docLocation = docLocation.replace( /\?q=/, "?&q=" );
	var ind = docLocation.indexOf( '&q=' );
	var indAdd = 3;
	if ( ind == -1 ) {
		ind = docLocation.indexOf( '&query=' );
		indAdd = 7;
	}
	if ( ind > -1 ) {
		var ind2 = docLocation.indexOf( '&', ind + 1 );
		if ( ind2 == -1 )
			ind2 = docLocation.length;
		if ( dlese_ddsQueryForm ) {
			dlese_ddsQueryForm.q.value = unescape( docLocation.substring( ind + indAdd, ind2 ) );
			dlese_ddsQueryForm.q.value = removePluses( dlese_ddsQueryForm.q.value );
		}
	}
	// And set the search over select list to whatever was just searched over:
	ind = docLocation.indexOf( '&over=' );
	if ( ind > -1 ) {
		var overIndex = docLocation.substring( ind + 6, ind + 7 );
		dlese_ddsQueryForm.over.selectedIndex = overIndex - 1;
	}
	else {
		if ( ( docLocation.indexOf( '/news_opportunities/' ) > -1 ) ||
			 ( docLocation.indexOf( 'sitequeryNO.jsp' ) > -1 ) ) {
			dlese_ddsQueryForm.over.selectedIndex = 1;
			dlese_isNewsOpps = true;
		}
		else if ( docLocation.indexOf( '/site_search/' ) > -1 )
			  dlese_isSiteSearch = true;
		else if ( docLocation.indexOf( 'sitequeryEM.jsp' ) > -1 )
			dlese_ddsQueryForm.over.selectedIndex = 2; 
		else if ( docLocation.indexOf( 'sitequerySO.jsp' ) > -1 )
			dlese_ddsQueryForm.over.selectedIndex = 3;	
	}
}
function removePluses( str ) {
	var ret = str;
	var ind = ( ret.indexOf( "+" ) );
	while ( ind > -1 ) {
		ret = ret.substring( 0, ind ) + " " + ret.substring( ind + 1, ret.length );
		ind = ( ret.indexOf( "+" ) );
	}
	return ret;
}
var isLoaded = false;
function dlese_pageOnLoad() {
	if ( !isLoaded ) {
		isLoaded = true;	
		dlese_ddsQueryForm = eval( "document.forms." + dlese_ddsQueryFormName );
		var menusOnlyImg = document.getElementById( "dlese_menusOnly" );
		if ( menusOnlyImg )
			dlese_menusOnly = true;
		else
			dlese_highlightSectionTitle();					
		// Does this page have a side menu?
		if ( !dlese_noscript && dlese_docIsSideNav && !dlese_isNoMenus() ) {
			document.body.style.background = "url(" + SIDE_MENU_BACK_IMG + ")";
			if ( M0 ) {
				dlese_renderMenu( M0 );
				checkChildren( M0 );
			}
			dlese_printFriendlyLink();
		}
		if ( dlese_isFrontPage ) {
			dlese_searchOnLoad();
		}
		if ( !dlese_isNewsOpps && !dlese_isSiteSearch && dlese_ddsQueryForm && dlese_ddsQueryForm.q.value == '' )
			dlese_ddsQueryForm.q.focus();
		if ( dlese_isNoMenus() ) {	// Alter banner for printable display:
			var obj = getObject( 'dlese_sectionTitle' );
			if ( obj != null )
				obj.style.display = "none";
			obj = document.getElementById( "dlese_bannerTable" );
			obj = getObject( "dlese_sideNavMenu" );
			if ( obj != null )
				obj.style.display = "none";
			obj = document.getElementById( "dlese_bannerTable" );
			if ( obj != null ) {
				if ( dlese_isMac )
					obj.style.display = "none"; // Mac crashes for some reason when re-writing innerHTML
				else
					obj.innerHTML = "<table border=0 style='margin-left: 8px; margin-right: 8px;' width=95%>"
					+ "<td align=left><a href='http://www.dlese.org' target='_top'>"
					+ "<img border=0 src='/dlese_shared/images/littlelogo.jpg' "
					+ "alt='Digital Library for Earth System Education'></a></td>"
					+ "<td align=right>"
					+ "<a href='javascript:window.close()'>Close this window</a></td></table>\n";
			}
		}
		cook = parseInt( readCookie( "searchOverSelected" ) );
		if ( cook && dlese_ddsQueryForm && dlese_ddsQueryForm.over && dlese_isStaticPage() )
			dlese_ddsQueryForm.over.selectedIndex = cook;		
		if ( surveyIsPresent )
			initializeSurvey();
		setTimeout( "dlese_changeDevDomains()", 100 );
		insertOmnitureCode();			
	}				
}
var omnitureInserted = false;
function insertOmnitureCode() {
	if ( !omnitureInserted ) {
		omnitureInserted = true;
		document.writeln( "<script type='text/javascript' src='/dlese_shared/s_code_remote.js'></script>" );
	}
}
function dlese_isNoMenus() {
	if ( document.location.href.indexOf( '?nomenus' ) > -1 || document.location.href.indexOf( '?print' ) > -1 )
		return true;
	return false;
}
function dlese_isStaticPage() {
	var docLocation = document.location.href;
	if ( docLocation.indexOf( "/dds/" ) > -1 )
		return false;
	if ( docLocation.indexOf( "/news_opportunities/" ) > -1 )
		return false;
	if ( docLocation.indexOf( "/site_search/" ) > -1 )
		return false;
	return true;
}
function dlese_changeDevDomains() {
	// Change developer domains:
	if ( dlese_isDevServer ) {
		// Change all doc links that go to http://www.dlese.org to current domain:
		for ( var i = 0; i < document.links.length; i++ ) {
			if ( document.links[ i ].href.indexOf( 'javascript:' ) == -1 ) {
				var ind = document.links[ i ].href.indexOf( 'http://www.dlese.org' );
				if ( ind == 0 ) {
					document.links[ i ].href = dlese_myHost + document.links[ i ].href.substring( 20, document.links[ i ].href.length );
				}
			}
		}
		if ( dlese_ddsQueryForm ) {
			if ( dlese_ddsQueryForm.action.indexOf( "http://" ) > -1 ) {
				var ind = dlese_ddsQueryForm.action.indexOf( "/", 8 );
				if ( ind > -1 )
					dlese_ddsQueryForm.action = dlese_myHost + dlese_ddsQueryForm.action.substring( ind, dlese_ddsQueryForm.action.length );
			}
			else
				dlese_ddsQueryForm.action = dlese_myHost + dlese_ddsQueryForm.action;				
		}
	}
}
function dlese_changeDevDomainSingleLink( link ) {
	// Change developer domains:
	if ( dlese_isDevServer ) {
		var ind = link.indexOf( 'http://www.dlese.org' );
		if ( ind == 0 ) {
				link = dlese_myHost + link.substring( 20, link.length );
		}
	}
	return link;
}
function dlese_openHtmlBody() {
	if ( !dlese_noscript && !dlese_isNoMenus() ) {
		dlese_renderSiteNavButtons();
		if ( dlese_docIsSideNav && !dlese_isNoMenus() ) {
			document.body.style.background = "url(/dlese_shared/images/side_nav_background.gif)";
			document.writeln( "<div class='dlese_pageContentSideNavigation' id='dlese_pageContent' onMouseDown='dlese_mouseDown()'>" );
		}
		else if ( !dlese_menusOnly && !dlese_isSearchPage ) {
			document.writeln( "<div class='dlese_pageContentShortBanner' id='dlese_pageContent' onMouseDown='dlese_mouseDown()'>" );
		}
		else if ( !dlese_isSearchPage )
			document.writeln( "<div class='dlese_pageContentShortestBanner' id='dlese_pageContent' onMouseDown='dlese_mouseDown()'>" );
	}
}
function dlese_closeHtmlBody() {		
	if ( !dlese_noscript && !dlese_isNoMenus() ) {
		if ( !dlese_isSearchPage )
			document.writeln( "</div>" );
		document.writeln( dlese_treeDiv );	
	}
	document.writeln( "<div style='position: absolute; top: 0px; left: 0px; z-index: 9999999;'><img alt='Digital Library for Earth System Education' border='0' width='100' height='50' src='/dlese_shared/images/blank.gif' usemap='#homeLink'></div>" );
	var obj = getObject( 'dlese_sectionTitle' );
	if ( !obj && !dlese_dontShowWelcome() )
		document.writeln( "<div id='dlese_sectionTitle' class='dlese_sectionTitle'>Welcome to DLESE!</div>" );
	dlese_pageOnLoad();
}	
function dlese_dontShowWelcome() {
	// Swiki sites don't use the full nav banner
	if ( dlese_myHost.indexOf( "swiki" ) > -1 )
		return true;
	// Nor does the Register system
	if ( document.location.href.indexOf( "/register/" ) > -1 )
		return true;
	return false;
}
var siteNavButtonsRendered = false;
function dlese_renderSiteNavButtons( divName ) {
	if ( !dlese_noMenus ) {
		if ( siteNavButtonsRendered == false && !dlese_isNoMenus() ) {
			dlese_hideNoscriptNav();
			for ( var i = 0; i < dlese_allNav.length; i++ ) {
				if ( divName )
					dlese_NavigationRenderInnerHtml( eval( dlese_allNav[ i ] ), divName );
				else
					dlese_NavigationRender( eval( dlese_allNav[ i ] ) );
			}
			siteNavButtonsRendered = true;
		}
	}
}
function dlese_notemplateClosing() {
	dlese_highlightSectionTitle();
	dlese_renderSiteNavButtons();
	setTimeout( "dlese_changeDevDomains()", 1000 );
}

function dlese_openPage( url, navList, linkLabel ) {
	window.open( url, '_top' );
}

// ------------------------------------ Site navigation functions ------------------------------------

function dlese_NavigationList( name, 
		imgClosed, 
		imgOpen, 
		imgSelectedClosed, 
		imgSelectedOpen, 
		imgWidth, 
		imgHeight, 
		left, 
		top, 
		noscriptHref, 
		altText ) {
	this.name = name;
	this.div = name + 'navDiv';
	this.closeCall = 0;
	this.imgClosed = new Image();
	this.imgClosedSrc = imgClosed;	
	this.imgOpen = new Image();
	this.imgSelectedClosed = new Image();
	this.imgSelectedClosedSrc = imgSelectedClosed;	
	this.imgSelectedOpen = new Image();
	if ( imgClosed ) {	
		this.imgClosed.src = imgClosed;	
		this.imgOpen.src = imgOpen;
		this.imgSelectedClosed.src = imgSelectedClosed;
		this.imgSelectedOpen.src = imgSelectedOpen;
	}
	this.imgWidth = imgWidth;
	this.imgHeight = imgHeight;
	this.left = left;
	this.top = top;
	this.noscriptHref = noscriptHref;
	this.altText = altText;
	this.moCount = 0;
	this.isOpen = false;
	this.parent = 0;
	this.label = new Array();
	this.href = new Array();
	this.target = new Array();	
	this.sublist = new Array();
	if ( altText )
		dlese_allNav[ dlese_allNav.length ] = name;
}
function dlese_AddNav( list, label, href, target, sublist ) {
	var ind = list.label.length;
	list.label[ ind ] = label;
	list.href[ ind ] = href;
	list.target[ ind ] = target;
	if ( !target )
		list.target[ ind ] = '_top';
	if ( sublist ) {
		list.sublist[ ind ] = sublist;
		sublist.parent = list;
	}
}
// ------------------------------------ Render the DIV code ------------------------------------
function dlese_NavigationRender( list ) {
	if ( !dlese_noscript ) {
		var imgSrc = list.imgClosedSrc;
		if ( dlese_navSelected == list.name )
			imgSrc = list.imgSelectedClosedSrc;
		document.writeln( "<style type='text/css'>" );
		document.writeln( ".dlese_Nav" + list.name + " { position: absolute; left: " 
			+ list.left + "px; top: " + list.top + "px; z-index: 50000; padding: 0px; margin: 0px; }" );
		document.writeln( "</style>" );
		if ( list.label.length > 0 ) {
			document.writeln( "<div class='dlese_Nav" + list.name + "' id='dlese_NavButton" + list.name
				+ "'><a href='javascript:dlese_toggleNavButton( " 
				+ list.name + " )' onMouseOver='dlese_navOver( " + list.name + " ); "
				+ "window.status=\"\"; return false;' "
				+ "onMouseOut='setTimeout( \"dlese_navOut( " + list.name + " );\", 1 )'><img border='0' alt=\"" 
				+ list.altText + "\" src='" + imgSrc + "' width='" + list.imgWidth + "' " + "height='" 
				+ list.imgHeight + "' id='" + list.name	+ "navImg'>" + "</a></div>" );
		}
		else {
			document.writeln( "<div class='dlese_Nav" + list.name + "'><a href='" + list.noscriptHref 
				+ "'><img border='0' alt=\"" + list.altText + "\" src='" + imgSrc + "' width='" + list.imgWidth + "' " + "height='" 
				+ list.imgHeight + "'>" + "</a></div>" );	
		}	
		dlese_displayNavList( list, list.left - 2, list.top + list.imgHeight - 1 );
	}
}	
function dlese_displayNavList( list, left, top ) {
	if ( list.label.length > 0 ) {
		var topList = list;
		while ( topList.parent )
			topList = topList.parent;
		if ( left && top ) {
			left += 2; top += 2;
			document.writeln( "<style type='text/css'><!--" );
			document.writeln( ".navDivStyle" + list.div + " { display: none; visibility: hidden; position: absolute;" );
			document.writeln( "left: " + left + "px; top: " + top + "px; " );
			document.writeln( "background-color: #FFFFFF; font-family: arial, helvetica, sans-serif;" );
			document.writeln( "margin: 0px; padding: 5px; border: 2px outset #DDDDDD; z-index: 100000; }" );
			document.writeln( "-->\n</style>" );
			document.writeln( "<div id='" + list.div 
				+ "' class='navDivStyle" + list.div + "' "
				+ "onMouseOver='dlese_navOver( " + topList.name + " );' "
				+ "onMouseOut='setTimeout( \"dlese_navOut( " + topList.name + " );\", 1 )'>" );
		}
		else
			document.writeln( "<div id='" + list.div + "' class='dlese_siteNavInnerLayer' onMouseOver='dlese_navOver( " + topList.name + " );' "
				+ "onMouseOut='setTimeout( \"dlese_navOut( " + topList.name + " );\", 1 )'>" );
		document.writeln( "<table border='0' cellpadding='0' cellspacing='0' onMouseOver='dlese_navOver( " + topList.name + " );' "
			+ "onMouseOut='setTimeout( \"dlese_navOut( " + topList.name + " );\", 1 )'>" );
		for ( var i = 0; i < list.label.length; i++ ) {
			var hasTarget = false;
			var target = " target='" + list.target[ i ] + "'";
			if ( list.target[ i ] != '_top' )
				hasTarget = true;
			if ( list.sublist[ i ] ) {
				document.writeln( "<tr><td valign='top' nowrap><a href='javascript:dlese_toggleNav( " 
					+ list.sublist[ i ].name + " );' "
					+ "onMouseOver='dlese_navOver( " + topList.name + " ); window.status=\"\"; "
					+ "return true;' onMouseOut='setTimeout( \"dlese_navOut( " + topList.name + " );\", 1 )' "
					+ "class='dlese_siteNavLinks'>" + list.label[ i ] 
					+ " <img alt='List of " + list.label[ i ] + "' border='0' src='" 
					+ dlese_ARROW_CLOSED_DROPDOWN_SRC + "' id='" + list.sublist[ i ].name + "navToggle'></a>" ); 
				dlese_displayNavList( list.sublist[ i ] );
				document.writeln( "</td></tr>" );
			}
			else {
				document.writeln( "<tr><td valign='top' nowrap>" );
				if ( list.href[ i ] && !hasTarget && !dlese_isFrames )
					document.write( "<a href='javascript:dlese_openPage( \"" 
					+ dlese_changeDevDomainSingleLink( list.href[ i ] ) + "\", \""
					+ list.name + "\", \"" + list.label[ i ] + "\" );'" + target 
					+ " class='dlese_siteNavLinks' onMouseOver='dlese_navOver( " + topList.name + " );' "
					+ "onMouseOut='setTimeout( \"dlese_navOut( " + topList.name + " );\", 1 )'>" );
				else if ( list.href[ i ] )
					document.write( "<a href='" + list.href[ i ] + "'" + target 
					+ " class='dlese_siteNavLinks' onMouseOver='dlese_navOver( " + topList.name + " );' "
					+ "onMouseOut='setTimeout( \"dlese_navOut( " + topList.name + " );\", 1 )'>" );
				document.write( list.label[ i ] );
				if ( list.href[ i ] )
					document.write( "</a>" );
				document.writeln( "</td></tr>" );
			}
		}		
		document.writeln( "</table></div>" );
	}
}

// ------------------------------------ Assign the DIV code to the given object's innerHTML 
// (alternate version of above that can be rendered after page has already loaded) ------------------------------------
function dlese_NavigationRenderInnerHtml( list, divName ) {
	if ( !dlese_noscript ) {
		var newInner = "";
		var imgSrc = list.imgClosedSrc;
		if ( dlese_navSelected == list.name )
			imgSrc = list.imgSelectedClosedSrc;
		newInner += "<style type='text/css'><!--";
		newInner += ".dlese_Nav" + list.name + " { position: absolute; left: " 
			+ list.left + "px; top: " + list.top + "px; border: 1px solid #000000; z-index: 50000; padding: 0px; margin: 0px; }";
		newInner += "-->\n</style>";
		if ( list.label.length > 0 ) {
			newInner += "<div class='dlese_Nav" + list.name + "' id='dlese_NavButton" + list.name
				+ "'><a href='javascript:dlese_toggleNavButton( " 
				+ list.name + " )' onMouseOver='dlese_navOver( " + list.name + " ); "
				+ "window.status=\"\"; return false;' "
				+ "onMouseOut='setTimeout( \"dlese_navOut( " + list.name + " );\", 1 )'><img border='0' alt=\"" 
				+ list.altText + "\" src='" + imgSrc + "' width='" + list.imgWidth + "' " + "height='" 
				+ list.imgHeight + "' id='" + list.name	+ "navImg'>" + "</a></div>";
		}
		else {
			newInner += "<div class='dlese_Nav" + list.name + "'><a href='" + list.noscriptHref 
				+ "'><img border='0' alt=\"" + list.altText + "\" src='" + imgSrc + "' width='" + list.imgWidth + "' " + "height='" 
				+ list.imgHeight + "'>" + "</a></div>";	
		}	
		newInner += dlese_displayNavListInnerHtml( list, list.left - 1, list.top + list.imgHeight );
	}
	var obj = document.getElementById( divName );
	if ( obj )
		obj.innerHTML = obj.innerHTML + newInner;
}	
function dlese_displayNavListInnerHtml( list, left, top ) {
	if ( list.label.length > 0 ) {
		var newInner = "";
		var topList = list;
		while ( topList.parent )
			topList = topList.parent;
		if ( left && top ) {
			left += 2; top += 2;
			newInner += "<style type='text/css'><!--";
			newInner += ".navDivStyle" + list.div + " { display: none; visibility: hidden; position: absolute;";
			newInner += "left: " + left + "px; top: " + top + "px; ";
			newInner += "background-color: #FFFFFF; font-family: arial, helvetica, sans-serif;";
			newInner += "margin: 0px; padding: 5px; border: 2px outset #DDDDDD; z-index: 100000; }";
			newInner += "-->\n</style>";
			newInner += "<div id='" + list.div 
				+ "' class='navDivStyle" + list.div + "' "
				+ "onMouseOver='dlese_navOver( " + topList.name + " );' "
				+ "onMouseOut='setTimeout( \"dlese_navOut( " + topList.name + " );\", 1 )'>";
		}
		else
			newInner += "<div id='" + list.div + "' class='dlese_siteNavInnerLayer' onMouseOver='dlese_navOver( " + topList.name + " );' "
				+ "onMouseOut='setTimeout( \"dlese_navOut( " + topList.name + " );\", 1 )'>";
		newInner += "<table border='0' cellpadding='0' cellspacing='0' onMouseOver='dlese_navOver( " + topList.name + " );' "
			+ "onMouseOut='setTimeout( \"dlese_navOut( " + topList.name + " );\", 1 )'>";
		for ( var i = 0; i < list.label.length; i++ ) {
			var hasTarget = false;
			var target = " target='" + list.target[ i ] + "'";
			if ( list.target[ i ] != '_top' )
				hasTarget = true;
			if ( list.sublist[ i ] ) {
				newInner += "<tr><td valign='top' nowrap><a href='javascript:dlese_toggleNav( " 
					+ list.sublist[ i ].name + " );' "
					+ "onMouseOver='dlese_navOver( " + topList.name + " ); window.status=\"\"; "
					+ "return true;' onMouseOut='setTimeout( \"dlese_navOut( " + topList.name + " );\", 1 )' "
					+ "class='dlese_siteNavLinks'>" + list.label[ i ] 
					+ " <img alt='List of " + list.label[ i ] + "' border='0' src='" 
					+ dlese_ARROW_CLOSED_DROPDOWN_SRC + "' id='" + list.sublist[ i ].name + "navToggle'></a>"; 
				newInner += dlese_displayNavListInnerHtml( list.sublist[ i ] );
				newInner += "</td></tr>";
			}
			else {
				newInner += "<tr><td valign='top' nowrap>";
				if ( list.href[ i ] && !hasTarget && !dlese_isFrames )
					newInner += "<a href='javascript:dlese_openPage( \"" 
					+ dlese_changeDevDomainSingleLink( list.href[ i ] ) + "\", \""
					+ list.name + "\", \"" + list.label[ i ] + "\" );'" + target 
					+ " class='dlese_siteNavLinks' onMouseOver='dlese_navOver( " + topList.name + " );' "
					+ "onMouseOut='setTimeout( \"dlese_navOut( " + topList.name + " );\", 1 )'>";
				else if ( list.href[ i ] )
					newInner += "<a href='" + list.href[ i ] + "'" + target 
					+ " class='dlese_siteNavLinks' onMouseOver='dlese_navOver( " + topList.name + " );' "
					+ "onMouseOut='setTimeout( \"dlese_navOut( " + topList.name + " );\", 1 )'>";
				newInner += list.label[ i ];
				if ( list.href[ i ] )
					newInner += "</a>";
				newInner += "</td></tr>";
			}
		}		
		newInner += "</table></div>";
	}
	return newInner;
}

if ( dlese_isNetscape )
	document.onkeyup = keyUpFirefox;
else
	document.onkeyup = keyUp;
function keyUp( ev ) {
	if ( window.event.ctrlKey && ( window.event.keyCode == 192 ) )
		document.location.href = "/dds/admin/admin.do";
	else if ( ( document.location.href.indexOf( "/dds/" ) > -1 ) && 
			window.event.altKey && ( window.event.keyCode == 67 ) ) // Alt+C = clear vocabs
		doClearAll();
}

function keyUpFirefox( evt ) {
	var e = evt ? evt : window.event;
	if ( !e ) return;
	var key = 0;
	if ( e.keyCode ) { 
		key = e.keyCode; 
	} // for moz/fb, if keyCode==0 use 'which'
	else if ( typeof( e.which ) != 'undefined' ) { 
		key = e.which; 
	}
	if ( e.ctrlKey && ( key == 192 ) )
		document.location.href = "/dds/admin/admin.do";	
	else if ( ( document.location.href.indexOf( "/dds/" ) > -1 ) && 
			e.altKey && ( key == 67 ) ) // Alt+C = clear vocabs
		doClearAll();	
}

function dlese_toggleNavButton( list ) {
	if ( !dlese_noscript ) {
		dlese_hideAllNav();
		window.status = '';
		toggleObjDisplay( list.div, '' );
		var obj = document.getElementById( list.div );
		var imgSrc;
		if ( list.name == dlese_navSelected ) {
			if ( obj.style.visibility == 'visible' ) {
				imgSrc = list.imgSelectedOpen.src;
				list.isOpen = true;
			}
			else {
				imgSrc = list.imgSelectedClosed.src;
				list.isOpen = false;
			}
		}
		else {
			if ( obj.style.visibility == 'visible' ) {
				imgSrc = list.imgOpen.src;
				list.isOpen = true;
			}
			else {
				imgSrc = list.imgClosed.src;
				list.isOpen = false;
			}
		}
		eval( "document.images." + list.name + "navImg.src = '" + imgSrc + "'" );
		if ( list.isOpen )
			dlese_hideSelectListsIE( true );
		else
			dlese_hideSelectListsIE( false );	
	}
}
function dlese_toggleNav( list ) {
	window.status = '';
	toggleObjDisplay( list.div, '' );
	var obj = document.getElementById( list.div );
	if ( obj.style.visibility == 'visible' )
		eval( "document.images." + list.name + "navToggle.src = '" + dlese_ARROW_OPEN_DROPDOWN.src + "'" );
	else
		eval( "document.images." + list.name + "navToggle.src = '" + dlese_ARROW_CLOSED_DROPDOWN.src + "'" );		
}
function dlese_navOver( list ) {
	list.moCount++;
}
function dlese_navOut( list ) {
	list.moCount--;
}
function dlese_hideAllNav() {
	for ( var i = 0; i < dlese_allNav.length; i++ ) {
		var nav = eval( dlese_allNav[ i ] );
		if ( nav.isOpen && nav.moCount < 1 ) {
			var imgSrc = nav.imgClosed.src;
			if ( nav.name == dlese_navSelected )
				imgSrc = nav.imgSelectedClosed.src;
			eval( "document.images." + nav.name + "navImg.src = '" + imgSrc + "'" );
			hideObj( nav.div, '' );
			nav.isOpen = false;
			dlese_hideSelectListsIE( false );
		}
	}
}
function dlese_hideNoscriptNav() { 
	if ( !dlese_noscript ) {
		for ( var i = 0; i < document.images.length; i++ )
		if ( ( document.images[ i ].src.indexOf( '_noscript.' ) != -1 ) && document.images[ i ].style ) {
				document.images[ i ].style.visibility = 'hidden';
		}	
	}
}

		
	
// DELAYED (event rendered) dynamically collapsable trees
// Ryan Deardorff 
// V2.0 July 03 

var dlese_TREE_COLLAPSE_DELAY = 200,	// ms delay when user toggles menu at level of other open menu
	dlese_treeSiteBase = '';	//
var dlese_TreeIndentImg = new Array();
dlese_TreeIndentImg[ 0 ] = new Image();
dlese_TreeIndentImg[ 0 ].src = '/dlese_shared/tree_menu/images/tree_bullet_indent.gif';
dlese_TreeIndentImg[ 1 ] = new Image();
dlese_TreeIndentImg[ 1 ].src = '/dlese_shared/tree_menu/images/tree_bullet_stick.gif';

function dlese_setSiteBase( base, imagesBase ) {
	dlese_treeSiteBase = base;
}
var dlese_treeDiv = '';
function TreeMenu( name, indent ) {
	this.entries = new TreeMenuEntries();
	this.name = name;
	this.open = false;
	this.parent = null;
	this.rendered = false;
	if ( !indent ) indent = 0;
	this.indent = indent;
	if ( name == 'M0' )
		document.writeln( "<div class='dlese_InnerMenuTop'>\n<div id='dlese_htmlOf" + name + "' class='dlese_InnerMenu'></div>\n</div>\n" );	
	this.closeCall = 0;
}
function TreeMenuEntries() {
	this.link = new Array();
	this.menu = new Array();
	this.label = new Array();
	this.vis = new Array();
	this.target = new Array();
	this.state = new Array();
}
function ATE( winmenu, link, label, menu, target ) {	
	if ( menu ) {
		winmenu.entries.menu[ winmenu.entries.menu.length ] = menu;
		menu.parent = winmenu;
		menu.indent = winmenu.indent + 1;
	}
	else
		winmenu.entries.menu[ winmenu.entries.menu.length ] = null;	
	if ( link ) {
		if ( ( link.indexOf( "http://" ) > -1 ) || ( link.indexOf( "mailto:" ) > -1 ) )
			winmenu.entries.link[ winmenu.entries.link.length ] = link;
		else
			winmenu.entries.link[ winmenu.entries.link.length ] = dlese_treeSiteBase + link;
	}
	else
		winmenu.entries.link[ winmenu.entries.link.length ] = '';
	winmenu.entries.label[ winmenu.entries.label.length ] = label;
}	
function dlese_renderMenu( menu, hasInner, top, left ) {
	if ( !dlese_noscript ) {
		var isCurrentPage = false;
		var menuObj = document.getElementById( "dlese_htmlOf" + menu.name );
		var ret = '';
		if ( menu.rendered ) {
			menuObj.style.display = 'block';
		}
		else if ( menu.name ) { 
			var styleAppend = '';
			if ( menu.name == 'M0' )
				styleAppend = " style='margin-top: " + SIDE_MENU_TOP + "px; width: " + SIDE_MENU_WIDTH + "px;'";
			if ( !menu.indent )
				ret += "<table width=100% height=0 border=0 height=19 border=0 cellpadding=0 cellspacing=0 class='dlese_menuItemBackgroundTop" 
					+ "'" + styleAppend + ">";
			else
				ret += "<table width=100% height=0 border=0 height=19 border=0 cellpadding=0 cellspacing=0 class='dlese_menuItemBackgroundInner" 
					+ "'" + styleAppend + ">"; 
			if ( menu.entries ) {
				for ( var i = 0; i < menu.entries.label.length; i++ ) {
					var ind = document.location.href.indexOf( '//' );
					var ind2 = document.location.href.indexOf( '/', ind + 3 );
					var classOf = '';
					if ( menu.entries.link[ i ] &&
						 ( document.location.href.indexOf( menu.entries.link[ i ] ) == ind2 ) ) {
						classOf = "dlese_menuItemHighlight";
						isCurrentPage = true;
						if ( menu.entries.menu[ i ] )
							setTimeout( "dlese_renderMenu( " + menu.entries.menu[ i ].name + " )", 1 );
					}
					else
						classOf = 'dlese_menuItem';
					var textStyle = '';
					if ( !menu.indent )
						textStyle += "style='font-weight: bold;'";
					if ( menu.entries.menu[ i ] ) {	
						var hrefStr = '';
						if ( menu.entries.link[ i ].length > 0 )
							hrefStr = "href='" + menu.entries.link[ i ] + "'";
						if ( !classOf )
							classOf = 'dlese_menuItem';
						ret += "<tr>"
								+ "<td class='" + classOf + "'>"
									+ "<a " + hrefStr + " onClick='toggleMenu( " + menu.entries.menu[ i ].name + " )'"
									+ " " + textStyle + ">"
										+ indentImages( menu, i, true ) 
										+ menu.entries.label[ i ] 
									+ "</a>\n"
									+ "<div class='dlese_innerMenu' id='dlese_htmlOf" 
									+ menu.entries.menu[ i ].name + "'></div>\n"
								+ "</td></tr>\n";
					}
					else {
						ret += "<tr>"
								+ "<td class='" + classOf + "'>"		
									+ "<a href='" + menu.entries.link[ i ] + "' " + textStyle + ">"
										+ indentImages( menu, i, false ) 
										+ menu.entries.label[ i ] 
									+ "</a>"
								+ "</td>"
							+ "</tr>";
					}
				}
			}	
			ret += "</td></table>\n";
			if ( menuObj ) {
				menu.rendered = true;							
				menuObj.innerHTML = ret + "\n";
					menuObj.style.display = "block";
			}
		}
		menu.open = true;
		return ret;
	}
}
function indentImages( menu, i, hasSub ) {
	var ret = '';
	for ( var j = 0; j < menu.indent; j++ ) {
			ret += "<img src='" + dlese_TreeIndentImg[ 0 ].src + "' height=19 width=10 border=0 align=left hspace=0 vspace=0>";
	}
	if ( hasSub )
		ret += "<img src='" + dlese_TreeIndentImg[ 1 ].src + "' height=19 width=10 border=0 align=left hspace=0 vspace=0>";
	else
		ret += "<img src='" + dlese_TreeIndentImg[ 0 ].src + "' height=19 width=10 border=0 align=left hspace=0 vspace=0>";		
	return ret;
}
var dlese_menuRendered = "";
function checkChildren( menu ) {
	for ( var i = 0; i < menu.entries.label.length; i++ ) {
		if ( menu.entries.link[ i ] && document.location.href.indexOf( menu.entries.link[ i ] ) > -1 ) {
			menu.entries.state[ i ] = 1;
			renderParentThenMenu( menu );
			return true;
		}
		else if ( menu.entries.menu[ i ] )
			checkChildren( menu.entries.menu[ i ] );
	}
	return false;
}
function renderParentThenMenu( menu ) {
	if ( menu.parent )
		renderParentThenMenu( menu.parent );
	dlese_renderMenu( menu );
}
function closeMenu( menu ) {
	if ( menu.rendered ) {
		var obj = document.getElementById( "dlese_htmlOf" + menu.name );
		obj.style.display = "none";
	}
}
function toggleMenu( menu ) {
	menu.open = !menu.open;
	var didClose = false;
	if ( menu.parent ) {
		for ( var i = 0; i < menu.parent.entries.label.length; i++ ) {
			if ( menu.parent.entries.menu[ i ] && menu.parent.entries.menu[ i ].open && ( menu.parent.entries.menu[ i ] != menu ) ) {
				closeMenu( menu.parent.entries.menu[ i ] );
				didClose = true;
			}
		}
		if ( !didClose )
			dlese_showMenu( menu );
		else
			setTimeout( "dlese_showMenu( " + menu.name + " )", dlese_TREE_COLLAPSE_DELAY );
	}
}
function dlese_showMenu( menu ) {
	if ( !menu.rendered ) {
		dlese_renderMenu( menu );
		toggleMenu( menu );
	}
	else {
		var obj = document.getElementById( "dlese_htmlOf" + menu.name );
		obj.style.display = "block";
		menu.open = true;
	}
}
function BTE() {}

// ------------------------------------ Print-friendly linking -----------------------------

document.writeln( "<div id='printFriendlyLink' style='z-index: 60000; position: absolute;'></div>" );
function dlese_printFriendlyLink() {
	// Render printer-friendly link that invokes ?print version of URL so that side-menus don't display
	var loc = document.location.href;
	if ( loc.indexOf( "?" ) == -1 ) {
		var width = getInsideWindowWidth();
		var obj = document.getElementById( "printFriendlyLink" );
		if ( obj != null ) {
			obj.innerHTML = "<div width=100% style='text-align: right; margin-right: 5px'>"
				+ "<a title='Open a printer-friendly version of this page' style='font-size: 12px; text-decoration: none; color: #000000' href='javascript:dlese_openPrintableWindow( \"" + loc + "?print\" )'>"
				+ "<img valign=top border=0 alt='Open a printer-friendly version of this page' src='/dlese_shared/images/printer_icon.gif'></a></div>";			
			obj.style.top = "58px";
			obj.style.left = "0px";
			obj.style.display = "block";
			obj.style.visibility = "visible";
			obj.style.width = "100%";
		}
	}
}
function dlese_openPrintableWindow( url ) {
	window.open( url, "_blank", "width=550,height=600,menubar=1,location=1,toolbar=1,status=1,resizable=1,scrollbars=1" );
}

// ------------------------------------ Browser patches ------------------------------------

function dlese_hideSelectListsIE( hide ) {
	// IE select lists don't support z-index or zIndex, so hide all of them:
	if ( dlese_isIE ) {
		for ( var i = 0; i < document.forms.length; i++ ) {
			for ( var j = 0; j < document.forms[i].elements.length; j++ ) {
				if ( document.forms[i].elements[j].type && 
					( document.forms[i].elements[j].type.indexOf( "select" ) == 0 ) ) {
					if ( hide )
						document.forms[i].elements[j].style.visibility = "hidden";
					else
						document.forms[i].elements[j].style.visibility = "visible";
				}
			}
		}
	}
}

// ------------------------------------- Include survey Javascript ---------------------------
if ( surveyIsPresent )
	document.writeln( "<script type='text/javascript' src='/dlese_shared/dlese_script_survey.js'></script>" );

// --------------- Render XML buttons (assumes request includes xml and xsl parameters) ---------------------
function dlese_getRenderedXmlButton( href, buttonLabel, textLabelPrefix, textLabelPostfix, addCss, tooltipText ) {
	if ( !tooltipText )
		tooltipText = "";
	return "<a href=\"" + href + "\" title=\"" + tooltipText 
		+ "\" style=\"text-decoration: none;\"><span class=\"" + addCss + " dlese_xmlButton\">" 
		+ buttonLabel + "</span></a>&nbsp;"	+ "<a href=\"" + href + "\" title=\"" + tooltipText + "\">" 
		+ textLabelPrefix + "</a> " + textLabelPostfix;
}
function dlese_renderXmlButton( href, buttonLabel, textLabelPrefix, textLabelPostfix, addCss, tooltipText ) {
	document.writeln( dlese_getRenderedXmlButton( href, buttonLabel, textLabelPrefix, textLabelPostfix, addCss, tooltipText ) );
}
function dlese_getRequestParam( param, includeAmpersandsInValue ) {
	var ret = "&" + document.location.href.substring( document.location.href.indexOf( "?" ) + 1,
		document.location.href.length ) + "&";
	var ind = ret.indexOf( "&" + param + "=" );
	if ( ind > -1 ) {
		if ( includeAmpersandsInValue )
			return ret.substring( ind + param.length + 2, ret.length - 1 );
		else
			return ret.substring( ind + param.length + 2, ret.indexOf( "&", ind + 1 ) );
	}
	return "";
}

// ------------ Using script to render email addresses avoids spam crawlers --------------------
function renderEmailAddress( prefix, postfix ) {
	var address = prefix + "@" + postfix;
	document.write( "<a href='mailto:" + address + "'>" + address + "</a>" );
}

function dlese_rea13( prefix, postfix ) {
	if ( typeof rot13 != "undefined" )
		renderEmailAddress( rot13( prefix ), rot13( postfix ) );
	else
		document.write( "Cookies must be enabled to see address" );	
}

// ------ DLESE only uses *session* cookies that disappear when the browser is closed... ------- 

function createCookie( name, value ) {
	document.cookie = name + "=" + value + "; path=/";
}

function readCookie( name ) {
	var nameEQ = name + "=";
	var ca = document.cookie.split( ';' );
	for( var i = 0; i < ca.length; i++ ) {
		var c = ca[i];
		while ( c.charAt( 0 ) == ' ' ) 
			c = c.substring( 1, c.length );
		if ( c.indexOf( nameEQ ) == 0 ) {
			return c.substring( nameEQ.length, c.length );
		}
	}
	return null;
}

// ---------- Rot13 for mailto: obfuscation ---------------
// This work is hereby released into the Public Domain. To view a copy of the 
// public domain dedication, visit http://creativecommons.org/licenses/publicdomain/ 
// or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
// origin: 2000-01-08 nospam@geht.net http://tools.geht.net/rot13.html
// Use at own risk.
// The problem is that JavaScript 1.0 does not provide a Char to Numeric value conversion.
// Thus we define a map.
// Because there are 64K UniCode characters, this map does not cover all characters.
//
var rot13map; 
function rot13init() { 
	var map = new Array(); 
	var s = "abcdefghijklmnopqrstuvwxyz"; 
	for (i=0; i<s.length; i++) 
		map[s.charAt(i)] = s.charAt((i+13)%26); 
	for (i=0; i<s.length; i++) 
		map[s.charAt(i).toUpperCase()] = s.charAt((i+13)%26).toUpperCase(); 
	return map; 
} 
function rot13(a) { 
	if (!rot13map) 
		rot13map = rot13init(); 
	s = ""; 
	for (i=0; i<a.length; i++) { 
		var b = a.charAt(i); 
		s += (b>='A' && b<='Z' || b>='a' && b<='z' ? rot13map[b] : b); 
	} 
	return s; 
}


