function swapSection(p_id) {
	var o_primary = MM_findObj(p_id);
	var o_inactive = MM_findObj(p_id + "_inactive");
	if (o_primary && o_inactive) {
		if (o_primary.style.display == "none") {
			o_primary.style.display = "block";
			o_inactive.style.display = "none";
		} else {
			o_primary.style.display = "none";
			o_inactive.style.display = "block";
		}
	}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_displayLayers() {

	for (var i=0; i<(arguments.length-1); i=i+2) {

		var l=arguments[i];var b=arguments[i+1];var o=MM_findObj(l);

		if (o) o.style.display=(b)?"":"none";

	}

}


function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
} 

/* 
Bug in mozilla Firefox 2.0 for Mac (should be fixed in version 3.0) 
Div tags that have scrollbars do not show up properly. 

How the function works:
Pass in an array of all the possible divs on the page and an array of the divs to show
This function will hide all of the scrollbars in the array except for the divs that are visible
*/

//Bug Functions go here (functions specific to browser issues)
function  Bug_Mac_FF_DivScrollbars(show,hide) {
	//NOTE this SHOULD be fixed in FireFox V3 so a Version check may need to be implemented
	//No version check implemented as FF v3 is not yet available
	if(BrowserDetect.browser != "Firefox" || BrowserDetect.OS != "Mac") {
		return;
	}
	//loop through the show divs and show the scrollbars
	for(var i = 0; i < show.length; i++) {
		var div = YAHOO.util.Dom.get(show[i]);
		if(div && div.style) {
			div.style.overflow="auto";
		}
	}

	//loop through the hide divs and hide all the scrollbars
	for(var i = 0; i < hide.length; i++) {
		var div = YAHOO.util.Dom.get(hide[i]);
		if(div && div.style) {
			div.style.overflow ="hidden";
		}
	}
}


function resetForm(p_frm) {
	var o_frm = MM_findObj(p_frm);
	if (o_frm) o_frm.reset();
	return false;
}
function submitForm(p_frm) {
	var o_frm = MM_findObj(p_frm);
	if (o_frm) o_frm.submit();
	return false;
}
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
// set all checkboxes in the form to the value of the controlling checkbox (p_obj)
function changeAll(p_obj, p_id) {
	var val = p_obj.checked;
	var frm = p_obj.form;
	for (var i=0; i < frm.length; i++) {
		if (frm[i].type == "checkbox" && (typeof(p_id) == "undefined" || (typeof(frm[i].id) != "undefined" && frm[i].id.indexOf(p_id) >= 0))) {
			frm[i].checked = val;
		}
	}
}
// expand or collapse menus
function heirarchyInit(p_expand, p_collapse) {
	document.expandHeirarchyImage = p_expand;
	document.collapseHeirarchyImage = p_collapse;
}
function heirarchy(p_key) {
	var i = MM_findObj("icon_" + p_key);
	var d = MM_findObj("div_" + p_key);
	if (d != undefined) {
		var v = (d.style.display == "none");
		d.style.display = (v) ? "" : "none";
		i.src = (v) ? document.collapseHeirarchyImage : document.expandHeirarchyImage;
	}
}

function popup(u) {
	window.open(u);
}


// =================================================
// Find object location in pixels as array [x,y]
// =================================================
isgecko = (navigator.userAgent.indexOf("Gecko")>=0);
isexplorer = (navigator.userAgent.indexOf("MSIE")>=0);
function findPos(obj) {
	var curleft = 0;
	var curtop = 0;
	var self = true;
	while (obj.offsetParent) {
		curleft += obj.offsetLeft;
		curtop += obj.offsetTop;
		if (isexplorer && !self) {
			// fix for IE - some CSS borders cause offset
			curleft += obj.clientLeft;
			curtop += obj.clientTop;
		}
		obj = obj.offsetParent;
		self = false;
	}
	return [curleft,curtop];
}

function showRemote() {
  self.name = "main"; // names current window as "main"
  
  var windowprops = "toolbar=0,location=0,directories=0,status=0, " +
  "menubar=0,scrollbars=yes,resizable=yes,width=610,height=300";
  
  OpenWindow = window.open("pAdditionalProducts.aspx", "remote", windowprops); // opens remote control
}

function showFooterPopup(url,windowname) {
  var windowprops = "toolbar=0,location=0,directories=0,status=0, " +
  "menubar=0,scrollbars=yes,resizable=yes,width=784,height=626";
  
  OpenWindow = window.open(url, windowname, windowprops); // opens remote control
}

