/////////////////////////////////////////////////////////////////////////////
// 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('1','Home',ssUrlPrefix + 'index.htm',null,'secondaryUrlVariableField==region1');
g_navNode_0=g_navNode_Root.addNode('657','Council \x26 Committees',ssUrlPrefix + 'CouncilCommittees/index.htm');
g_navNode_0_0=g_navNode_0.addNode('659','Council',ssUrlPrefix + 'CouncilCommittees/Council/index.htm');
g_navNode_0_0_5=g_navNode_0_0.addNode('660','Mayor',ssUrlPrefix + 'CouncilCommittees/Council/Mayor/index.htm');
g_navNode_0_0_6=g_navNode_0_0.addNode('661','Deputy Mayor',ssUrlPrefix + 'CouncilCommittees/Council/DeputyMayor/index.htm');
g_navNode_0_0_7=g_navNode_0_0.addNode('662','Councillors Ward 1-5',ssUrlPrefix + 'CouncilCommittees/Council/CouncillorsWard1-5/index.htm');
g_navNode_0_1=g_navNode_0.addNode('1174','Council\'s Strategic Priorities',ssUrlPrefix + 'CouncilCommittees/StrategicPriorities/index.htm');
g_navNode_0_2=g_navNode_0.addNode('658','Committees',ssUrlPrefix + 'CouncilCommittees/Committees/index.htm');
g_navNode_0_3=g_navNode_0.addNode('663','Mayor\'s Office',ssUrlPrefix + 'CouncilCommittees/MayorsOffice/index.htm');
g_navNode_0_4=g_navNode_0.addNode('664','Municipal Election 2006',ssUrlPrefix + 'CouncilCommittees/MunicipalElection/index.htm');
g_navNode_0_4_23=g_navNode_0_4.addNode('665','Ward Maps',ssUrlPrefix + 'CouncilCommittees/MunicipalElection/WardMaps/index.htm');
g_navNode_0_5=g_navNode_0.addNode('839','Municipal Election 2010',ssUrlPrefix + 'CouncilCommittees/MunicipalElection2010/index.htm');
g_navNode_0_6=g_navNode_0.addNode('666','Minutes/Agendas',ssUrlPrefix + 'CouncilCommittees/MinutesAgendas/index.htm');
g_navNode_0_6_0=g_navNode_0_6.addNode('1407','2010 Minutes \x26 Agendas',ssUrlPrefix + 'CouncilCommittees/MinutesAgendas/2010MinutesAgendas/index.htm');
g_navNode_0_6_1=g_navNode_0_6.addNode('836','2009 Minutes \x26 Agendas',ssUrlPrefix + 'CouncilCommittees/MinutesAgendas/2009MinutesAgendas/index.htm');
g_navNode_0_6_2=g_navNode_0_6.addNode('837','2008 Minutes \x26 Agendas',ssUrlPrefix + 'CouncilCommittees/MinutesAgendas/2008MinutesAgendas/index.htm');
g_navNode_1=g_navNode_Root.addNode('2','Town Services',ssUrlPrefix + 'TownHall/index.htm');
g_navNode_1_0=g_navNode_1.addNode('6','By-Laws',ssUrlPrefix + 'TownHall/By-Laws/index.htm');
g_navNode_1_1=g_navNode_1.addNode('21','Clerk\'s',ssUrlPrefix + 'TownHall/Clerks/index.htm');
g_navNode_1_2=g_navNode_1.addNode('1541','Economic Development',ssUrlPrefix + 'TownHall/EconomicDevelopment/index.htm');
g_navNode_1_3=g_navNode_1.addNode('328','Enforcement',ssUrlPrefix + 'TownHall/Enforcement/index.htm');
g_navNode_1_4=g_navNode_1.addNode('10','Employment / Careers',ssUrlPrefix + 'TownHall/EmploymentCareers/index.htm');
g_navNode_1_5=g_navNode_1.addNode('723','Engineering Services',ssUrlPrefix + 'TownHall/Engineering/index.htm');
g_navNode_1_5_0=g_navNode_1_5.addNode('727','Public Works',ssUrlPrefix + 'TownHall/Engineering/PublicWorks/index.htm');
g_navNode_1_5_1=g_navNode_1_5.addNode('731','Water/Waste Water',ssUrlPrefix + 'TownHall/Engineering/WaterWasteWater/index.htm');
g_navNode_1_6=g_navNode_1.addNode('23','Finance',ssUrlPrefix + 'TownHall/Finance/index.htm');
g_navNode_1_7=g_navNode_1.addNode('11','Forms',ssUrlPrefix + 'TownHall/Forms/index.htm');
g_navNode_1_8=g_navNode_1.addNode('24','Fire \x26 Emergency Services',ssUrlPrefix + 'TownHall/FireEmergencyServices/index.htm');
g_navNode_1_9=g_navNode_1.addNode('1209','Frequently Asked Questions',ssUrlPrefix + 'TownHall/FrequentlyAskedQuestions/index.htm');
g_navNode_1_10=g_navNode_1.addNode('25','Human Resources',ssUrlPrefix + 'TownHall/HumanResources/index.htm');
g_navNode_1_11=g_navNode_1.addNode('383','Information Technology',ssUrlPrefix + 'TownHall/InformationTechnology/index.htm');
g_navNode_1_12=g_navNode_1.addNode('776','Leisure Services',ssUrlPrefix + 'TownHall/LeisureServices/index.htm');
g_navNode_1_12_0=g_navNode_1_12.addNode('1082','Special Projects/Initiatives',ssUrlPrefix + 'TownHall/LeisureServices/SpecialProjectsInitiatives/index.htm');
g_navNode_1_12_0_0=g_navNode_1_12_0.addNode('1084','New Leisure Centre',ssUrlPrefix + 'TownHall/LeisureServices/SpecialProjectsInitiatives/NewLeisureCentre/index.htm');
g_navNode_1_12_0_1=g_navNode_1_12_0.addNode('1085','Proposed Sports Dome',ssUrlPrefix + 'TownHall/LeisureServices/SpecialProjectsInitiatives/ProposedSoccerDome/index.htm');
g_navNode_1_12_0_2=g_navNode_1_12_0.addNode('1086','Henderson Memorial Park',ssUrlPrefix + 'TownHall/LeisureServices/SpecialProjectsInitiatives/HendersonMemorialPark/index.htm');
g_navNode_1_12_1=g_navNode_1_12.addNode('1146','Leisure Guide',ssUrlPrefix + 'TownHall/LeisureServices/LeisureGuide/index.htm');
g_navNode_1_12_2=g_navNode_1_12.addNode('1147','Program Registration',ssUrlPrefix + 'TownHall/LeisureServices/ProgramRegistration/index.htm');
g_navNode_1_12_3=g_navNode_1_12.addNode('1081','Leisure Skating Schedules',ssUrlPrefix + 'TownHall/LeisureServices/LeisureSkatingSchedules/index.htm');
g_navNode_1_12_4=g_navNode_1_12.addNode('1148','Events',ssUrlPrefix + 'TownHall/LeisureServices/Events/index.htm');
g_navNode_1_12_5=g_navNode_1_12.addNode('110','Parks, Trails \x26 Open Spaces',ssUrlPrefix + 'TownHall/LeisureServices/Parks/index.htm');
g_navNode_1_12_5_0=g_navNode_1_12_5.addNode('1130','Parks',ssUrlPrefix + 'TownHall/LeisureServices/Parks/Parks/index.htm');
g_navNode_1_12_5_1=g_navNode_1_12_5.addNode('1131','Trails',ssUrlPrefix + 'TownHall/LeisureServices/Parks/Trails/index.htm');
g_navNode_1_12_5_2=g_navNode_1_12_5.addNode('1132','Open Spaces',ssUrlPrefix + 'TownHall/LeisureServices/Parks/OpenSpaces/index.htm');
g_navNode_1_12_5_3=g_navNode_1_12_5.addNode('1213','Soccer Pitch and Baseball Diamond Status',ssUrlPrefix + 'TownHall/LeisureServices/Parks/SoccerPitchandBaseballDiamondStatus/index.htm');
g_navNode_1_12_6=g_navNode_1_12.addNode('109','Arenas',ssUrlPrefix + 'TownHall/LeisureServices/Arenas/index.htm');
g_navNode_1_12_6_0=g_navNode_1_12_6.addNode('1136','Bradford \x26 District Memorial Community Centre',ssUrlPrefix + 'TownHall/LeisureServices/Arenas/BradfordDistrictMemorialCommunityCentre/index.htm');
g_navNode_1_12_6_1=g_navNode_1_12_6.addNode('1137','Bob Fallis Sports Centre',ssUrlPrefix + 'TownHall/LeisureServices/Arenas/BobFallisSportsCentre/index.htm');
g_navNode_1_12_7=g_navNode_1_12.addNode('1083','Multi Purpose Community Halls',ssUrlPrefix + 'TownHall/LeisureServices/MultiPurposeCommunityHalls/index.htm');
g_navNode_1_12_8=g_navNode_1_12.addNode('111','Cemeteries',ssUrlPrefix + 'TownHall/LeisureServices/Cemeteries/index.htm');
g_navNode_1_12_8_0=g_navNode_1_12_8.addNode('1142','Municipally Managed Cemeteries',ssUrlPrefix + 'TownHall/LeisureServices/Cemeteries/MunicipallyManagedCemeteries/index.htm');
g_navNode_1_12_8_1=g_navNode_1_12_8.addNode('1143','Pioneer/Historic Cemeteries',ssUrlPrefix + 'TownHall/LeisureServices/Cemeteries/PioneerHistoricCemeteries/index.htm');
g_navNode_1_12_9=g_navNode_1_12.addNode('1145','Contact Leisure Services Department',ssUrlPrefix + 'TownHall/LeisureServices/ContactLeisureServicesDepartment/index.htm');
g_navNode_1_12_10=g_navNode_1_12.addNode('1144','Map To Our Location',ssUrlPrefix + 'TownHall/LeisureServices/MapToOurLocation/index.htm');
g_navNode_1_13=g_navNode_1.addNode('40','Library Services',ssUrlPrefix + 'TownHall/LibraryServices/index.htm');
g_navNode_1_14=g_navNode_1.addNode('722','Planning \x26 Development',ssUrlPrefix + 'TownHall/PlanningDevelopment/index.htm');
g_navNode_1_14_0=g_navNode_1_14.addNode('726','Building Division',ssUrlPrefix + 'TownHall/PlanningDevelopment/Building/index.htm');
g_navNode_1_14_1=g_navNode_1_14.addNode('724','Planning Division',ssUrlPrefix + 'TownHall/PlanningDevelopment/Planning/index.htm');
g_navNode_1_15=g_navNode_1.addNode('815','Police Services',ssUrlPrefix + 'TownHall/Police/index.htm');
g_navNode_1_16=g_navNode_1.addNode('1078','Purchasing',ssUrlPrefix + 'TownHall/Purchasing/index.htm');
g_navNode_1_16_0=g_navNode_1_16.addNode('16','Competitive Bid Opportunities',ssUrlPrefix + 'TownHall/Purchasing/TendersandRFPs/index.htm');
g_navNode_2=g_navNode_Root.addNode('3','Community \x26 Events',ssUrlPrefix + 'CommunityEvents/index.htm');
g_navNode_2_0=g_navNode_2.addNode('34','About Us',ssUrlPrefix + 'CommunityEvents/AboutUs/index.htm');
g_navNode_2_1=g_navNode_2.addNode('36','Community Calendar',ssUrlPrefix + 'CommunityEvents/CommunityCalendar/index.htm');
g_navNode_2_2=g_navNode_2.addNode('37','Community Links \x26 Organizations',ssUrlPrefix + 'CommunityEvents/CommunityLinks/index.htm');
g_navNode_2_3=g_navNode_2.addNode('459','Events',ssUrlPrefix + 'CommunityEvents/Events/index.htm');
g_navNode_2_4=g_navNode_2.addNode('39','History',ssUrlPrefix + 'CommunityEvents/History/index.htm');
g_navNode_2_6=g_navNode_2.addNode('41','Public Notices',ssUrlPrefix + 'CommunityEvents/PublicNotices/index.htm');
g_navNode_2_7=g_navNode_2.addNode('953','Town Page',ssUrlPrefix + 'CommunityEvents/TownPage/index.htm');
g_navNode_2_8=g_navNode_2.addNode('44','Waste Management',ssUrlPrefix + 'CommunityEvents/WasteManagement/index.htm');
g_navNode_3=g_navNode_Root.addNode('4','Business Services',ssUrlPrefix + 'BusinessServices/index.htm');
