/////////////////////////////////////////////////////////////////////////////
// Class : IS_2006_Vertical_Nav
// Comments : 
/////////////////////////////////////////////////////////////////////////////

function IS_2006_Vertical_Nav(strTextColor, strHoverColor, strFocusColor, strClassName, strShowHome, strShowFocus)
{
	this.m_TextColor  = '';
	this.m_HoverColor = '';
	this.m_FocusColor = '';
	this.m_ClassName  = 'IS_2006_Vertical_Nav';

	this.m_ShowHome   = false;
	this.m_ShowFocus  = false;

	this.m_NavPath    = g_navNode_Path;
		
	IS_2006_Vertical_Nav.prototype.Display = IS_2006_Vertical_Nav_Display;
	IS_2006_Vertical_Nav.prototype.DisplayNode = IS_2006_Vertical_Nav_DisplayNode;
	
	if (strTextColor != '')
		this.m_TextColor = strTextColor;
		
	if (strHoverColor != '')
		this.m_HoverColor = strHoverColor;

	if (strFocusColor != '')
		this.m_FocusColor = strFocusColor;

	if (strClassName != '')
		this.m_ClassName = strClassName;
		
	if (strShowHome == 'true')
		this.m_ShowHome = true;
			
	if (strShowFocus == 'true')
		this.m_ShowFocus = true;
}

function IS_2006_Vertical_Nav_Display (node)
{
	document.write ('<div class="' + this.m_ClassName + '"');
		
	if (this.m_TextColor != '')
		document.write (' style="color: ' + this.m_TextColor + ';"');
			
	document.write ('>');
	
	this.DisplayNode(node);
		
	document.write ('</div>')
}

function IS_2006_Vertical_Nav_DisplayNode(node)
{
	var bSelected = false;
	var nodeColor = this.m_TextColor;
	var nodeClass = this.m_ClassName;
	var nodeLevel = node.m_level;

	if (nodeLevel > 6)
		nodeLevel = 6;
		
	if (node.m_level > 0 || this.m_ShowHome)
		{
			var ds = new Array();
			var di = 0;
	
			if (this.m_ShowFocus && this.m_NavPath.length > 0 && node.m_level < this.m_NavPath.length)
			{
				if (this.m_NavPath[node.m_level] == node.m_id)
				{
					if (node.m_level > 0 || (node.m_level == 0 && this.m_NavPath.length == 1))
					{
						bSelected = true;
						nodeColor = this.m_FocusColor;
						nodeClass += '-focus';
					}
				}
			}
		
			if (node.m_level > 0)
				nodeClass += '-' + nodeLevel;
	
			ds[di++] = '<div';
			ds[di++] = ' class="' + nodeClass + '"';
			ds[di++] = '>';
					
			ds[di++] = '<a href="' + node.m_href + '"';
			
			//ds[di++] = ' class="' + nodeClass + '"';
			
			if (nodeColor != '')
			{
				ds[di++] = ' style="color: ' + nodeColor + ';"';
				
				if (this.m_HoverColor != '')
				{
					ds[di++] = ' onmouseover="this.style.color=\'' + this.m_HoverColor + '\'"';
					ds[di++] = ' onmouseout="this.style.color=\'' + nodeColor + '\'"';
				}
			}
			ds[di++] = '>'
			
			ds[di++] = '&raquo;&nbsp;' + node.m_label;
				
			ds[di++] = '</a></div>';
			
			document.write(ds.join(''));
		}
		
		// expand sub-levels (if any)
		if(node.m_level == 0 || this.m_NavPath[node.m_level] == node.m_id)
		{
			for (var i = 0; i < node.m_subNodes.length; i++)
			{
				this.DisplayNode(node.m_subNodes[i]);
			}
		}
	
	
	/*
	if (this.m_NavPath.length > 0 && node.m_level < this.m_NavPath.length)
	{
		if (this.m_NavPath[node.m_level] == node.m_id)
		{
			bSelected = true;
			nodeColor = this.m_FocusColor;
			nodeClass += '-focus';
		}
	}
	
	nodeClass += '-' + nodeLevel;

	if (nodeLevel >= 2)
	{
		var ds = new Array();
		var di = 0;
		
		//ds[di++] = (nodeLevel <= 2) ? '<dt' : '<dd';
		ds[di++] = '<div';
		ds[di++] = ' class="' + nodeClass + '"';
		ds[di++] = '>';

		ds[di++] = '<a href="' + node.m_href + '"';
		//ds[di++] = ' class="' + nodeClass + '"';
		
		if (nodeColor != '')
		{	
			ds[di++] = ' style="color:' + nodeColor + ';"';

			if (!bSelected && this.m_HoverColor != '')
			{
				ds[di++] = ' onmouseover="this.style.color=\'' + this.m_HoverColor + '\'"';
				ds[di++] = ' onmouseout="this.style.color=\'' + nodeColor + '\'"';
			}
		}
		
		ds[di++] = '>'
		ds[di++] = node.m_label;
		ds[di++] = '</a>';
		ds[di++] = '</div>';
		document.write(ds.join(''));
	}
	
	if (bSelected)
	{	// expand sub-levels (if any)
		for (var i = 0; i < node.m_subNodes.length; i++)
		{
			this.DisplayNode(node.m_subNodes[i]);
		}
	}*/
}
