﻿//----------------------------------------------------------
// TopNavBar
//----------------------------------------------------------
var menuID;
var current;
var selectedRootItem;

function InitNavigationMenu(){
    var nav=$('topNavBar');
    var items=getElementsByClassName('parent', nav, 'li');

    for(var i=0;i<items.length;i++){
        var li=items[i];

        if(li.firstChild.className=='selected'){
            selectedRootItem=li;
            var panel=$(li.id+'_panel');
            var pos=getElementPosition('topNavBar');
            panel.isSelected=true;
            panel.style.visibility='visible';
            panel.style.zIndex='9000';
            panel.style.left=(pos.x+40)+'px';
            panel.style.top=(pos.y+25)+'px';
            fixPanelGroups(panel);

            if(li.className!=null){
                li.cssClass=this.className;
            }
            
			var spacer=document.createElement('div');
            spacer.style.width='20px';
            spacer.style.height=(getElementHeight(panel)+ 20)+'px';
            spacer.style.clear='both';

            var tmp=$('contentWrapper');
            tmp.insertBefore(spacer,tmp.firstChild);

            li.className ='parent hover';
            fixPanelGroups();
        }

        li.onmouseover=function(){
            window.clearTimeout(menuID);
            clearMenus();

            var panel=$(this.id+'_panel');
            var pos=getElementPosition('topNavBar');
            panel.style.visibility='visible';
            panel.style.left=(pos.x+40)+'px';
            panel.style.top=(pos.y+25)+'px';
            
            if(this.className!=null){
                this.cssClass=this.className;
            }

		    var nav=$('topNavBar');
		    var items=getElementsByClassName('parent', nav, 'li');

		    for(var i=0;i<items.length;i++){
				items[i].className=items[i].className.replace(/hover/, 'hover2')
			}

	
            this.className='hover';
            current=this;
        };
        li.onmouseout=function(){menuID=window.setTimeout('clearMenus()', 350);};
        if(li.firstChild.className!='selected'){
        var panel=$(li.id+'_panel');
        panel.onmouseover=function(){window.clearTimeout(menuID);};
        panel.onmouseout=function(){menuID=window.setTimeout('clearMenus()', 350);};
        }
    }
}
function clearMenus(){
    var nav=$('topNavBarPanels');
    var panels=getElementsByClassName('panel', nav, 'div');
    for(var i=0;i<panels.length;i++){
        if(panels[i].isSelected!=true){
            panels[i].style.visibility='hidden';
        }
    }
    
    if(current){
        if(current.cssClass!=null)
            current.className=current.cssClass;
    }
	var nav=$('topNavBar');
	var items=getElementsByClassName('parent', nav, 'li');

	for(var i=0;i<items.length;i++){
		items[i].className=items[i].className.replace(/hover2/, 'hover')
	}
	
}
function fixPanelGroups(){
    var maxHeight=0;
	var topNavBarPanels=$('topNavBarPanels');
	var navPanels=getElementsByClassName('panel',topNavBarPanels,'div');
	for(var i=0;i<navPanels.length;i++){
		var groups=getElementsByClassName('group', navPanels[i], 'div');
		for(var j=0;j<groups.length;j++){
	        var h=getElementHeight(groups[j]);
	        if(h >= maxHeight){
	            maxHeight=h;
	        }
		}
	}

	for(var i=0;i<navPanels.length;i++){
		var groups=getElementsByClassName('group', navPanels[i], 'div');
		for(var j=0;j<groups.length;j++){
			groups[j].style.height=maxHeight+'px';
		}
	}
}
function DisposeNavigationMenu(){
}

//----------------------------------------------------------
// SearchBox
//----------------------------------------------------------
function InitSearchBox(){
	PositionSearchBox();
	$addHandler($('searchButton'), 'click', SearchButton_OnClick);
	$addHandler(window, 'resize', PositionSearchBox);
}
function SearchButton_OnClick(e){
    var frm=$('topSearchForm');
    if(frm.SearchScope[0].checked){
	    frm.action='/search.aspx';
    }else{
	    frm.action='/store/search.aspx';
    }
    frm.submit();
}
function PositionSearchBox(){
    var box=$('searchBoxDiv');
    var pos=getElementPosition('topNavBar');
    var w=getElementWidth('topNavBar');

    box.style.top=(pos.y-48)+'px';
    box.style.left=(pos.x+w-35)+'px';
}
function DisposeSearchBox(){
    $removeHandler(window, 'resize', PositionSearchBox);
    $removeHandler($('searchButton'), 'click', SearchButton_OnClick);
}