function showLocatorPrintPopup(url) {

    var windowprops = "toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=yes,resizable=yes,width=784,height=626";
    var windowname = "PrintableLocatorResults";
    OpenWindow = window.open(url, windowname, windowprops); // opens remote control
}

function showRecommendationsPrintPopup(url) {
    var windowprops = "toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=yes,resizable=yes,width=784,height=626";
    var windowname = "PrintableRecommendations";
    OpenWindow = window.open(url, windowname, windowprops); // opens remote control
}

function bigScreen(thePAGE) {
	self.name = "main"; // names current window as "main"
	window.open(thePAGE, '', 'toolbar=0,location=0,directories=0,status=0,menubar=0,resizable=yes,width=500,height=275,scrollbars=yes');

}

function ValidateForm(form) {

	isValid = true;
	for(i = 0; i < form.elements.length; i++) {
		if(form.elements[i].name.substring(0, 3) == "req") {
			if(form.elements[i].value.length == 0) {
				form.elements[i].style.background = "#A3BBD4";
				isValid = false;
			}
			else {
				form.elements[i].style.background = "#FFFFFF`";
			}
		}
	}
	return isValid;
}


var lastDiv = "OVDiv";
function div_visibility(div_name) {
	if (div_name == lastDiv) {
	  return;
	}
	var lastDivObj = MM_findObj(lastDiv);
	if (lastDivObj) {
	  lastDivObj.style.display = "none";
	}
	var currDivObj = MM_findObj(div_name);
	if (currDivObj) {
	  currDivObj.style.display = "block";
	}
	lastDiv = div_name;
}

function lock_unlock() {
	var obj = MMfindObj("your hide icon ID"); obj.style.display = "none";
	var obj = MMfindObj("your hide icon ID"); obj.style.display = "inline";
}

/**************************************
		Macromedia functions
**************************************/

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
/**************************************
		Custom functions
**************************************/

// set all checkboxes in the form to the value of the controlling checkbox (p_obj)
function changeAll(p_obj, c_id) {
	var val = p_obj.checked;
	var frm = p_obj.form;
	for (var i=0; i < frm.length; i++) {
		if (frm[i].type == "checkbox" && (typeof(c_id) == "undefined" || (typeof(frm[i].id) != "undefined" && frm[i].id.indexOf(c_id) >= 0))) {
			frm[i].checked = val;
		}
	}
}
function checkAllForm(c_form, c_name, o_src) {
	var frm = MM_findObj(c_form);
	for (var i=0; i < frm.length; i++) {
		if (frm[i].type == "checkbox" && (typeof(c_name) == "undefined" || (typeof(frm[i].name) != "undefined" && frm[i].name.indexOf(c_name) == 0))) {
			if (frm[i] != o_src) {
				frm[i].checked = o_src.checked;
				if (frm[i].onclick) frm[i].onclick();
			}
		}
	}
}
function findParent(o_src, c_tagName) {
	var o_obj = o_src.parentNode;
	while (o_obj.tagName != c_tagName && typeof(o_obj.parentNode) == "object") o_obj = o_obj.parentNode;
	if (o_obj.tagName == c_tagName) return o_obj; // if previous parentnode was undefined, this would not match
	return null;
}
function containsTag(o_src, c_tagName) {
	for (var i=0; i<o_src.childNodes.length; i++) {
		if (typeof(o_src.childNodes[i]) == "object" && typeof(o_src.childNodes[i].tagName) != "undefined") {
			if (o_src.childNodes[i].tagName == c_tagName) return true;
			if (containsTag(o_src.childNodes[i], c_tagName)) return true;
		}
	}
	return false;
}




/* FUNCTIONS FOR TABLES */

function tableMenuOnShow() {

	var o_td = this;

	if (o_td && o_td.tagName.toUpperCase() == "TD") {

		o_td.className = "col-header-selected-checkbox";

	}

	var o_img = o_td.childNodes[0];

	if (o_img && o_img.tagName.toUpperCase() == "IMG") {

		o_img.src = "images/btn_table_arrow_on.gif";

	}

}

function tableMenuOnHide() {

	var o_td = this;

	if (o_td && o_td.tagName.toUpperCase() == "TD") {

		o_td.className = "col-header-unselected-checkbox";

	}

	var o_img = o_td.childNodes[0];

	if (o_img && o_img.tagName.toUpperCase() == "IMG") {

		o_img.src = "images/btn_table_arrow.gif";

	}

}



