//////////////////////////////////////////////
// NEGAR CMS: Content Management System  //
// ===========================              //
// Copyright (c)2007-2008 by Igor Ognichenko//
// http://www.kasseler-cms.net/             //
//////////////////////////////////////////////

var showMenu = false;
var timeoutmenu;
var allDropMenuPage = new Array();
var countDropMenu = 0;

function dropdown(IdElement, MenuElement){
    this.ObjMenu = document.getElementById(MenuElement);
    this.Obj = document.getElementById(IdElement);
    this.minusWidth = 0;
         
    this.ElementPos = function(Obj, Type){
        var pos = new Array();
        if (Obj.offsetParent) {
            pos[0] = Obj.offsetTop
            pos[1] = Obj.offsetLeft
            while (Obj = Obj.offsetParent) {
                pos[0] += Obj.offsetTop
                pos[1] += Obj.offsetLeft
            }
        }
        if (Type=='left') return pos[1];
        if (Type=='top') return pos[0];
    };
    
    this.init = function(){
         allDropMenuPage[countDropMenu] = MenuElement;
         countDropMenu++;
	 var tself = this;
	 this.Obj.onmouseout = function(){timeoutmenu = setTimeout("documentClick()", 1);};
         this.Obj.onmousemove = function(){
             document.onclick = function(){}
             tself.ObjMenu.style.left = tself.ElementPos(tself.Obj, 'left')-tself.minusWidth+'px';
             tself.ObjMenu.style.top = (tself.ElementPos(tself.Obj, 'top')+tself.Obj.offsetHeight)+'px';
	     if (showMenu==true) {
	         AllHideMenu();
	         tself.ObjMenu.style.display = 'block';
	         document.onclick = function(){}
	     }
         };         
         
         this.Obj.onclick = function(){
             if (tself.ObjMenu.style.display == 'block'){
	         tself.ObjMenu.style.display = 'none';
	         showMenu = false;
	     } else {
	         tself.ObjMenu.style.display = 'block';
	         showMenu = true;
	     }
         return false;
         }; 
	 
	 this.ObjMenu.onmouseout = function(){timeoutmenu = setTimeout("documentClick()", 1);};
	 this.ObjMenu.onmousemove = function(){document.onclick = function(){}};
    };    
}

function documentClick(){
    document.onclick = function(){
        if(showMenu == true){ 
	    AllHideMenu('all');
	    showMenu = false;
            document.onclick = function(){}
        }    
    }
    clearTimeout(timeoutmenu);
}

 function AllHideMenu(doc){
    if (doc) showMenu = false;
    for (var i=0; i<allDropMenuPage.length; i++){
        document.getElementById(allDropMenuPage[i]).style.display = 'none';
    }
}

function HideMenu(Element){
    document.getElementById(Element).style.display = 'none';
}
