/////////////////////////////////////////////////////////////////////////////
// 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('996','Events at JCU',ssUrlPrefix + 'index.htm',null,'cspDisplayField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"EEE, dd MMM yyyy\"\x29\x24\x3e','cspImageQuery==dSecurityGroup \x3cmatches\x3e \x60Public\x60  \x3cAND\x3e  xJCUContentCategory \x3csubstring\x3e \x60Object\x60  \x3cAND\x3e  xJCUContentGrouping \x3csubstring\x3e \x60Graphic Object\x60  \x3cAND\x3e  xContentType \x3csubstring\x3e \x60WebGraphics\x60  \x3cAND\x3e  xWebsites \x3ccontains\x3e \x60events\x60  \x3cAND\x3e  xJCU_Topic \x3csubstring\x3e \x60Promotion\x60 \x3cAND\x3e  xKeyDate \x3e\x3d \x60\x3c\x24dateCurrent\x28\x29\x24\x3e\x60','cspNavImage==JCUDEV_011434','cspNavImgURL==index.htm','cspQueryText==dDocType \x3csubstring\x3e \x60Event_description\x60 \x3cAND\x3e  xKeyDate \x3e\x3d \x60\x3c\x24dateCurrent\x28\x29\x24\x3e\x60 \x3cAND\x3e xKeyDate \x3c \x60\x3c\x24dateCurrent\x287\x29\x24\x3e\x60','cspResultCount==20','cspSortSpec==xKeydate asc','cspSubField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"h\x3amm a\"\x29\x24\x3e \x3c\x24xComments\x24\x3e - \x3c\x24xDescription\x24\x3e','secondaryUrlVariableField==region1');
g_navNode_0=g_navNode_Root.addNode('1001','Free Community Lectures and Forums',ssUrlPrefix + 'comlect/index.htm','cspDisplayField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"MMMM yyyy\"\x29\x24\x3e','cspNavImage==JCUDEV_011434','cspNavImgURL==../index.htm','cspQueryText==dDocType \x3csubstring\x3e \x60Event_description\x60  \x3cAND\x3e  xJCU_Topic \x3csubstring\x3e \x60Public_lecture\x60\x3cAND\x3e  xKeyDate \x3e\x3d \x3c\x24formatDateWithPattern\x28dateCurrent\x28\x29,\"MMMM yyyy\"\x29\x24\x3e','cspResultCount==300','cspSortSpec==xKeyDate asc','cspSubField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"EEEE d MMM yyyy h\x3amm a\"\x29\x24\x3e \x3c\x24xComments\x24\x3e','secondaryUrlVariableField==region1');
g_navNode_0_0=g_navNode_0.addNode('1832','Free Community Lectures Archives',ssUrlPrefix + 'comlect/archives/index.htm','cspDisplayField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"yyyy\"\x29\x24\x3e','cspNavImage==JCUDEV_011434','cspNavImgURL==../../index.htm','cspQueryText==dDocType \x3cmatches\x3e \x60Event_description\x60  \x3cAND\x3e  xJCU_Topic \x3csubstring\x3e \x60Public_lecture\x60','cspResultCount==300','cspSortSpec==xKeyDate desc','cspSubField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"EEEE d MMM yyyy h\x3amm a\"\x29\x24\x3e \x3c\x24xComments\x24\x3e','secondaryUrlVariableField==region1');
g_navNode_1=g_navNode_Root.addNode('998','Events in Cairns',ssUrlPrefix + 'eventscns/index.htm','cspDisplayField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"MMMM yyyy\"\x29\x24\x3e','cspNavImage==JCUDEV_011434','cspNavImgURL==../index.htm','cspQueryText==dDocType \x3csubstring\x3e \x60Event_description\x60  \x3cAND\x3e  xComments \x3csubstring\x3e \x60cairns\x60  \x3cAND\x3e   xKeyDate \x3e\x3d \x3c\x24formatDateWithPattern\x28dateCurrent\x28\x29,\"MMMM yyyy\"\x29\x24\x3e  \x3cAND\x3e  xJCU_Topic \x3cmatches\x3e \x60Event\x60','cspResultCount==300','cspSortSpec==xKeyDate asc','cspSubField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"EEEE d MMM yyyy h\x3amm a\"\x29\x24\x3e \x3c\x24xComments\x24\x3e','secondaryUrlVariableField==region1');
g_navNode_2=g_navNode_Root.addNode('1000','Events in Townsville',ssUrlPrefix + 'eventstvl/index.htm','cspDisplayField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"MMMM yyyy\"\x29\x24\x3e','cspNavImage==JCUDEV_011434','cspNavImgURL==../index.htm','cspQueryText==dDocType \x3csubstring\x3e \x60Event_description\x60  \x3cAND\x3e  xComments \x3csubstring\x3e \x60townsville\x60  \x3cAND\x3e  xKeyDate \x3e\x3d \x3c\x24formatDateWithPattern\x28dateCurrent\x28\x29,\"MMMM yyyy\"\x29\x24\x3e \x3cAND\x3e  xJCU_Topic \x3cmatches\x3e \x60Event\x60','cspResultCount==300','cspSortSpec==xKeyDate asc','cspSubField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"EEEE d MMM yyyy h\x3amm a\"\x29\x24\x3e \x3c\x24xComments\x24\x3e','secondaryUrlVariableField==region1');
g_navNode_3=g_navNode_Root.addNode('999','Events in other locations',ssUrlPrefix + 'events30/index.htm','cspDisplayField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"MMMM yyyy\"\x29\x24\x3e','cspNavImage==JCUDEV_011434','cspNavImgURL==../index.htm','cspQueryText==dDocType \x3csubstring\x3e \x60Event_description\x60  \x3cAND\x3e  \x3cNOT\x3e \x28xComments \x3csubstring\x3e \x60cairns\x60\x29  \x3cAND\x3e \x3cNOT\x3e \x28xComments \x3csubstring\x3e \x60townsville\x60\x29  \x3cAND\x3e   xKeyDate \x3e\x3d \x3c\x24formatDateWithPattern\x28dateCurrent\x28\x29,\"MMMM yyyy\"\x29\x24\x3e  \x3cAND\x3e  xJCU_Topic \x3cmatches\x3e \x60Event\x60','cspResultCount==300','cspSortSpec==xKeyDate asc','cspSubField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"EEEE d MMM yyyy h\x3amm a\"\x29\x24\x3e \x3c\x24xComments\x24\x3e','secondaryUrlVariableField==region1');
g_navNode_4=g_navNode_Root.addNode('1002','Conferences and Workshops',ssUrlPrefix + 'conferences/index.htm','cspDisplayField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"MMMM yyyy\"\x29\x24\x3e','cspNavImage==JCUDEV_011434','cspNavImgURL==../index.htm','cspQueryText==dDocType \x3csubstring\x3e \x60Event_description\x60  \x3cAND\x3e  xKeyDate \x3e\x3d \x3c\x24formatDateWithPattern\x28dateCurrent\x28\x29,\"MMMM yyyy\"\x29\x24\x3e  \x3cAND\x3e  xJCU_Topic \x3csubstring\x3e \x60Conference\x60','cspResultCount==300','cspSortSpec==xKeyDate asc','cspSubField==\x3c\x24formatDateWithPattern\x28xKeyDate, \"EEE, dd MMMM yyyy\"\x29\x24\x3e - \x3c\x24xComments\x24\x3e','secondaryUrlVariableField==region1');
g_navNode_6=g_navNode_Root.addNode('1003','Career Markets and Postgraduate Expos',ssUrlPrefix + 'careermkts/index.htm','cspNavImage==JCUDEV_011434','cspNavImgURL==../index.htm','cspQueryText==dDocType \x3csubstring\x3e \x60Event_description\x60  \x3cAND\x3e  xKeyDate \x3e\x3d \x3c\x24formatDateWithPattern\x28dateCurrent\x28\x29,\"yyyy\"\x29\x24\x3e  \x3cAND\x3e  xJCU_Topic \x3csubstring\x3e \x60Career_event\x60','cspSortSpec==xKeyDate asc','cspSubField==\x3c\x24xComments\x24\x3e','secondaryUrlVariableField==region1');
