var DDSPEED = 10;
var DDTIMER = 15;
//var DDSPEED = 30;
//var DDTIMER = 45;

var menu1 = "menu_item_1623";
var menu2 = 'menu_item_1801'
var menu3 = 'menu_item_1616'
var menu4 = 'menu_item_1618'
var menu5 = 'menu_item_1672'
var menu6 = 'menu_item_1619'
var menu7 = 'menu_item_1799'

if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)){ //test for MSIE x.x;
 var ieversion=new Number(RegExp.$1) // capture x.x portion and store as a number
 if (ieversion>=8)
  run_script = true;
 else if (ieversion>=7)
  run_script = true;
 else if (ieversion>=6)
  run_script = false;
 else if (ieversion>=5)
  run_script = false;
}
else
 run_script = true;
 
if (run_script){
document.getElementById(menu1).onmouseover = function(){
	ddMenu(menu1,1)
}
document.getElementById(menu1).onmouseout = function(){
	ddMenu(menu1,-1)
}
document.getElementById(menu2).onmouseover = function(){
	ddMenu(menu2,1)
}
document.getElementById(menu2).onmouseout = function(){
	ddMenu(menu2,-1)
}

document.getElementById(menu3).onmouseover = function(){
	ddMenu(menu3,1)
}
document.getElementById(menu3).onmouseout = function(){
	ddMenu(menu3,-1)
}

document.getElementById(menu4).onmouseover = function(){
	ddMenu(menu4,1)
}
document.getElementById(menu4).onmouseout = function(){
	ddMenu(menu4,-1)
}

document.getElementById(menu5).onmouseover = function(){
	ddMenu(menu5,1)
}
document.getElementById(menu5).onmouseout = function(){
	ddMenu(menu5,-1)
}

document.getElementById(menu6).onmouseover = function(){
	ddMenu(menu6,1)
}
document.getElementById(menu6).onmouseout = function(){
	ddMenu(menu6,-1)
}

document.getElementById(menu7).onmouseover = function(){
	ddMenu(menu7,1)
}
document.getElementById(menu7).onmouseout = function(){
	ddMenu(menu7,-1)
}
}


//var u = document.getElementById('level_3');


// main function to handle the mouse events //
function ddMenu(id,d){
	var h = document.getElementById(id);
  	if(h.className.indexOf("active") < 0){
  	//var c = u;
  		var level_3 = h.getElementsByTagName("ul");
  		for(i=0; i<level_3.length; i++){
			var c = level_3[0];
  		}
  		if (c != null) {
  		clearInterval(c.timer);
			if(d == 1){
    			clearTimeout(h.timer);
    			if(c.maxh && c.maxh <= c.offsetHeight){return}
    			else if(!c.maxh){
      				c.style.display = 'block';
      				c.style.height = 'auto';
      				c.maxh = c.offsetHeight;
      				c.style.height = '0px';
    			}
   				c.timer = setInterval(function(){ddSlide(c,1)},DDTIMER);
  			}else{
 				h.timer = setTimeout(function(){ddCollapse(c)},50);
  			}
  		}
  	}
  /*
  document.getElementById('test_area').innerHTML = 'c.style.display = '+c.style.display
  													+'<br />c.style.height = '+c.style.height
													+'<br />c.maxh = '+c.maxh
													+'<br />c.offsetHeight = '+c.offsetHeight;
													*/
													
}

// collapse the menu //
function ddCollapse(c){
  c.timer = setInterval(function(){ddSlide(c,-1)},DDTIMER);
}

// cancel the collapse if a user rolls over the dropdown //
function cancelHide(id){
  var h = document.getElementById(id);
  var c = u;
  clearTimeout(h.timer);
  clearInterval(c.timer);
  if(c.offsetHeight < c.maxh){
    c.timer = setInterval(function(){ddSlide(c,1)},DDTIMER);
  }
}

// incrementally expand/contract the dropdown and change the opacity //
function ddSlide(c,d){
  var currh = c.offsetHeight;
  var dist;
  if(d == 1){
    dist = (Math.round((c.maxh - currh) / DDSPEED));
	c.style.height = currh + (dist * d) + 'px';
    c.style.opacity = currh / c.maxh;
    c.style.filter = 'alpha(opacity=' + (currh * 100 / c.maxh) + ')';

	// links
	li = c.getElementsByTagName('li');
	for(var i=0; i<li.length; i++) {
	  t = li[i];
	  t.style.display = 'block';
	}
  }else{
    //dist = (Math.round(currh / DDSPEED));
	dist = 5;	
	// links
	li = c.getElementsByTagName('li');
	for(var i=0; i<li.length; i++) {
	  t = li[i];
	  t.style.display = 'none';
	}
	
  }
  if(dist <= 1 && d == 1){
    dist = 1;
  }
 
 	move_height = currh + (dist * d);
 	if (move_height <0 ){
		move_height = 0; 
 	}
   c.style.height = move_height + 'px';
  c.style.opacity = currh / c.maxh;
  c.style.filter = 'alpha(opacity=' + (currh * 100 / c.maxh) + ')';
  if (currh < 5 && d != 1){
	  currh = 0;
	  c.style.height = currh + 'px';
  }
  if((currh < 5 && d != 1) || (currh > (c.maxh - 2) && d == 1)){
    clearInterval(c.timer);
  }
  
  /*
  document.getElementById('test_area_2').innerHTML = 'c.style.display = '+c.style.display
  													+'<br />c.style.height = '+c.style.height
													+'<br />c.maxh = '+c.maxh
													+'<br />c.offsetHeight = '+c.offsetHeight
													+'<br />currh = '+currh;
	*/
}
