var LocationObj = new Object();
LocationObj.Application = "";
LocationObj.Session = "";
LocationObj.Expand = false;

function NavigationTree_toggle(node, minusImage, plusImage) 
{
	var nextDIV = node.nextSibling;

	while(nextDIV.nodeName != "DIV") 
	{
		nextDIV = nextDIV.nextSibling;
	}

	if (nextDIV.style.display == 'none') 
	{
		if (node.childNodes.length > 0) 
		{
			if (node.childNodes.item(0).nodeName == "IMG") 
			{
				node.childNodes.item(0).src = minusImage;
			}
		}
		nextDIV.style.display = 'block';
	}
	else 
	{
		if (node.childNodes.length > 0) 
		{
			if (node.childNodes.item(0).nodeName == "IMG") 
			{
				node.childNodes.item(0).src = plusImage;
			}
		}
		nextDIV.style.display = 'none';
	}
}

function NavigationTree_getImgDirectory(source) 
{
	return source.substring(0, source.lastIndexOf('/') + 1);
}

function NavigationTree_selectLeaf(title, url) 
{
	alert("You just clicked on title = " + title + ":: url = " + url);
}

var iReloadId = -1;
var bNavTreeLoaded = false;
function f_ReloadTree(applicationId) // sessionId, expandAllNodes
{
	var sessionId = "";
	var expandAllNodes = false;
	if (arguments.length > 1)
		sessionId = arguments[1];
	if (arguments.length > 2)
		expandAllNodes = arguments[2];
		
	LocationObj.Application = applicationId;
	LocationObj.Session = sessionId;
	LocationObj.Expand = expandAllNodes;
	
	if ((m_IsIntraweb) && (location.href.indexOf("NavigationLeft.aspx") > -1))
	{
//		var sUrl = "NavigationLeft.aspx"
		var sParams = "";
//		if (LocationObj.Application != "")
//			sParams += "aId=" + LocationObj.Application;
//		else
//			sParams += "aId=";
//		if (sParams != "")
//			sParams += "&";
//		if (LocationObj.Session != "")
//			sParams += "sId=" + LocationObj.Session;
//		else
//			sParams += "sId=";
//		if (sParams != "")
//			sParams += "&";
//		if (LocationObj.Expand)
//			sParams += "x=1";
//			
//		if (sParams != "")
//			sUrl += "?" + sParams
			
		//prompt("", m_AppPath + sUrl);
		//location.href = m_AppPath + sUrl
		
		var sUrl = m_AppPath + "WebTreeXml.ashx";
		if (LocationObj.Application != "")
			sParams += "ApplicationId=" + LocationObj.Application;
		else
			sParams += "ApplicationId=";
		if (sParams != "")
			sParams += "&";
		if (LocationObj.Session != "")
			sParams += "SessionId=" + LocationObj.Session;
		else
			sParams += "SessionId=";
		if (sParams != "")
			sUrl += "?" + sParams
		
		xTreeView_Reload(sUrl, LocationObj.Expand)
	}
	else
	{	
		parent.NavigationLeft.onload = function()
		{
			parent.NavigationLeft.f_ReloadTree(LocationObj.Application, LocationObj.Session, LocationObj.Expand);
			bNavTreeLoaded = true;
		};
		
		iReloadId = setTimeout("f_StartNavChecking()", 1000);
	}
}

function f_StartNavChecking()
{
	if (!bNavTreeLoaded)
	{
		parent.NavigationLeft.f_ReloadTree(LocationObj.Application, LocationObj.Session, LocationObj.Expand);
		bNavTreeLoaded = true;
		
		if (iReloadId > -1)
			clearTimeout(iReloadId);
	}
}

function f_ValidateTree(applicationId)	// sessionId, expandAllNodes
{
	var sessionId = "";
	var expandAllNodes = false;
	if (arguments.length > 1)
		sessionId = arguments[1];
	if (arguments.length > 2)
		expandAllNodes = arguments[2];
		
	var aId = f_QSParam("aId", parent.NavigationLeft.location.href);
	var sId = f_QSParam("sId", parent.NavigationLeft.location.href);
	
	//alert("ApplicationId: " + aId + " -- " + applicationId + "\nSessionId: " + sId + " -- " + sessionId);
	
	if ((aId.toUpperCase() != applicationId.toUpperCase()) || 
		(sId.toUpperCase() != sessionId.toUpperCase()))
		f_ReloadTree(applicationId, sessionId, expandAllNodes);
}