var navigation=null;
function Navigation(A){if(!A){return 
}navigation=this;
navigation.container=A;
navigation.activeSubNav=null;
this.init()
}Navigation.prototype={ZINDEX_ACTIVE:103,ZINDEX_PASSIVE:102,OPEN_CLASS:"open",OPEN_DELAY:250,CLOSE_DELAY:"fast",container:null,activeSubNav:null,init:function(){$("ol>li ul:has(li)",this.container).each(function(){navigation.fixDropDownWidth($(this))
});
$("ol>li:not(:has(ul)) a",this.container).addClass("empty");
$("ol>li",this.container).hover(function(){$ul=$("ul",this);
if($ul.size()==0||$ul.queue("fx").length>1){return 
}if(navigation.activeSubNav!=null&&navigation.activeSubNav!=this){$(navigation.activeSubNav).css("z-index",navigation.ZINDEX_PASSIVE);
$(navigation.activeSubNav).stop(true,true)
}navigation.activeSubNav=this;
$(this).addClass(navigation.OPEN_CLASS);
$(this).css({position:"relative","z-index":navigation.ZINDEX_ACTIVE});
$ul.slideDown(navigation.OPEN_DELAY)
},function(){$(this).removeClass(navigation.OPEN_CLASS);
$("ul",this).slideUp(navigation.CLOSE_DELAY)
})
},fixDropDownWidth:function(A){if(!A.is(".fixed")){A.css({display:"block","font-weight":"bold"});
ulWidth=A.find("li:first").width();
navWidth=A.parent("li").width()+15;
if(navWidth>ulWidth){ulWidth=navWidth
}A.css({"font-weight":"normal",width:ulWidth,display:"none"});
A.addClass("fixed")
}}};
var loginForm;
function LoginMenu(C){if(!C){return 
}this.container=C;
loginForm=C.getElementsByTagName("form")[0];
ClassName.add(this.container,"hide-login");
EventListener.addEvent(C,"mouseover",this.scope(this.handleOpen));
EventListener.addEvent(document,"mouseover",this.scope(this.handleClose));
EventListener.addEvent(document,"click",this.scope(this.handleClose));
var A=loginForm;
for(var B=0;
B<A.length;
B++){if(A[B].type=="text"||A[B].type=="password"){if(/Gecko/.test(navigator.userAgent)){EventListener.addEvent(A[B],"focus",this.scope(this.handleClose))
}if(/MSIE/.test(navigator.userAgent)){EventListener.addEvent(A[B],"keyup",this.scope(this.attemptSubmit))
}}}}LoginMenu.prototype={OPEN_DELAY:500,CLOSE_DELAY:1000,handleOpen:function(B){var A=this.scope(function(){this.openMenu()
});
if(!this.openState){if(B.type=="click"&&EventListener.getTarget(B)==this.container.getElementsByTagName("A")[0]){clearTimeout(this.pendingOpen);
this.openMenu();
EventListener.cancelEvent(B)
}else{clearTimeout(this.pendingOpen);
this.pendingOpen=setTimeout(A,this.OPEN_DELAY)
}}},handleClose:function(B){if((!this.openState&&!this.pendingOpen)||(B.type=="mouseover"&&this.hasFocus)){return 
}var A=EventListener.getTarget(B);
while(A){if(A==this.container){switch(B.type){case"mouseover":if(this.pendingClose){clearTimeout(this.pendingClose);
this.pendingClose=null
}break;
case"click":this.hasFocus=true;
if(!this.openState){clearTimeout(this.pendingOpen);
this.openMenu();
EventListener.cancelEvent(B)
}break;
case"focus":this.hasFocus=true;
break
}return 
}A=A.parentNode
}clearTimeout(this.pendingOpen);
if(!this.pendingClose){var C=this.scope(function(){this.closeMenu()
});
this.pendingClose=setTimeout(C,this.CLOSE_DELAY)
}},attemptSubmit:function(B){if(B&&B.keyCode){if(B.keyCode==13){try{loginForm.submit()
}catch(A){$(loginForm).find("input[type=submit]").click()
}}}},openMenu:function(){ClassName.add(this.container,"show-login");
this.openState=true
},closeMenu:function(){ClassName.remove(this.container,"show-login");
this.openState=null;
this.pendingClose=null;
this.hasFocus=null
},scope:function(B){var A=this;
return function(){B.apply(A,arguments)
}
}};
var NavClientgroup={init:function(A){NavClientgroup.node=document.getElementById(A);
if(!NavClientgroup.node){return 
}EventListener.addEvent(NavClientgroup.node,"click",function(B){NavClientgroup.clickHandler(B)
})
},clickHandler:function(B){var A=EventListener.getTarget(B);
while(!A.nodeName||A.nodeType==3){A=A.parentNode
}if(/^a$/i.test(A.nodeName)&&A.parentNode.parentNode==NavClientgroup.node){NavClientgroup.setSelected(A.parentNode);
return EventListener.preventDefault(B)
}},setSelected:function(B){if(ClassName.contains(B,"selected")){return 
}for(var A=0;
A<NavClientgroup.node.childNodes.length;
A++){ClassName.remove(NavClientgroup.node.childNodes[A],"selected")
}ClassName.add(B,"selected")
}};
EventListener.addEvent(window,"load",function(){if(/MSIE 5/.test(navigator.userAgent)){return 
}new Navigation(document.getElementById("subnavigation"));
new LoginMenu(document.getElementById("form-login"));
NavClientgroup.init("nav-clientgroup")
});