// This was originally called hmJSTop.js

var SubMenusList;

var SubSubMenusList = new Array("", "acbiol", "acbiochem", "acchem", "acphys", "acmath");

var last_open_subsubmenu = 100;
var last_open_submenu = 100;

var versx = navigator.appVersion;
versx = versx.substring(0,1);

var browser_name;
if(navigator.appName=="Netscape" && versx!="4")
  browser_name = "N6";
if(navigator.appName=="Netscape" && versx=="4")
  browser_name = "N4";
if(navigator.appName=="Microsoft Internet Explorer")
  browser_name = "IE";

function ImgChange(imgNum,imgSrc) 
{
  if(browser_name=="N4")
  {
  }
  else if(browser_name=="IE")
	  document.images[imgNum].src = imgSrc;
  else if(browser_name=="N6")
	document.images[imgNum].src = imgSrc;
  else
	  document.images[imgNum].src = imgSrc;
}

function getClassObj(divName)
{	
  var vers = navigator.appVersion;
  vers = vers.substring(0,1);
//alert(divName);
  if (navigator.appName=="Netscape" && vers!="4") //(document.getElementById)
  {
 // 	alert(document.getElementById(divName));
        this.style = document.getElementById(divName).className;
//        alert("test");
  }
  else if (navigator.appName=="Microsoft Internet Explorer") // (document.all)
  {
  //	alert(divName);
        this.style = document.all [divName].className;
  }
  else if (navigator.appName=="Netscape" && vers=="4") //(document.layers)
  {
  	
        this.style = document.layers[divName];
  } 
  //alert(divName);
  return this.style;
}

function getObj(divName)
{	
  var vers = navigator.appVersion;
  vers = vers.substring(0,1);
//alert(divName);
  if (navigator.appName=="Netscape" && vers!="4") //(document.getElementById)
  {
 // 	alert(document.getElementById(divName));
        this.style = document.getElementById(divName).style;
//        alert("test");
  }
  else if (navigator.appName=="Microsoft Internet Explorer") // (document.all)
  {
  //	alert(divName);
        this.style = document.all [divName].style;
  }
  else if (navigator.appName=="Netscape" && vers=="4") //(document.layers)
  {
  	
        this.style = document.layers[divName];
  } 
  //alert(divName);
  return this.style;
}

function visObj(divName, change)
{
  if(change=="hidden")
  {
  	getObj(divName).visibility = change;
  }
  else
  {
    var vers = navigator.appVersion;
    vers = vers.substring(0,1);

    if(navigator.appName=="Netscape" && vers=="4")
    {
 
	getObj(divName).visibility = 'show';
}
    else	
        getObj(divName).visibility = 'visible';
  }
}

function get_number_by_name(name)
{
//	N6Test();
	
	for(i=0; i<SubMenusList.length; i++)
		if(SubMenusList[i]==name)
			return i;
	return (-1);
	
}

function subsubmenu_get_number_by_name(name)
{
	for(i=0; i<SubSubMenusList.length; i++)
		if(SubSubMenusList[i]==name)
			return i;
	return (-1);
	
}
/**------------ THE NAVIGATION BAR  ----------------**/
var all_submenus_closed=0;

function submenu_on(my_id)
{
//N6Test();
	
  var n = get_number_by_name(my_id);
  document [barArray[n].imgBarName].src = barArray[n].onImgSrc;   
 
  visObj(my_id, "visible");
  all_submenus_closed=0;	
}
function submenu_off(my_id)
{
  if(last_open_submenu==1 && last_open_subsubmenu>0 && last_open_subsubmenu<6)
  {
  }
  else
  {
  	var n = get_number_by_name(my_id);
  	document [barArray[n].imgBarName].src = barArray[n].offImgSrc;
  	visObj(my_id, "hidden");
  }
}