/* FUNCTIONS FOR TOP NAV */

function topnavMenuOnShow() {

	var o_td = this.parentNode;

	if (o_td && o_td.tagName.toUpperCase() == "TD") {

		o_td.className = "header-nav-content-over";

	}

}

function topnavMenuOnHide() {

	var o_td = this.parentNode;

	if (o_td && o_td.tagName.toUpperCase() == "TD") {

		o_td.className = "header-nav-content";

	}

}


/* FUNCTIONS FOR ACTION BUTTON */

function actionMenuOnShow() {

	var o_td = this.parentNode;

	if (o_td && o_td.tagName.toUpperCase() == "TD") {

		o_td.className = "";

	}

}

function actionMenuOnHide() {

	var o_td = this.parentNode;

	if (o_td && o_td.tagName.toUpperCase() == "TD") {

		o_td.className = "";

	}

}

function FUE_displayAllRows(n, p_table) {
	for (var i=1; i<=n; i++) {
		var o_atag = document.getElementById("rowhide_" + i);
		if (typeof(o_atag) == "array") o_atag = o_atag[0];
		if (o_atag) {
			FUE_displayRows(o_atag, p_table, 'rowset_1_' + i, "closed")
		}
	}
}
function FUE_displayRows(o_src, p_table, p_prefix, c_default) {
	// find the table and the image
	if (typeof(c_default) == "undefined") c_default = "open";
	var o_table = MM_findObj(p_table);
	var ar_childs = o_src.getElementsByTagName("img");
	var o_img = (ar_childs.length)?ar_childs.item(0):false;
	if (o_src && o_table && o_img) {
		// set up closed and open src
		if (!o_img.opensrc && o_img.getAttributeNode("opensrc")) { o_img.opensrc = o_img.getAttributeNode("opensrc").nodeValue; }
		if (!o_img.closedsrc && o_img.getAttributeNode("closedsrc")) { o_img.closedsrc = o_img.getAttributeNode("closedsrc").nodeValue; }
		// get/default current display state
		if (typeof(o_img.currentDisplayRowsState) == "undefined") o_img.currentDisplayRowsState = c_default;
		var b_open = (o_img.currentDisplayRowsState=="open");
		// find rows to show/hide
		var ar_rows = o_table.getElementsByTagName("TR");
		for (var i=0; i<ar_rows.length; i++) {
			if (ar_rows[i].id.indexOf(p_prefix)==0) {
				// show/hide row
				ar_rows[i].style.display=(b_open)?"none":"";
			}
		}
		// swap image
		if (b_open && o_img.closedsrc) { o_img.opensrc=o_img.src; o_img.src=o_img.closedsrc; }
		if (!b_open && o_img.opensrc) { o_img.closedsrc=o_img.src; o_img.src=o_img.opensrc; }
		o_img.onmouseout = function() { this.src=this.src; }
		// set current state
		o_img.currentDisplayRowsState=(b_open)?"closed":"open";
	}
	if (typeof(o_src.blur) == "function") o_src.blur();
}
function FUE_displaySection(o_src, p_div, c_default, p_div_collapsed) {
	// find the element and the image
	if (typeof(c_default) == "undefined") c_default = "open";
	var o_div = MM_findObj(p_div);
	var o_div_collapsed = (p_div_collapsed != null) ? MM_findObj(p_div_collapsed) : null;
	var o_img = o_src.getElementsByTagName("IMG")[0];
	if (o_div && o_img) {
		// set up closed and open src
		if (!o_img.opensrc && o_img.getAttributeNode("opensrc")) { o_img.opensrc = o_img.getAttributeNode("opensrc").nodeValue; }
		if (!o_img.closedsrc && o_img.getAttributeNode("closedsrc")) { o_img.closedsrc = o_img.getAttributeNode("closedsrc").nodeValue; }
		// get/default current display state
		if (typeof(o_img.currentDisplaySectionState) == "undefined") o_img.currentDisplaySectionState = c_default;
		var b_open = (o_img.currentDisplaySectionState=="open");
		// show/hide section
		o_div.style.display=(b_open)?"none":"";
		if (o_div_collapsed) o_div_collapsed.style.display=(!b_open)?"none":"";
		// swap image
		if (b_open && o_img.closedsrc) { o_img.opensrc=o_img.src; o_img.src=o_img.closedsrc; }
		if (!b_open && o_img.opensrc) { o_img.closedsrc=o_img.src; o_img.src=o_img.opensrc; }
		o_img.onmouseout = function() { this.src=this.src; }
		// set current state
		o_img.currentDisplaySectionState=(b_open)?"closed":"open";
		// re-align datascroll divs
		if (typeof(alignDivs) == "function") alignDivs();
	}
}
/* FUNCTIONS FOR ACCORDION */

