/////////////////////////////////////////////////////////////////////////////
// Function : SS_FRAG_WWW_SIDENAV
// Comments :
/////////////////////////////////////////////////////////////////////////////
function SS_FRAG_WWW_SIDENAV( strShowHome, strStartLevel, strNumLevels, strIndentOff) {
	this.m_ShowHome   = false;
	this.m_StartLevel = 2;
	this.m_NumLevels  = 10;
	this.m_EndLevel   = 11;
	this.m_NoIndent = true;
	this.m_NavPath   = g_navNode_Path;
	SS_FRAG_WWW_SIDENAV.prototype.Display = SS_FRAG_WWW_SIDENAV_Display;
	SS_FRAG_WWW_SIDENAV.prototype.DisplayNode = SS_FRAG_WWW_SIDENAV_DisplayNode;

	if (strIndentOff == 'false')
		this.m_NoIndent = false;
	
	if (strShowHome == 'true')
		this.m_ShowHome = true;
		
	//alert( strIndentOff+ "      < indent  |  home >       " + strShowHome + "\n\r" + this.m_NoIndent + "      < indent  |  home >       " + this.m_ShowHome);
	if (strStartLevel != '') 	{
		var value = parseInt(strStartLevel);
		if (value != NaN)
			this.m_StartLevel = value;
	}

	if (strNumLevels != '') 	{
		var value = parseInt(strNumLevels);
		if (value != NaN)
			this.m_NumLevels = value;
	}

	this.m_EndLevel = this.m_StartLevel + this.m_NumLevels - 1 ;	
}


function SS_FRAG_WWW_SIDENAV_Display (node) {
	document.write('<UL  id="subNav">');
	this.DisplayNode(node);
	document.write('</UL>');
}


function SS_FRAG_WWW_SIDENAV_DisplayNode(node) {
	var bSelected = false;
	var nodeLevel = node.m_level;

	if (nodeLevel > 6)
		nodeLevel = 6;

	if (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;
			}
		}
	}
	
	//alert( "length: " + this.m_NavPath.length + "        currentNodeLevel: " + node.m_level  + "  Label:" +node.m_label) ;
	if ( (node.m_level == 0 && this.m_ShowHome) || (node.m_level >= this.m_StartLevel && node.m_level <= this.m_EndLevel) )  {
		var checkLength = this.m_NavPath.length;
		if(this.m_NoIndent) {
			if (this.m_NavPath.length > 2)
				checkLength -= 1;
		}else{
			checkLength = node.m_level ;
		}
		
		if(node.m_level == checkLength)  {
		//if(node.m_level >= checkLength)  {
		//if(true)  {
			var ds = new Array();
			var di = 0;
			var cssID = "";

			ds[di++] = '<li' ;
			if( !(nodeLevel <= 2)) 
				cssID=  "indent";
			if(bSelected)
				cssID = "focus";
			if(bSelected && !(nodeLevel <= 2) )
				cssID = "inFocus";
			if(cssID.length > 0)
				ds[di++] = ' id=' + cssID;
			
			var trim = node.m_label;
			if(trim.length > 19)
				trim = trim.substring(0, 19) + "..";
			ds[di++] = ' >';
			ds[di++] = '<a href="' + node.m_href + '"><img src="' +snImageArrow+  '"> ';
			//ds[di++] =  node.m_level + ":"+trim;
			ds[di++] =  trim;
			ds[di++] = '</a></li>';
			document.write(ds.join(''));
		}
	}

	//if (bSelected || node.m_level == 0){		// expand sub-levels (if any)
	//if (node.m_level == 0) {
	if (bSelected || node.m_level ==  0 || node.m_level ==  2) {
		for (var i = 0; i < node.m_subNodes.length; i++) 	{
			this.DisplayNode(node.m_subNodes[i]);
		}
	}
}