function close_all_submenus()
{
//  alert('opsa');
  if(all_submenus_closed==0)
  {
    for(i=1; i<numOfBars; i++)
    {
      submenu_off(SubMenusList[i]);
    }
    all_submenus_closed = 1;
  }
}

function moveObjLeft(name, offset)
{
  var o = getObj(name);
  var slen = o.left.length;
  if(browser_name == "IE" || browser_name == "N6")
  {
    var tmp = o.left.substr(0,slen-2);
    tmp = eval(tmp);
    o.left = tmp - offset;
  }
  else
  {
    o.left = o.left - offset;
  }
}

function changeLinks()
{
  if(browser_name=="N4")
  {
	document.layers['tech'].document.links[0].href = "\/vptt1";
        document.layers['acbiochem'].document.links[5].href = "http:\/\/inn.weizmann.ac.il";
        document.layers['acbiol'].document.links[7].href = "http:\/\/inn.weizmann.ac.il";
	document.layers['admin'].document.links[4].href = "\/orgp_open\/open-home.htm";
  }
  else if(browser_name=="IE")
  {
//alert(document.all ['acbiol'].all.bioserv2.href);

	document.all ['tech'].all.vptt.href = "\/vptt1";
        document.all ['acbiochem'].all.bioserv1.href = "http:\/\/inn.weizmann.ac.il";
        document.all ['acbiol'].all.bioserv2.href = "http:\/\/inn.weizmann.ac.il";
        document.all ['admin'].all.grproj.href = "\/orgp_open\/open-home.htm";
  }
  else if(browser_name=="N6")
  {	
        document.getElementById('bioserv1').href =  "http:\/\/inn.weizmann.ac.il";
        document.getElementById('bioserv2').href =  "http:\/\/inn.weizmann.ac.il";
	document.getElementById('vptt').href = "\/vptt1";
	document.getElementById('grproj').href = "\/orgp_open\/open-home.htm";
  }
  else
  {
	document.all ['tech'].all.vptt.href = "\/vptt1";
	document.all ['admin'].all.grproj.href = "\/orgp_open\/open-home.htm";
  }
}

var moved_once = 0;

function barActOn( bar_num, submenu) 
{	
  all_submenus_closed=0;
  document [barArray[bar_num].imgBarName].src = barArray[bar_num].onImgSrc;   
 
   if((last_open_submenu>0)&&(last_open_submenu<numOfBars+1))
   {
   	getObj(SubMenusList[last_open_submenu]).visibility = "hidden";
	
   }
   if((last_open_subsubmenu>0)&&(last_open_subsubmenu<6))
   {
   	getObj(SubSubMenusList[last_open_subsubmenu]).visibility = "hidden";
	SetElClass('l'+SubSubMenusList[last_open_subsubmenu],'menu');
   	last_open_subsubmenu = 100;
   }
   	
   last_open_sub_menu = bar_num;

   if(moved_once==0 && numOfBars==11)
     changeLinks();  

   if(moved_once==0 && numOfBars==11 && (SubMenusList[bar_num]=='research' || SubMenusList[bar_num]=='supp' || SubMenusList[bar_num]=='tech' ))
   {
     moveObjLeft('research', 60);
     moveObjLeft('supp', 60);
     moveObjLeft('tech', 60);        
     moved_once = 1;
   } 
   visObj(SubMenusList[bar_num], "visible");   
}

function barActOff(bar_num, submenu) {   
//	N6Test();

   document [barArray[bar_num].imgBarName].src = barArray[bar_num].offImgSrc;
   last_open_submenu = bar_num;
   
}

function SetElClass(id, cname)
{
	if(browser_name=="N6")
	{
		document.getElementById(id).className=cname;
	}
	else if(browser_name=="IE")
	{ 
		document.all [id].className=cname;
  	}        
	else if(browser_name=="N4")
	{
		//document.layers[id].className=cname;
	} 
}