function toggleSlide(p_id) {
	var o_id = MM_findObj(p_id);
	var o_idclosed = MM_findObj(p_id + "Closed");
	var myAnim = new YAHOO.util.Anim(o_id);
	myAnim.duration = 0.5;
	myAnim.method = YAHOO.util.Easing.easeOut;
	var b_extras = true;
	if (o_id.style.display == "none") {
		// show
		myAnim.attributes.height = { to: o_id.oldHeight };
		myAnim.onStart.subscribe(toggleSlide_show);
	} else {
		// hide
		b_extras = false;
		if (typeof(o_id.oldHeight) == "undefined") o_id.oldHeight = (isexplorer) ? o_id.offsetHeight + 5 : o_id.offsetHeight;
		o_id.style.overflow = "hidden";
		myAnim.attributes.height = { to: 34 };
		myAnim.onComplete.subscribe(toggleSlide_hide);
	}
	myAnim.animate();
	// show/hide extras - this is useful for items that are absolutely positioned, but need to hide along with the contents
	for (var i=1; i<arguments.length; i++) {
		var o_ext = MM_findObj(arguments[i]);o_ext.style.visibility = (b_extras) ? "visible" : "hidden";
	}
}
function toggleSlide_hide() {
	var o_id = this.getEl();
	var o_idclosed = MM_findObj(o_id.id + "Closed");
	o_id.style.display = "none";
	o_idclosed.style.display = "block";
}
function toggleSlide_show() {
	var o_id = this.getEl();
	var o_idclosed = MM_findObj(o_id.id + "Closed");
	o_id.style.display = "block";
	o_idclosed.style.display = "none";
}

function fue_swap(o, u) {
	if (o && o.childNodes.length) {
		var img=o.childNodes[0];
		// find img tag
		while (img && (typeof(img.tagName) != "string" || img.tagName != "IMG")) {
			img = img.nextSibling;
		}
		if (img) img.src = u;
	}
}


//Mac FireFox v2 bug, need alist of scrollable regions to show/hide on a popup.
var scrollRegions = new Array("solutions_container","sf_check");




/*
Toggles / Simulations
*/
/* ************************************* */
/* Solution Select Toggle */
/* Designed to select / deselect / expand / contract a solution */
/* ************************************* */
function toggleSelectSolution(name) {
	var solution = document.getElementById(name);
	if(solution.className.match("deselected")) {
		solution.className = solution.className.replace("deselected","selected");		
	} else {
		solution.className = solution.className.replace("selected","deselected");
	}
}
function toggleExpandSolution(name) {
	var solution = document.getElementById(name);
	if(solution.className.match("expanded")) {
		solution.className = solution.className.replace("expanded","collapsed");
	} else {
		solution.className = solution.className.replace("collapsed","expanded");
	}
}

/* ************************************* */
/* filter Toggle */
/* Designed to expand, contract an expander */
/* ************************************* */
function toggleFilter(name) {
	var header = document.getElementById(name+"_header");
	var content = document.getElementById(name+"_content");
	if(content.style.display == "none") {
		header.className = "sf_check_on";
		content.style.display = "block";
	} else {
		header.className = "sf_check_off";
		content.style.display = "none";
	}
}

/* ************************************* */
/* Loading */
/* Slight delay when checking a checkbox to simulate a data request */
/* ************************************* */
function showLoading() {
	var content = document.getElementById("solutions");
	var loading = document.getElementById("loading");
	content.style.display = "none";
	loading.style.display = "block";
	setTimeout('hideLoading()', 1000);
}
function hideLoading() {
	var content = document.getElementById("solutions");
	var loading = document.getElementById("loading");
	content.style.display = "block";
	loading.style.display = "none";
}



/*
OPENERS / CLOSERS
These are popups inside the solutions list page
*/

/* ************************************* */
/* Solution Options Popup (open / close / continue)  */
/* ************************************* */
function solutionOptionsOpen() {
	Bug_Mac_FF_DivScrollbars(new Array(""),scrollRegions);
	
	var source = document.getElementById("ss_base");
	source.style.visibility = "visible";
	
	myTable.show();
	myTable2.show();
	
}
function solutionOptionsClose() {
	Bug_Mac_FF_DivScrollbars(scrollRegions,new Array(""));
	
	document.getElementById("ss_base").style.visibility = "hidden";
	myTable.hide();
	myTable2.hide();
	
}
function solutionOptionsContinue() {
	return exceptionOpen();
	
}

