// JavaScript Document
// left navMenu functions
var mnl_oh; 
var isE=true; 
var timer; 
var closeWhileCollapse=false;
var objHeight = new Object();
//save user defind status 2 years;
var expdate = 63072000;
function ListItem(_key,_value)
{
 this.key = Trim(_key);
 this.value = (Trim(_value) == "true")?true:false;
}

function navH1Click(e,objID)
{ 
  // alert(isE);
   var tab = objHeight[objID];
   if(tab == null)
   {
	  tab = new Object();
   }
   if(tab['height']==null)
   {
	   mnl_oh = null;
   }
   else
   {
	   mnl_oh = tab['height'];
   }
   if(tab['isE']==null)
   {
	   isE = true;
   }
   else
   {
	   isE = tab['isE'];
   }
  if(timer)
  { clearInterval(timer); timer = null; } 
  var target=getTargetFromEvent(e);
  mnl = getObject(objID); 
  if(target && mnl)
  { 
    if(target.nodeName != 'H1') 
	{ target = target.parentNode; }
	  mnl_h = mnl.offsetHeight; 
	  if(!mnl_oh)
	  { 
		 mnl_oh = mnl_h; 
	  } 
	  isE = !isE; 
	  if(isE) 
	  	{ 
		  target.className = 'active'; 
		} 
	  else 
	    { 
		  target.className = 'inactive'; 
		} 
	 navH1Interval(objID); 
	 timer = setInterval('navH1Interval("'+objID+'")', 1); 
	 } 
	 tab['height']=mnl_oh;
	 tab['isE'] = isE;
	 objHeight[objID]=tab;
	 
	 //expdate has defind in the front of this document
	 SetCookie(objID,isE,expdate);
  }

function navH1Interval(objID)
{ 
	if(mnl_h <= 0 && isE) 
	{ 
		var o =getObject(objID); 
			if(null!=o)
			{
				o.style.display='block';
			} 
	}
	if(!isE)
	{ 
		mnl_h -= 20; 
	} 
	else
	{ 
		mnl_h += 20; 
	} 
	if(mnl_h < 0)
	{ 
		mnl_h = 0; 
	} 
	else if(mnl_h > mnl_oh)
	{ 
		mnl_h = mnl_oh; 
	} 
	mnl.style.height = mnl_h+'px'; 
	if(mnl_h <= 0 || mnl_h >= mnl_oh) 
	{ 
		if(mnl_h <= 0 && !isE) 
		{ 
			var o =getObject(objID); 
			o.style.display='none'; 
		} 
		clearInterval(timer); 
		timer = null; 
		var masterNavLinks = getObject(objID); 
		if(closeWhileCollapse && isE && masterNavLinks && masterNavLinks.childNodes)
		{ 
			closeWhileCollapse = false; 
			resetNavToFirst(masterNavLinks); 
		} 
	} 
}
//
function getTargetFromEvent(e) 
{ 
	if (!e)var e = window.event; 
	if (e.target) var tg = e.target; 
	else if (e.srcElement) 
	{
		var tg = e.srcElement;
	} 
	while (tg.nodeType != 1)
	{ 
		tg = tg.parentNode;
	}
	 return tg;
}

function getObject(elementId) 
{ 
	if (document.getElementById) 
	{ 
		return document.getElementById(elementId); 
	} 
	else if (document.all) 
	{ 
		return document.all[elementId]; 
	} 
	else if (document.layers) 
	{
		return document.layers[elementId]; 
	} 
}
//GetTheMenus Height
function InitMenu()
{
  var pageNav = document.getElementsByTagName("DIV");
  if(pageNav)
  {
    for(var i=0;i<pageNav.length;i++)
    {
      //the menu switch div's class name must 'masterNavLinks'
      if(pageNav[i].className == 'masterNavLinks' && pageNav[i].id != '')
      {
		var tab = new Object();
		tab['height'] = document.getElementById(pageNav[i].id).offsetHeight;
		var id = pageNav[i].id;
		objHeight[id] = tab;
	  }
    }
    GetMenuStatusFromCookie();
  }
}

function GetMenuStatusFromCookie()
{
  var cookieArray = document.cookie.split(";");
  var cookieList = new Array();
  for(var i = 0;i < cookieArray.length;i++)
  {
    var item = cookieArray[i];
    var itemContent = item.split("=");
    var key;
    if(itemContent[0].indexOf("Function") > 0)
    {
      key = itemContent[0].substring(0,itemContent[0].indexOf("Function"));
      var listItem = new ListItem(key,itemContent[1]);
      cookieList.push(listItem);
    }
  }
  SetMenu(cookieList);
}

function SetMenu(dtStatus)
{
   if(dtStatus != null && typeof(dtStatus) == "object" && dtStatus.length > 0)
   {
      for(var i = 0; i< dtStatus.length; i++)
      {
        var o = dtStatus[i];
        var menuID = o.key;
        var isOpen = o.value;
            
        var clientDivID = menuID + "Function";
        var clientTitleID = "t" + menuID;
        var tab = objHeight[clientDivID];
        if(tab != null)
        {
          tab["isE"] = isOpen;
          var target = getObject(clientDivID);
          if(target != undefined)
          {
            var title = document.getElementById(clientTitleID);
            if(title)
	           { 
					if(isOpen)
					{
						title.className = 'active';
					}
					else
					{
						target.style.display='none';
						target.style.height = 0+"px";
						title.className = 'inactive';
					}
	          }
          }
        }
      }
   }
 }

