/////////////////////////////////////////////////////////////////////////////
// Function : NavNode (constructor)
// Comments :
/////////////////////////////////////////////////////////////////////////////
function NavNode(id, label, href, parent)
{
	this.m_parent = null;
	this.m_level = 0;

	if (parent)
	{
		this.m_parent = parent;
		this.m_level = parent.m_level+1;
	}

	this.m_id = id;

	// assume that m_label will most often be used directly as HTML
	this.m_rawlabel = label;

	label = label.replace(/&/g, '&amp;');
	label = label.replace(/</g, '&lt;');
	label = label.replace(/>/g, '&gt;');
	label = label.replace(/"/g, '&quot;');

	this.m_label = label;

	this.m_href = href;
	this.m_subNodes = new Array();

	var argValues = NavNode.arguments;
	var argCount = NavNode.arguments.length;

	for (i = 4 ; i < argCount ; i++)
	{
		var eqPos = argValues[i].indexOf("==");
		var attrName = argValues[i].substring(0,eqPos);
		var attrValue = argValues[i].substring(eqPos+2);

		eval("this.cp_" + attrName + " = '" + attrValue + "';");
	}

	NavNode.prototype.addNode = addNode;
	NavNode.prototype.isSelected = isSelected;
}

/////////////////////////////////////////////////////////////////////////////
// Function : addNode
// Comments :
/////////////////////////////////////////////////////////////////////////////
function addNode(id, label, href)
{
	var newIndex = this.m_subNodes.length;
	var newNode = new NavNode(id, label, href, this);

	var argValues = addNode.arguments;
	var argCount = addNode.arguments.length;

	for (i = 3 ; i < argCount ; i++)
	{
		var eqPos = argValues[i].indexOf("==");
		var attrName = argValues[i].substring(0,eqPos);
		var attrValue = argValues[i].substring(eqPos+2);

		eval("newNode.cp_" + attrName + " = '" + attrValue + "';");
	}

	this.m_subNodes[newIndex] = newNode;
	return newNode;
}

/////////////////////////////////////////////////////////////////////////////
// Function : isSelected
// Comments :
/////////////////////////////////////////////////////////////////////////////
function isSelected()
{
    var pos = window.location.href.lastIndexOf("/");
    var docname = window.location.href.substring(pos+1, window.location.href.length);

    pos = this.m_href.lastIndexOf("/");
    var myname = this.m_href.substring(pos+1, this.m_href.length);

    if (docname == myname)
		return true;
	else
		return false;
}

/////////////////////////////////////////////////////////////////////////////
// Function : customSectionPropertyExists
// Comments :
/////////////////////////////////////////////////////////////////////////////
function customSectionPropertyExists(csp)
{
	return (typeof csp != _U && csp != null);
}

/////////////////////////////////////////////////////////////////////////////
// Function : getCustomSectionProperty
// Comments :
/////////////////////////////////////////////////////////////////////////////
function getCustomSectionProperty(csp)
{
	if (customSectionPropertyExists(csp))
	{
		return csp;
	}
	else
	{
		return "";
	}
}

/////////////////////////////////////////////////////////////////////////////

var g_navNode_Root = new NavNode('5603','Structured Wiring',ssUrlPrefix + 'index.htm',null,'RedirectURL==SW/index.htm','cspLeftNavStartNode==0');
g_navNode_0=g_navNode_Root.addNode('11299','Structured Wiring Solutions',ssUrlPrefix + 'SW/index.htm','MetaDescription==Eaton\\x27s structured wiring solutions allow you to customize your structured wiring solution to meet your family\\x27s individual home technology needs.','MetaKeywords==Structured wiring, Home technology, Home systems, Home control, Home automation, Home networking','cspHideFooter==true','cspHideSearch==true','cspHideStockQuote==true','cspLeftNavStartNode==1','cspProdNode==979679285433','cspTitleImage==http\x3a//www.eaton.com/ecm/groups/public/documents/system/ss_image_corp_eatoncomhometitl.gif');
g_navNode_0_0=g_navNode_0.addNode('11289','Enclosures',ssUrlPrefix + 'SW/Enclosures/index.htm','MetaDescription==Eaton\\x27s structured wiring solutions allow you to customize your structured wiring solution to meet your family\\x27s individual home technology needs.','MetaKeywords==Structured wiring, structured wiring panels, Home systems, Home control','cspProdNode==979679285436');
g_navNode_0_1=g_navNode_0.addNode('216358','Covers',ssUrlPrefix + 'SW/Covers/index.htm','contributorOnly==false','cspProdNode==979679285441');
g_navNode_0_2=g_navNode_0.addNode('11291','Audio',ssUrlPrefix + 'SW/Audio/index.htm','MetaKeywords==Structured wiring, Whole house audio, CAT5 audio','cspProdNode==979679285438');
g_navNode_0_3=g_navNode_0.addNode('216359','Video',ssUrlPrefix + 'SW/Video/index.htm','contributorOnly==false','cspProdNode==979679285442');
g_navNode_0_4=g_navNode_0.addNode('216360','Telephone',ssUrlPrefix + 'SW/Telephone/index.htm','contributorOnly==false','cspProdNode==979679285443');
g_navNode_0_5=g_navNode_0.addNode('216361','Combination',ssUrlPrefix + 'SW/Combination/index.htm','contributorOnly==false','cspProdNode==979679285444');
g_navNode_0_6=g_navNode_0.addNode('216362','Speakers',ssUrlPrefix + 'SW/Speakers/index.htm','contributorOnly==false','cspProdNode==979679285445');
g_navNode_0_7=g_navNode_0.addNode('216363','A-BUS Products',ssUrlPrefix + 'SW/A-BUSProducts/index.htm','contributorOnly==false','cspProdNode==979679285446');
g_navNode_0_8=g_navNode_0.addNode('216364','Wall Plates',ssUrlPrefix + 'SW/WallPlates/index.htm','contributorOnly==false','cspProdNode==979679285447');
g_navNode_0_9=g_navNode_0.addNode('216365','Inserts',ssUrlPrefix + 'SW/Inserts/index.htm','contributorOnly==false','cspProdNode==979679285448');
if (SSContributor)
{
g_navNode_0_10=g_navNode_0.addNode('5604','Administration',ssUrlPrefix + 'SW/Administration/index.htm','contributorOnly==true');
}

