var offsets = [[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]];

//////////////////////////////////////////////////////////////////////
/////// ============= НАЧАЛО РЕДАКТИРУЕМОЙ ЧАСТИ ============= ///////

//  Настройка позиции выпадающих меню
//  Первая цифра указывает для какого уровня производится настройка
//  Вторая цифра:  1 - слева;  2 - сверху.

  offsets[1][1] = -172;     // отступ слева
  offsets[1][2] = 30;       // отступ сверху

  offsets[2][1] = -105;     // отступ слева
  offsets[2][2] = 25;       // отступ сверху

  offsets[3][1] = -20;      // отступ слева
  offsets[3][2] = 15;       // отступ сверху

  offsets[4][1] = -20;      // отступ слева
  offsets[4][2] = 15;       // отступ сверху

  offsets[5][1] = -20;      // отступ слева
  offsets[5][2] = 15;       // отступ сверху


//  Настройка стилей пунктов меню при выделении

function highlight(elem){
  if(elem){

     elem.className = "bg";
     // elem.style.backgroundColor="#899395";

  }
}

function lowlight(elem){
  if(elem){

     elem.className = "nobg";
     // elem.style.backgroundColor="";

  }
}

/////// ============= КОНЕЦ РЕДАКТИРУЕМОЙ ЧАСТИ ============== ///////
//////////////////////////////////////////////////////////////////////



closing=[]  // таймауты

function getPageOffset(o, level){
  var menu_level = level+1;

  var KL_left=offsets[menu_level][1];
  var KL_top=offsets[menu_level][2];

  do{
    KL_left+=o.offsetLeft
    KL_top+=o.offsetTop
  }while(o=o.offsetParent)

  // correction filters for different browsers
  if (isOpera && menu_level>2){
      KL_top = KL_top - 56;
  }

  return [KL_left, KL_top]
}

function _getBounds(element)
{
	var left = element.offsetLeft;
	var top = element.offsetTop;
	for (var parent = element.offsetParent; parent; parent = parent.offsetParent)
	{
		left += parent.offsetLeft;
		top += parent.offsetTop;
	}
	return {left: left, top: top, width: element.offsetWidth, height: element.offsetHeight};
}

function show_menu(id, offsetparent, level){
  dd=document.getElementById('dropdown_menu_'+id)
  if(!dd) return

  cancel_close(id)

  offset=getPageOffset(offsetparent, level)
  if(dd.offsetHeight+offset[1] > getWindowHeight()+getScrollY()){
    offset[1]=getWindowHeight()+getScrollY()-dd.offsetHeight
  }

  //dd.style.left=(offset[0]+offsetparent.offsetWidth-10)+"px"
  dd.style.left=_getBounds(offsetparent).left + offsetparent.offsetWidth/2 - dd.offsetWidth/2;
  dd.style.top=offset[1]+"px"


  dd.style.visibility="visible"

  //highlight parent
  //setTimeout("highlight(document.getElementById('item_"+id+"'))",10)

}

function cancel_close(id){
  ids=id.split('__')
  id=''
  for(var i=0;i<ids.length;i++){
    id+="__"+ids[i]
    clearTimeout(closing[id.substring(2)])
  }
}

function hide_menu(id){
  menus=document.getElementsByTagName('div');
  for(var i=0;i<menus.length;i++){
    var id=menus[i].id
    if(id.indexOf('dropdown_menu_')==0){
      id=id.substr(14)
      clearTimeout(closing[id])
      closing[id]=setTimeout('hide_menu2("'+id+'")',1)
    }else{
      highlight(document.getElementById('item_'+id))
    }
  }
}

function hide_menu2(id){
  dd=document.getElementById('dropdown_menu_'+id)
  if(!dd) return
  dd.style.visibility="hidden"
  lowlight(document.getElementById('item_'+id))
}