function OpenSubSubMenu(name)	
{
	if(last_open_subsubmenu>0 && last_open_subsubmenu<6)
	{
		getObj(SubSubMenusList[last_open_subsubmenu]).visibility = "hidden";
		SetElClass('l'+SubSubMenusList[last_open_subsubmenu],'menu');
        }
	var num = subsubmenu_get_number_by_name(name);
	last_open_subsubmenu = num;
	visObj(name, "visible");

	SetElClass('l'+name,'menuo');
}

function CloseSubSubMenu(name)	
{
	if(last_open_subsubmenu>0 && last_open_subsubmenu<6)
	{
		getObj(SubSubMenusList[last_open_subsubmenu]).visibility = "hidden";
		SetElClass('l'+SubSubMenusList[last_open_subsubmenu],'menu');
	}
	last_open_subsubmenu = 100;	
}


//----------------  Bar Class -------------------------------------	

function BarClass(num,offSrc,onSrc,refFile,altTag) {
  this.barNum=num; 
  this.offImgSrc= offSrc;
  this.onImgSrc=onSrc;
  this.ref= refFile; 
  this.alt = altTag;			  	   	   		  
  this.imgBarName="bar"+ num; 	
  this.setLive = setLive;						  
  this.display= display;  
  this.submenu = altTag;
}

function setLive()  { 
  this.offImgSrc= this.liveImgSrc;
  this.onImgSrc=this.liveImgSrc;
}

function setNormal() { 
  this.offImgSrc= this.srcBaseName + "1" + imgExt;
  this.onImgSrc = this.srcBaseName + "2" + imgExt; 
}

function display() {

 // have to create act On/off call with the actual barNum
 var actOnCall="barActOn("+ this.barNum + ",'" + this.submenu + "')" ;   
 var actOffCall="barActOff("+ this.barNum + ",'" + this.submenu + "')" ; 

 if(this.barNum==numOfBars)
 {
	document.write('<a href='); 
	document.write(this.ref); 
	document.write(' OnMouseOver="');
 	document.write(actOnCall); 
	document.write('" OnMouseOut="');	  
 	document.write(actOffCall);   	  
	document.write('" >');
  	document.write(' <img src="');
	document.write(this.offImgSrc);        //e.g."images/contact1.jpg" ;
	document.write('" border="0" name= ');	  
	document.write(this.imgBarName);
	document.write(' alt="');	  
        document.write(this.alt);
        document.write('">');
	document.write("</a>");
 }
else
 {
 	if(browser_name=="N4")
 	{
		document.write('<a href='); 
		document.write(this.ref); 
		document.write(' OnMouseOver="');
 		document.write(actOnCall); 
		document.write('" OnMouseOut="');	  
 		document.write(actOffCall);   	  
		document.write('" >');
  		document.write(' <img src="');
		document.write(this.offImgSrc);   //e.g."images/contact1.jpg" ;
		document.write('" border="0" name= ');	  
		document.write(this.imgBarName);
		document.write(' alt="');	  
        	document.write(this.alt);
        	document.write('">');
		document.write("</a>");	
 	}
 	else
 	{
 		var s = '<img src="'+this.offImgSrc+'"  border="0" name="'+this.imgBarName+'" OnMouseOver="'+actOnCall+'" OnMouseOut="'+actOffCall+'" >';
 		document.write(s);
 	}
 }
}

//--------------- Nav Class ---------------------------------------

function NavClass(len) { 
	 this.navLen=len;
	 this.setBarArray=setBarArray; 
	 this.displayNav=displayNav;   
}

function displayNav(categoryNum) { 
// activate display method for each bar

  document.write('<table cellspacing="0" cellpadding="0"  bgcolor="#66CCFF" border=0 height="29" align="Left">');

  document.write('<TR >');
  	  var k;
	  for (k=1 ; k <= this.navLen  ; k++)
	  {
	   
	   document.write('<td align="left" >');
	   barArray[k].display();
	   document.write('</td>');
	 }
  document.write('</tr>');
  document.write('</table>');  
}