/* ************************************* */
/* Solution Results Popup  (open / save / close) */
/* ************************************* */
function solutionOptionsResultOpen() {
	Bug_Mac_FF_DivScrollbars(new Array(""),scrollRegions);
	
	var source = document.getElementById("ss_base_response");
	source.style.visibility = "visible";
	
	
}
function solutionOptionsResultSave() {
	exceptionResponseOpen();
}

function solutionOptionsResultBack() {
	solutionOptionsResultClose();
	solutionOptionsOpen();
}

function solutionOptionsResultClose() {
	Bug_Mac_FF_DivScrollbars(scrollRegions,new Array(""));
	
	document.getElementById("ss_base_response").style.visibility = "hidden";

	
}

/* ************************************* */
/* Help Choose Popup  (open / close) */
/* ************************************* */
function helpChoseOpen() {
	Bug_Mac_FF_DivScrollbars(new Array(""),scrollRegions);
	var source = document.getElementById("help_choose_base");
	source.style.display = "block";
	
}
function helpChoseClose() {
	Bug_Mac_FF_DivScrollbars(scrollRegions,new Array(""));
	
	var source = document.getElementById("help_choose_base");
	source.style.display = "none";
	
}

/* ************************************* */
/* Product Popup  (open / close) */
/* ************************************* */
function productOpen() {
	var source = document.getElementById("product_base");
	source.style.display = "block";
	
}
function productClose() {
	var source = document.getElementById("product_base");
	source.style.display = "none";

}

/* ************************************* */
/* Select Div Jump */
/* ************************************* */

function FUE_jumpDiv(selObj){ //v1.0
	for (var i=0;i<selObj.options.length;i++) {
		var eid = selObj.options[i].value;
		if (eid.length > 0) {
			var oid=document.getElementById(eid);
			if (oid) oid.style.display = (i==selObj.selectedIndex) ? "block" : "none";
		}
	}
}
function FUE_jumpDivRadio(selObj){ //v1.0
	var ar=getRadioArray(selObj);
	for (var i=0;i<ar.length;i++) {
		var eid = ar[i].value;
		if (eid.length > 0) {
			var oid=document.getElementById(eid);
			if (oid) oid.style.display = (ar[i] == selObj) ? "block" : "none";
		}
	}
}
function getRadioArray(one) {
	var a=one.form[one.name];
	//writestdout("a.length = " + a.length);
	//for (var i=0;i<a.length;i++) writestdout("   " + i + ": " + a[i]);
	if (a instanceof Array) return a; // many
	if (typeof(a) == "object" && typeof(a.length) == "number" && a.length > 1) return $A(a); // many
	if (typeof(a) == "object") return [a]; // one
	return []; // none
}
var $A = Array.from = function(iterable) {
	if (!iterable) return [];
	if (iterable.toArray) {
		return iterable.toArray();
	} else {
		var results = [];
		for (var i = 0; i < iterable.length; i++) results.push(iterable[i]);
		return results;
	}
}

function FUE_jumpDiv(selObj){ //v1.0
	for (var i=0;i<selObj.options.length;i++) {
		var eid = selObj.options[i].value;
		if (eid.length > 0) {
			var oid=document.getElementById(eid);
			if (oid) oid.style.display =
(i==selObj.selectedIndex) ? "block" : "none";
		}
	}
}

function toggleCssClass(obj,cl_prefix,is_short) {
	if (is_short) {
		obj.className = (obj.className == cl_prefix)? cl_prefix + "_on" : cl_prefix;
	}
	else {
		obj.className = (obj.className == cl_prefix + "_off")? cl_prefix + "_on" : cl_prefix + "_off";
	}
}

