var Spry;Spry||(Spry={});if(!Spry.Widget)Spry.Widget={};
Spry.BrowserSniff=function(){navigator.appName.toString();navigator.platform.toString();var a=navigator.userAgent.toString();this.mozilla=this.ie=this.opera=this.safari=false;var b=/MSIE.([0-9\.]*)/i,d=/gecko/i,c=/(applewebkit|safari)\/([\d\.]*)/i,e=false;if(e=a.match(/Opera.([0-9\.]*)/i)){this.opera=true;this.version=parseFloat(e[1])}else if(e=a.match(b)){this.ie=true;this.version=parseFloat(e[1])}else if(e=a.match(c)){this.safari=true;this.version=parseFloat(e[2])}else if(a.match(d)){e=a.match(/rv:\s*([0-9\.]+)/i);
this.mozilla=true;this.version=parseFloat(e[1])}this.windows=this.mac=this.linux=false;this.Platform=a.match(/windows/i)?"windows":a.match(/linux/i)?"linux":a.match(/mac/i)?"mac":a.match(/unix/i)?"unix":"unknown";this[this.Platform]=true;this.v=this.version;if(this.safari&&this.mac&&this.mozilla)this.mozilla=false};Spry.is=new Spry.BrowserSniff;Spry.Widget.MenuBar=function(a,b){this.init(a,b)};
Spry.Widget.MenuBar.prototype.init=function(a,b){this.element=this.getElement(a);this.currMenu=null;this.showDelay=250;this.hideDelay=600;if(!(typeof document.getElementById=="undefined"||navigator.vendor=="Apple Computer, Inc."&&typeof window.XMLHttpRequest=="undefined"||Spry.is.ie&&typeof document.uniqueID=="undefined")){if(Spry.is.ie&&Spry.is.version<7)try{document.execCommand("BackgroundImageCache",false,true)}catch(d){}this.upKeyCode=Spry.Widget.MenuBar.KEY_UP;this.downKeyCode=Spry.Widget.MenuBar.KEY_DOWN;
this.leftKeyCode=Spry.Widget.MenuBar.KEY_LEFT;this.rightKeyCode=Spry.Widget.MenuBar.KEY_RIGHT;this.escKeyCode=Spry.Widget.MenuBar.KEY_ESC;this.hoverClass="MenuBarItemHover";this.subHoverClass="MenuBarItemSubmenuHover";this.subVisibleClass="MenuBarSubmenuVisible";this.hasSubClass="MenuBarItemSubmenu";this.activeClass="MenuBarActive";this.isieClass="MenuBarItemIE";this.verticalClass="MenuBarVertical";this.horizontalClass="MenuBarHorizontal";this.enableKeyboardNavigation=true;this.hasFocus=false;if(b){for(var c in b)if(typeof this[c]==
"undefined")(new Image).src=b[c];Spry.Widget.MenuBar.setOptions(this,b)}if(Spry.is.safari)this.enableKeyboardNavigation=false;if(this.element){this.currMenu=this.element;var e=this.element.getElementsByTagName("li");for(c=0;c<e.length;c++){if(c>0&&this.enableKeyboardNavigation)e[c].getElementsByTagName("a")[0].tabIndex="-1";this.initialize(e[c],a);if(Spry.is.ie){this.addClassName(e[c],this.isieClass);e[c].style.position="static"}}if(this.enableKeyboardNavigation){var f=this;this.addEventListener(document,
"keydown",function(h){f.keyDown(h)},false)}if(Spry.is.ie){if(this.hasClassName(this.element,this.verticalClass))this.element.style.position="relative";e=this.element.getElementsByTagName("a");for(c=0;c<e.length;c++)e[c].style.position="relative"}}}};Spry.Widget.MenuBar.KEY_ESC=27;Spry.Widget.MenuBar.KEY_UP=38;Spry.Widget.MenuBar.KEY_DOWN=40;Spry.Widget.MenuBar.KEY_LEFT=37;Spry.Widget.MenuBar.KEY_RIGHT=39;
Spry.Widget.MenuBar.prototype.getElement=function(a){if(a&&typeof a=="string")return document.getElementById(a);return a};Spry.Widget.MenuBar.prototype.hasClassName=function(a,b){if(!a||!b||!a.className||a.className.search(RegExp("\\b"+b+"\\b"))==-1)return false;return true};Spry.Widget.MenuBar.prototype.addClassName=function(a,b){!a||!b||this.hasClassName(a,b)||(a.className+=(a.className?" ":"")+b)};
Spry.Widget.MenuBar.prototype.removeClassName=function(a,b){if(!(!a||!b||!this.hasClassName(a,b)))a.className=a.className.replace(RegExp("\\s*\\b"+b+"\\b","g"),"")};Spry.Widget.MenuBar.prototype.addEventListener=function(a,b,d,c){try{if(a.addEventListener)a.addEventListener(b,d,c);else a.attachEvent&&a.attachEvent("on"+b,d)}catch(e){}};
Spry.Widget.MenuBar.prototype.createIframeLayer=function(a){var b=document.createElement("iframe");b.tabIndex="-1";b.src='javascript:""';b.frameBorder="0";b.scrolling="no";a.parentNode.appendChild(b);b.style.left=a.offsetLeft+"px";b.style.top=a.offsetTop+"px";b.style.width=a.offsetWidth+"px";b.style.height=a.offsetHeight+"px"};Spry.Widget.MenuBar.prototype.removeIframeLayer=function(a){for(a=(a==this.element?a:a.parentNode).getElementsByTagName("iframe");a.length>0;)a[0].parentNode.removeChild(a[0])};
Spry.Widget.MenuBar.prototype.clearMenus=function(a){a=a.getElementsByTagName("ul");for(var b=0;b<a.length;b++)this.hideSubmenu(a[b]);this.removeClassName(this.element,this.activeClass)};Spry.Widget.MenuBar.prototype.bubbledTextEvent=function(){return Spry.is.safari&&(event.target==event.relatedTarget.parentNode||event.eventPhase==3&&event.target.parentNode==event.relatedTarget)};
Spry.Widget.MenuBar.prototype.showSubmenu=function(a){if(this.currMenu){this.clearMenus(this.currMenu);this.currMenu=null}if(a){this.addClassName(a,this.subVisibleClass);if(typeof document.all!="undefined"&&!Spry.is.opera&&navigator.vendor!="KDE")if(!this.hasClassName(this.element,this.horizontalClass)||a.parentNode.parentNode!=this.element)a.style.top=a.parentNode.offsetTop+"px";Spry.is.ie&&Spry.is.version<7&&this.createIframeLayer(a)}this.addClassName(this.element,this.activeClass)};
Spry.Widget.MenuBar.prototype.hideSubmenu=function(a){if(a){this.removeClassName(a,this.subVisibleClass);if(typeof document.all!="undefined"&&!Spry.is.opera&&navigator.vendor!="KDE"){a.style.top="";a.style.left=""}Spry.is.ie&&Spry.is.version<7&&this.removeIframeLayer(a)}};
Spry.Widget.MenuBar.prototype.initialize=function(a){var b=a.getElementsByTagName("a")[0],d=a.getElementsByTagName("ul");(d.length>0?d[0]:null)&&this.addClassName(b,this.hasSubClass);if(!Spry.is.ie)a.contains=function(e){if(e==null)return false;return e==this?true:this.contains(e.parentNode)};var c=this;this.addEventListener(a,"mouseover",function(e){c.mouseOver(a,e)},false);this.addEventListener(a,"mouseout",function(e){c.enableKeyboardNavigation&&c.clearSelection();c.mouseOut(a,e)},false);if(this.enableKeyboardNavigation){this.addEventListener(b,
"blur",function(){c.onBlur(a)},false);this.addEventListener(b,"focus",function(e){c.keyFocus(a,e)},false)}};Spry.Widget.MenuBar.prototype.keyFocus=function(a){this.lastOpen=a.getElementsByTagName("a")[0];this.addClassName(this.lastOpen,a.getElementsByTagName("ul").length>0?this.subHoverClass:this.hoverClass);this.hasFocus=true};Spry.Widget.MenuBar.prototype.onBlur=function(a){this.clearSelection(a)};
Spry.Widget.MenuBar.prototype.clearSelection=function(a){if(this.lastOpen){if(a){a=a.getElementsByTagName("a")[0];for(var b=this.lastOpen;b!=this.element;){for(var d=a;d!=this.element;){if(d==b)return;try{d=d.parentNode}catch(c){break}}b=b.parentNode}}for(b=this.lastOpen;b!=this.element;){this.hideSubmenu(b.parentNode);a=b.getElementsByTagName("a")[0];this.removeClassName(a,this.hoverClass);this.removeClassName(a,this.subHoverClass);b=b.parentNode}this.lastOpen=false}};
Spry.Widget.MenuBar.prototype.keyDown=function(a){if(this.hasFocus)if(this.lastOpen){a=a||event;var b=this.lastOpen.parentNode,d=this.lastOpen,c=b.getElementsByTagName("ul"),e=c.length>0?c[0]:null;c=e?true:false;e=[b,e,null,this.getSibling(b,"previousSibling"),this.getSibling(b,"nextSibling")];e[3]||(e[2]=b.parentNode.parentNode.nodeName.toLowerCase()=="li"?b.parentNode.parentNode:null);var f=0;switch(a.keyCode){case this.upKeyCode:f=this.getElementForKey(e,"y",1);break;case this.downKeyCode:f=this.getElementForKey(e,
"y",-1);break;case this.leftKeyCode:f=this.getElementForKey(e,"x",1);break;case this.rightKeyCode:f=this.getElementForKey(e,"x",-1);break;case this.escKeyCode:case 9:this.clearSelection();this.hasFocus=false;default:return}switch(f){case 0:return;case 1:this.mouseOver(b,a);break;case 2:this.mouseOut(e[2],a);break;case 3:case 4:this.removeClassName(d,c?this.subHoverClass:this.hoverClass)}d=e[f].getElementsByTagName("a")[0];if(e[f].nodeName.toLowerCase()=="ul")e[f]=e[f].getElementsByTagName("li")[0];
this.addClassName(d,e[f].getElementsByTagName("ul").length>0?this.subHoverClass:this.hoverClass);this.lastOpen=d;e[f].getElementsByTagName("a")[0].focus();return Spry.Widget.MenuBar.stopPropagation(a)}else this.hasFocus=false};
Spry.Widget.MenuBar.prototype.mouseOver=function(a){var b=a.getElementsByTagName("a")[0],d=a.getElementsByTagName("ul"),c=d.length>0?d[0]:null;d=c?true:false;this.enableKeyboardNavigation&&this.clearSelection(a);if(!this.bubbledTextEvent()){a.closetime&&clearTimeout(a.closetime);if(this.currMenu==a)this.currMenu=null;this.hasFocus&&b.focus();this.addClassName(b,d?this.subHoverClass:this.hoverClass);this.lastOpen=b;if(c&&!this.hasClassName(c,this.subHoverClass)){var e=this;a.opentime=window.setTimeout(function(){e.showSubmenu(c)},
this.showDelay)}}};
Spry.Widget.MenuBar.prototype.mouseOut=function(a,b){var d=a.getElementsByTagName("a")[0],c=a.getElementsByTagName("ul"),e=c.length>0?c[0]:null;c=e?true:false;if(!this.bubbledTextEvent())if(!a.contains(typeof b.relatedTarget!="undefined"?b.relatedTarget:b.toElement)){a.opentime&&clearTimeout(a.opentime);this.currMenu=a;this.removeClassName(d,c?this.subHoverClass:this.hoverClass);if(e){var f=this;a.closetime=window.setTimeout(function(){f.hideSubmenu(e)},this.hideDelay)}this.hasFocus&&d.blur()}};
Spry.Widget.MenuBar.prototype.getSibling=function(a,b){for(var d=a[b];d&&d.nodeName.toLowerCase()!="li";)d=d[b];return d};
Spry.Widget.MenuBar.prototype.getElementForKey=function(a,b,d){var c=0,e=Spry.Widget.MenuBar.getPosition,f=e(a[c]),h=false;if(a[1]&&!this.hasClassName(a[1],this.MenuBarSubmenuVisible)){a[1].style.visibility="hidden";this.showSubmenu(a[1]);h=true}for(var i=this.hasClassName(this.element,this.verticalClass),k=a[0].parentNode.parentNode.nodeName.toLowerCase()=="li"?true:false,g=1;g<a.length;g++)if(!(b=="y"&&i&&(g==1||g==2)))if(!(b=="x"&&!i&&!k&&(g==1||g==2)))if(a[g]){var j=e(a[g]);if(d*j[b]<d*f[b]){f=
j;c=g}}if(a[1]&&h){this.hideSubmenu(a[1]);a[1].style.visibility=""}return c};Spry.Widget.MenuBar.camelize=function(a){if(a.indexOf("-")==-1)return a;a=a.split("-");for(var b=true,d="",c=0;c<a.length;c++)if(a[c].length>0)if(b){d=a[c];b=false}else{var e=a[c];d+=e.charAt(0).toUpperCase()+e.substring(1)}return d};
Spry.Widget.MenuBar.getStyleProp=function(a,b){var d;try{if(a.style)d=a.style[Spry.Widget.MenuBar.camelize(b)];if(!d)if(document.defaultView&&document.defaultView.getComputedStyle){var c=document.defaultView.getComputedStyle(a,null);d=c?c.getPropertyValue(b):null}else if(a.currentStyle)d=a.currentStyle[Spry.Widget.MenuBar.camelize(b)]}catch(e){}return d=="auto"?null:d};Spry.Widget.MenuBar.getIntProp=function(a,b){var d=parseInt(Spry.Widget.MenuBar.getStyleProp(a,b),10);if(isNaN(d))return 0;return d};
Spry.Widget.MenuBar.getPosition=function(a,b){b=b||document;if(typeof a=="string")a=b.getElementById(a);if(!a)return false;if(a.parentNode===null||Spry.Widget.MenuBar.getStyleProp(a,"display")=="none")return false;var d={x:0,y:0},c=null;if(a.getBoundingClientRect){c=a.getBoundingClientRect();var e=b.documentElement.scrollTop||b.body.scrollTop;d.x=c.left+(b.documentElement.scrollLeft||b.body.scrollLeft);d.y=c.top+e}else if(b.getBoxObjectFor){c=b.getBoxObjectFor(a);d.x=c.x;d.y=c.y}else{d.x=a.offsetLeft;
d.y=a.offsetTop;c=a.offsetParent;if(c!=a)for(;c;){d.x+=c.offsetLeft;d.y+=c.offsetTop;c=c.offsetParent}if(Spry.is.opera||Spry.is.safari&&Spry.Widget.MenuBar.getStyleProp(a,"position")=="absolute")d.y-=b.body.offsetTop}c=a.parentNode?a.parentNode:null;if(c.nodeName)for(e=c.nodeName.toUpperCase();c&&e!="BODY"&&e!="HTML";){e=c.nodeName.toUpperCase();d.x-=c.scrollLeft;d.y-=c.scrollTop;c=c.parentNode?c.parentNode:null}return d};
Spry.Widget.MenuBar.stopPropagation=function(a){if(a.stopPropagation)a.stopPropagation();else a.cancelBubble=true;if(a.preventDefault)a.preventDefault();else a.returnValue=false};Spry.Widget.MenuBar.setOptions=function(a,b,d){if(b)for(var c in b)d&&b[c]==undefined||(a[c]=b[c])};
