/* ================================================================ 
This copyright notice must be kept untouched in the stylesheet at 
all times.

The original version of this script and the associated (x)html
is available at http://www.stunicholls.com/menu/pro_drop_1.html
Copyright (c) 2005-2007 Stu Nicholls. All rights reserved.
This script and the associated (x)html may be modified in any 
way to fit your requirements.
=================================================================== */
function ieHover(){

	if($$('.dj-main')){		
		$$('.dj-main').each(function(e){
			var li_s = e.getElements('li');
			li_s.each(function(element){
				element.addEvent('mouseenter', function(){					
					element.addClass('hover');
				});
				element.addEvent('mouseleave', function(){
					element.removeClass('hover');
				});
			});
		});
	}
	/*var cssRule;
	var newSelector;
	for (var i = 0; i < document.styleSheets.length; i++)
		for (var x = 0; x < document.styleSheets[i].rules.length ; x++)
			{
			cssRule = document.styleSheets[i].rules[x];
			if (cssRule.selectorText.indexOf("LI:hover") != -1)
			{
				 newSelector = cssRule.selectorText.replace(/LI:hover/gi, "LI.iehover");
				document.styleSheets[i].addRule(newSelector , cssRule.style.cssText);
			}
		}
	var getElm = document.getElementById("dj-main").getElementsByTagName("LI");
	for (var i=0; i<getElm.length; i++) {
		getElm[i].onmouseover=function() {
			this.className+=" iehover";
		}
		getElm[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" iehover\\b"), "");
		}
	}*/
}

// its work only with first menu level 
function makeMenuCollapsible(){
    if($$('.dj-main li.djm_childs_lev_1')){
        $$('.dj-main li.djm_childs_lev_1').each(function(e){
            if (!e.hasClass("active")){
                djCollapseMenuLevel(e);                
                if (djTypeEvent == "mouseenter"){// add event handler .dj-main .djm_childs_lev_1
                    e.addEvents({
                        mouseenter: function(){djExpandMenuLevel(e);}, 
                        mouseleave : function(){djCollapseMenuLevel(e);}                        
                    });
                }
                if (djTypeEvent == "click"){// add event handler onclick .dj-main .djm_childs_lev_1 span
                    e.getChildren().each(function(child){
                        if (child.tagName == "SPAN"){
                            child.addEvent("click", function(){toggleCollapsed(child);});
                        }
                    });
                }
            }
        }); 
    }   
}

function toggleCollapsed(spanItem){
    var menu = spanItem.getParent();
    if (spanItem.hasClass("collapsed")){
        djExpandMenuLevel(menu);
    }else {
        djCollapseMenuLevel(menu);
    }
}
/*
function djMouseEnterEventHandler(event){
    var target = event.relatedTarget;
    djExpandMenuLevel(target);
}

function djMouseLeaveEventHandler(event){
    var target = event.relatedTarget;
    djCollapseMenuLevel(target);
}
*/
function djCollapseMenuLevel(menu){
    if (menu.getChildren()){
        menu.getChildren().each(function(e){
            if (e.tagName == "SPAN"){
                e.addClass("collapsed");
                e.removeClass("expanded");
            }
            if (e.tagName == "UL"){
                e.addClass("hidden");
            }
        });
    }
}

function djExpandMenuLevel(menu){
    if (menu.getChildren()){
        menu.getChildren().each(function(e){
            if (e.tagName == "SPAN"){
                e.addClass("expanded");
                e.removeClass("collapsed");
            }
            if (e.tagName == "UL"){
                e.removeClass("hidden");
            }
        });
    }
}

window.addEvent('domready',function(){
	ieHover();
	makeMenuCollapsible();
});

//djm_childs_lev_1


