/////////////////////////////////////////////////////////////////////////////
// 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 attrName = argValues[i].split("==")[0];
		var attrValue = argValues[i].split("==")[1];

		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 attrName = argValues[i].split("==")[0];
		var attrValue = argValues[i].split("==")[1];

		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('9','Home',ssUrlPrefix + 'index.htm',null,'dynamicListIsIndex==TRUE','homeSection==TRUE','secondaryUrlVariableField==C10');
g_navNode_0=g_navNode_Root.addNode('11','Calendar of Events',ssUrlPrefix + 'CalendarofEvents/index.htm','Description==Check here for details about upcoming activities.','secondaryUrlVariableField==C10');
g_navNode_0_0=g_navNode_0.addNode('249','Annual Luncheon RSVP',ssUrlPrefix + 'CalendarofEvents/AnnualLuncheonRSVP/index.htm','secondaryUrlVariableField==C10');
g_navNode_1=g_navNode_Root.addNode('12','Retiree News \x26 Photos',ssUrlPrefix + 'RetireeNews/index.htm','Description==Find the latest announcements for retirees, recent news releases, company highlights, or sign up to receive an e-mail when the company is informed that a retiree has passed away.','dynamicListIsIndex==true','secondaryUrlVariableField==C10');
g_navNode_1_0=g_navNode_1.addNode('314','Retiree Event Photos',ssUrlPrefix + 'RetireeNews/RetireeEventPhotos/index.htm','Description==See photos from recent retiree events around our service territory.','dynamicListIsIndex==true','secondaryUrlVariableField==C10');
g_navNode_1_1=g_navNode_1.addNode('322','In the News',ssUrlPrefix + 'RetireeNews/IntheNews/index.htm','Description==Read the latest news releases from Alliant Energy and our subsidiary companies.','secondaryUrlVariableField==C10');
g_navNode_1_2=g_navNode_1.addNode('347','Those that have Left Us',ssUrlPrefix + 'RetireeNews/LeftUs/index.htm','Description==You can request to receive updates from Alliant Energy when retirees pass away.','secondaryUrlVariableField==C10');
g_navNode_2=g_navNode_Root.addNode('15','Matching Gifts Program',ssUrlPrefix + 'MatchingGiftsProgram/index.htm','Description==The Alliant Energy Foundation will match - dollar for dollar - each qualifying donation.','dynamicListIsIndex==false','secondaryUrlVariableField==C10');
g_navNode_3=g_navNode_Root.addNode('19','Volunteer Program',ssUrlPrefix + 'VolunteerProgram/index.htm','Description==Alliant Energy provides grants recognizing employee and retiree volunteers.','secondaryUrlVariableField==C10');
g_navNode_4=g_navNode_Root.addNode('272','Ways to Save',ssUrlPrefix + 'WaystoSave/index.htm','Description==Reduce your energy use with our energy-saving tips, or if you\\x27re an Alliant Energy customer take advantage of our rewards programs to get cash back on energy efficient purchases.','secondaryUrlVariableField==C10');
g_navNode_5=g_navNode_Root.addNode('25','Safety Eyewear Program',ssUrlPrefix + 'SafetyEyewearProgram/index.htm','Description==Alliant Energy retirees can purchase quality safety eyewear at a discount.','secondaryUrlVariableField==C10');
g_navNode_6=g_navNode_Root.addNode('24','Shareowner Services',ssUrlPrefix + 'ShareownerServices/index.htm','Description==Get help with stock transfers and purchases, and access your account information online.','secondaryUrlVariableField==C10');
g_navNode_7=g_navNode_Root.addNode('23','Public Affairs/EPAN',ssUrlPrefix + 'PublicAffairsEPAN/index.htm','Description==Learn how to get involved in grassroots efforts through the Alliant Energy Public Affairs Network \x28EPAN\x29.','secondaryUrlVariableField==C10');
g_navNode_7_0=g_navNode_7.addNode('251','About EPAN',ssUrlPrefix + 'PublicAffairsEPAN/AboutEPAN/index.htm','secondaryUrlVariableField==C10');
g_navNode_8=g_navNode_Root.addNode('14','Retiree Council',ssUrlPrefix + 'RetireeCouncil/index.htm','Description==Meet the leaders of your Retiree Association for 2008 and contact them with your questions or suggestions.','secondaryUrlVariableField==C10');
g_navNode_9=g_navNode_Root.addNode('262','Retiree Resources Directory',ssUrlPrefix + 'RetireeDirectory/index.htm','Description==Download our 2009 Retiree Resource Directory. ','contributorOnly==false');
g_navNode_10=g_navNode_Root.addNode('263','Local Groups \x26 Meetings',ssUrlPrefix + 'LocalGroups/index.htm','Description==See the contact list for our local Retiree groups.','contributorOnly==false');
g_navNode_11=g_navNode_Root.addNode('10','Feedback Form',ssUrlPrefix + 'FeedbackForm/index.htm','Description==Do you need additional information or wish to speak with someone about what\\x27s on your mind? We\\x27d like to hear about it\x21','secondaryUrlVariableField==C10');
g_navNode_12=g_navNode_Root.addNode('26','Contact Information',ssUrlPrefix + 'ContactInformation/index.htm','Description==Find contact information for retiree coordinators, human resources and shareowner services.','secondaryUrlVariableField==C10');