/************** toggle child image block ************************/
var toggleChildRecursion = 0;
function toggleChildImageTabStyle(obj, on_img, off_img) {
	toggleChildImage(obj, on_img, off_img, true, {isTabBehavior:true})
}
function toggleChildImage(obj, on_img, off_img, observePeers, o_param) {
	var obj = $(obj);
	var o_img, imgUri, imgFile, isSelected, isTabBehaviorLoc;
	var reg = new RegExp("[^/]+$");
	
	if (typeof(o_param) != 'undefined') {
		if (typeof(o_param.isTabBehavior) != 'undefined') isTabBehaviorLoc = o_param.isTabBehavior;
	}
	
	if (obj && typeof(on_img) != 'undefined' && typeof(off_img) != 'undefined') {
		o_img = obj.select('IMG');
		if (o_img && o_img.length > 0) {
			imgFile = o_img[0].src.match(reg);
			if (imgFile != null && imgFile != '') {
				imgUri = o_img[0].src.replace(imgFile,'');
				if (imgFile == off_img) {
					o_img[0].src = imgUri + on_img;
					isSelected = true;
				}
				else if (!isTabBehaviorLoc)  {
					o_img[0].src = imgUri + off_img;
					isSelected = false;
				}
				else isSelected = true;
			}
		}
	}
	if (typeof(observePeers) != 'undefined' && observePeers == true) {
		togglePeersChildImage(obj, isSelected, {isTabBehavior:isTabBehaviorLoc});
	}
}
function togglePeersChildImage(obj, isSelected, o_param) {
	var observeTags = 'A';
	var allObjs = obj.up().select(observeTags);
	var firstItem = new Array();
	var oImg, onImg, offImg, clickFunction, isOneSelected = isSelected, isTabBehaviorLoc, o_param;
	
	if (typeof(o_param) != 'undefined') {
		if (typeof(o_param.isTabBehavior) != 'undefined') isTabBehaviorLoc = o_param.isTabBehavior;
	}
	
	
	allObjs.each( function(elem) {
		toggleChildRecursion++;
		oImg = elem.select('IMG');
		if (oImg && oImg.length > 0 && elem.onclick) {
			if (!isTabBehaviorLoc) {	
				clickFunction = elem.onclick.toString().match(/toggleChildImage\(.+?\)/).toString();
			}
			else {
				clickFunction = elem.onclick.toString().match(/toggleChildImageTabStyle\(.*?\)/).toString();
			}
			if (clickFunction != null && clickFunction.split(',').length >= 3) {
				onImg = clickFunction.split(',')[1].replace(/['|\s|"|\)]/g,'');
				offImg = clickFunction.split(',')[2].replace(/['|\s|"|\)]/g,'');
				if (firstItem.length == 0) {
					firstItem = [elem,onImg,offImg,false];
				}
				if (elem != obj && isSelected && oImg[0].src.indexOf(onImg) != -1) {
					if (toggleChildRecursion < 1000) toggleChildImage(elem,onImg,offImg,false);
				}
				else if (elem != obj && !isSelected && oImg[0].src.indexOf(onImg) != -1) {
					isOneSelected = true;
				}
			}
		}
	});
	if (!isOneSelected && firstItem.length == 4) {
		if (toggleChildRecursion < 1000) toggleChildImage(firstItem[0],firstItem[1],firstItem[2],firstItem[3]);
	}
	toggleChildRecursion=0;
}
/************** toggle child image block end ************************/


/*
	Swap Style sheet
*/
function toggleFullScreen(){
			var active = getActiveStyleSheet();
			if (active == "Full") setActiveStyleSheet("Default");
			else setActiveStyleSheet("Full");
			CoromanLayout.renderLayout();
		}
function loadSavedStyle() {
	var ck = readCookie('style');
	if (ck != null) {
		setActiveStyleSheet(ck);
	}
} 

function setActiveStyleSheet(title) {
  var i, a, main;

	if (title == "null") { title = "Default"; }

  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      if(a.getAttribute("title") == title) a.disabled = false;
    }
  }

  var title = getActiveStyleSheet();
  createCookie("style", title, 365);
}
function getActiveStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) return a.getAttribute("title");
  }
  return null;
}

function getPreferredStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1
       && a.getAttribute("rel").indexOf("alt") == -1
       && a.getAttribute("title")
       ) return a.getAttribute("title");
  }
  return null;
}

function createCookie(name,value,days) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }
  else expires = "";
  document.cookie = name+"="+value+expires+"; 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 unescape(c.substring(nameEQ.length,c.length));
	}
	return null;
}




/************************** CUSTOM SCRIPTS ********************************/
	

/****************************************
		Preload Images
*****************************************/


/**************************************

			Browsers

**************************************/



isopera = (navigator.userAgent.indexOf("Opera")>=0);

isexplorer = (!isopera && navigator.userAgent.indexOf("MSIE")>=0);

issafari = (navigator.userAgent.indexOf("Safari")>=0);

isgecko = (navigator.userAgent.indexOf("Gecko")>=0) && !issafari;




