var Spry;
if(!Spry){
Spry={};
}
if(!Spry.Widget){
Spry.Widget={};
}
Spry.Widget.Accordion=function(_1,_2){
this.element=this.getElement(_1);
this.defaultPanel=0;
this.hoverClass="AccordionPanelTabHover";
this.openClass="AccordionPanelOpen";
this.closedClass="AccordionPanelClosed";
this.focusedClass="AccordionFocused";
this.enableAnimation=true;
this.enableKeyboardNavigation=true;
this.currentPanel=null;
this.animator=null;
this.hasFocus=null;
this.previousPanelKeyCode=Spry.Widget.Accordion.KEY_UP;
this.nextPanelKeyCode=Spry.Widget.Accordion.KEY_DOWN;
this.useFixedPanelHeights=true;
this.fixedPanelHeight=0;
Spry.Widget.Accordion.setOptions(this,_2,true);
this.attachBehaviors();
};
Spry.Widget.Accordion.prototype.getElement=function(_3){
if(_3&&typeof _3=="string"){
return document.getElementById(_3);
}
return _3;
};
Spry.Widget.Accordion.prototype.addClassName=function(_4,_5){
if(!_4||!_5||(_4.className&&_4.className.search(new RegExp("\\b"+_5+"\\b"))!=-1)){
return;
}
_4.className+=(_4.className?" ":"")+_5;
};
Spry.Widget.Accordion.prototype.removeClassName=function(_6,_7){
if(!_6||!_7||(_6.className&&_6.className.search(new RegExp("\\b"+_7+"\\b"))==-1)){
return;
}
_6.className=_6.className.replace(new RegExp("\\s*\\b"+_7+"\\b","g"),"");
};
Spry.Widget.Accordion.setOptions=function(_8,_9,_a){
if(!_9){
return;
}
for(var _b in _9){
if(_a&&_9[_b]==undefined){
continue;
}
_8[_b]=_9[_b];
}
};
Spry.Widget.Accordion.prototype.onPanelTabMouseOver=function(e,_d){
if(_d){
this.addClassName(this.getPanelTab(_d),this.hoverClass);
}
return false;
};
Spry.Widget.Accordion.prototype.onPanelTabMouseOut=function(e,_f){
if(_f){
this.removeClassName(this.getPanelTab(_f),this.hoverClass);
}
return false;
};
Spry.Widget.Accordion.prototype.openPanel=function(_10){
var _11=this.currentPanel;
var _12;
if(typeof _10=="number"){
_12=this.getPanels()[_10];
}else{
_12=this.getElement(_10);
}
if(!_12||_11==_12){
return null;
}
var _13=_11?this.getPanelContent(_11):null;
var _14=this.getPanelContent(_12);
if(!_14){
return null;
}
if(this.useFixedPanelHeights&&!this.fixedPanelHeight){
this.fixedPanelHeight=(_13.offsetHeight)?_13.offsetHeight:_13.scrollHeight;
}
if(this.enableAnimation){
if(this.animator){
this.animator.stop();
}
this.animator=new Spry.Widget.Accordion.PanelAnimator(this,_12,{duration:this.duration,fps:this.fps,transition:this.transition});
this.animator.start();
}else{
if(_13){
_13.style.display="none";
_13.style.height="0px";
}
_14.style.display="block";
_14.style.height=(this.useFixedPanelHeights?this.fixedPanelHeight:_14.scrollHeight)+"px";
}
if(_11){
this.removeClassName(_11,this.openClass);
this.addClassName(_11,this.closedClass);
}
this.removeClassName(_12,this.closedClass);
this.addClassName(_12,this.openClass);
this.currentPanel=_12;
return _12;
};
Spry.Widget.Accordion.prototype.closePanel=function(){
if(!this.useFixedPanelHeights&&this.currentPanel){
var _15=this.currentPanel;
var _16=this.getPanelContent(_15);
if(_16){
if(this.enableAnimation){
if(this.animator){
this.animator.stop();
}
this.animator=new Spry.Widget.Accordion.PanelAnimator(this,null,{duration:this.duration,fps:this.fps,transition:this.transition});
this.animator.start();
}else{
_16.style.display="none";
_16.style.height="0px";
}
}
this.removeClassName(_15,this.openClass);
this.addClassName(_15,this.closedClass);
this.currentPanel=null;
}
};
Spry.Widget.Accordion.prototype.openNextPanel=function(){
return this.openPanel(this.getCurrentPanelIndex()+1);
};
Spry.Widget.Accordion.prototype.openPreviousPanel=function(){
return this.openPanel(this.getCurrentPanelIndex()-1);
};
Spry.Widget.Accordion.prototype.openFirstPanel=function(){
return this.openPanel(0);
};
Spry.Widget.Accordion.prototype.openLastPanel=function(){
var _17=this.getPanels();
return this.openPanel(_17[_17.length-1]);
};
Spry.Widget.Accordion.prototype.onPanelTabClick=function(e,_19){
if(_19!=this.currentPanel){
this.openPanel(_19);
}
if(this.enableKeyboardNavigation){
this.focus();
}
if(e.preventDefault){
e.preventDefault();
}else{
e.returnResult=false;
}
if(e.stopPropagation){
e.stopPropagation();
}else{
e.cancelBubble=true;
}
return false;
};
Spry.Widget.Accordion.prototype.onFocus=function(e){
this.hasFocus=true;
this.addClassName(this.element,this.focusedClass);
return false;
};
Spry.Widget.Accordion.prototype.onBlur=function(e){
this.hasFocus=false;
this.removeClassName(this.element,this.focusedClass);
return false;
};
Spry.Widget.Accordion.KEY_UP=38;
Spry.Widget.Accordion.KEY_DOWN=40;
Spry.Widget.Accordion.prototype.onKeyDown=function(e){
var key=e.keyCode;
if(!this.hasFocus||(key!=this.previousPanelKeyCode&&key!=this.nextPanelKeyCode)){
return true;
}
var _1e=this.getPanels();
if(!_1e||_1e.length<1){
return false;
}
var _1f=this.currentPanel?this.currentPanel:_1e[0];
var _20=(key==this.nextPanelKeyCode)?_1f.nextSibling:_1f.previousSibling;
while(_20){
if(_20.nodeType==1){
break;
}
_20=(key==this.nextPanelKeyCode)?_20.nextSibling:_20.previousSibling;
}
if(_20&&_1f!=_20){
this.openPanel(_20);
}
if(e.preventDefault){
e.preventDefault();
}else{
e.returnResult=false;
}
if(e.stopPropagation){
e.stopPropagation();
}else{
e.cancelBubble=true;
}
return false;
};
Spry.Widget.Accordion.prototype.attachPanelHandlers=function(_21){
if(!_21){
return;
}
var tab=this.getPanelTab(_21);
if(tab){
var _23=this;
Spry.Widget.Accordion.addEventListener(tab,"click",function(e){
return _23.onPanelTabClick(e,_21);
},false);
Spry.Widget.Accordion.addEventListener(tab,"mouseover",function(e){
return _23.onPanelTabMouseOver(e,_21);
},false);
Spry.Widget.Accordion.addEventListener(tab,"mouseout",function(e){
return _23.onPanelTabMouseOut(e,_21);
},false);
}
};
Spry.Widget.Accordion.addEventListener=function(_27,_28,_29,_2a){
try{
if(_27.addEventListener){
_27.addEventListener(_28,_29,_2a);
}else{
if(_27.attachEvent){
_27.attachEvent("on"+_28,_29);
}
}
}
catch(e){
}
};
Spry.Widget.Accordion.prototype.initPanel=function(_2b,_2c){
var _2d=this.getPanelContent(_2b);
if(_2c){
this.currentPanel=_2b;
this.removeClassName(_2b,this.closedClass);
this.addClassName(_2b,this.openClass);
if(_2d){
if(this.useFixedPanelHeights){
if(this.fixedPanelHeight){
_2d.style.height=this.fixedPanelHeight+"px";
}
}else{
_2d.style.height="auto";
}
}
}else{
this.removeClassName(_2b,this.openClass);
this.addClassName(_2b,this.closedClass);
if(_2d){
_2d.style.height="0px";
_2d.style.display="none";
}
}
this.attachPanelHandlers(_2b);
};
Spry.Widget.Accordion.prototype.attachBehaviors=function(){
var _2e=this.getPanels();
for(var i=0;i<_2e.length;i++){
this.initPanel(_2e[i],i==this.defaultPanel);
}
this.enableKeyboardNavigation=(this.enableKeyboardNavigation&&this.element.attributes.getNamedItem("tabindex"));
if(this.enableKeyboardNavigation){
var _30=this;
Spry.Widget.Accordion.addEventListener(this.element,"focus",function(e){
return _30.onFocus(e);
},false);
Spry.Widget.Accordion.addEventListener(this.element,"blur",function(e){
return _30.onBlur(e);
},false);
Spry.Widget.Accordion.addEventListener(this.element,"keydown",function(e){
return _30.onKeyDown(e);
},false);
}
};
Spry.Widget.Accordion.prototype.getPanels=function(){
return this.getElementChildren(this.element);
};
Spry.Widget.Accordion.prototype.getCurrentPanel=function(){
return this.currentPanel;
};
Spry.Widget.Accordion.prototype.getPanelIndex=function(_34){
var _35=this.getPanels();
for(var i=0;i<_35.length;i++){
if(_34==_35[i]){
return i;
}
}
return -1;
};
Spry.Widget.Accordion.prototype.getCurrentPanelIndex=function(){
return this.getPanelIndex(this.currentPanel);
};
Spry.Widget.Accordion.prototype.getPanelTab=function(_37){
if(!_37){
return null;
}
return this.getElementChildren(_37)[0];
};
Spry.Widget.Accordion.prototype.getPanelContent=function(_38){
if(!_38){
return null;
}
return this.getElementChildren(_38)[1];
};
Spry.Widget.Accordion.prototype.getElementChildren=function(_39){
var _3a=[];
var _3b=_39.firstChild;
while(_3b){
if(_3b.nodeType==1){
_3a.push(_3b);
}
_3b=_3b.nextSibling;
}
return _3a;
};
Spry.Widget.Accordion.prototype.focus=function(){
if(this.element&&this.element.focus){
this.element.focus();
}
};
Spry.Widget.Accordion.prototype.blur=function(){
if(this.element&&this.element.blur){
this.element.blur();
}
};
Spry.Widget.Accordion.PanelAnimator=function(_3c,_3d,_3e){
this.timer=null;
this.interval=0;
this.fps=60;
this.duration=500;
this.startTime=0;
this.transition=Spry.Widget.Accordion.PanelAnimator.defaultTransition;
this.onComplete=null;
this.panel=_3d;
this.panelToOpen=_3c.getElement(_3d);
this.panelData=[];
Spry.Widget.Accordion.setOptions(this,_3e,true);
this.interval=Math.floor(1000/this.fps);
var _3f=_3c.getPanels();
for(var i=0;i<_3f.length;i++){
var p=_3f[i];
var c=_3c.getPanelContent(p);
if(c){
var h=c.offsetHeight;
if(h==undefined){
h=0;
}
if(p==_3d&&h==0){
c.style.display="block";
}
if(p==_3d||h>0){
var obj=new Object;
obj.panel=p;
obj.content=c;
obj.fromHeight=h;
obj.toHeight=(p==_3d)?(_3c.useFixedPanelHeights?_3c.fixedPanelHeight:c.scrollHeight):0;
obj.distance=obj.toHeight-obj.fromHeight;
obj.overflow=c.style.overflow;
this.panelData.push(obj);
c.style.overflow="hidden";
c.style.height=h+"px";
}
}
}
};
Spry.Widget.Accordion.PanelAnimator.defaultTransition=function(_45,_46,_47,_48){
_45/=_48;
return _46+((2-_45)*_45*_47);
};
Spry.Widget.Accordion.PanelAnimator.prototype.start=function(){
var _49=this;
this.startTime=(new Date).getTime();
this.timer=setTimeout(function(){
_49.stepAnimation();
},this.interval);
};
Spry.Widget.Accordion.PanelAnimator.prototype.stop=function(){
if(this.timer){
clearTimeout(this.timer);
for(i=0;i<this.panelData.length;i++){
obj=this.panelData[i];
obj.content.style.overflow=obj.overflow;
}
}
this.timer=null;
};
Spry.Widget.Accordion.PanelAnimator.prototype.stepAnimation=function(){
var _4a=(new Date).getTime();
var _4b=_4a-this.startTime;
var i,obj;
if(_4b>=this.duration){
for(i=0;i<this.panelData.length;i++){
obj=this.panelData[i];
if(obj.panel!=this.panel){
obj.content.style.display="none";
obj.content.style.height="0px";
}
obj.content.style.overflow=obj.overflow;
obj.content.style.height=obj.toHeight+"px";
}
if(this.onComplete){
this.onComplete();
}
return;
}
for(i=0;i<this.panelData.length;i++){
obj=this.panelData[i];
var ht=this.transition(_4b,obj.fromHeight,obj.distance,this.duration);
obj.content.style.height=((ht<0)?0:ht)+"px";
}
var _4e=this;
this.timer=setTimeout(function(){
_4e.stepAnimation();
},this.interval);
};

var Spry;
if(!Spry){
Spry={};
}
if(!Spry.Widget){
Spry.Widget={};
}
Spry.Widget.MenuBar=function(_1,_2){
this.init(_1,_2);
};
Spry.Widget.MenuBar.prototype.init=function(_3,_4){
this.element=this.getElement(_3);
this.currMenu=null;
var _5=(typeof document.all!="undefined"&&typeof window.opera=="undefined"&&navigator.vendor!="KDE");
if(typeof document.getElementById=="undefined"||(navigator.vendor=="Apple Computer, Inc."&&typeof window.XMLHttpRequest=="undefined")||(_5&&typeof document.uniqueID=="undefined")){
return;
}
if(_4){
for(var k in _4){
var _7=new Image;
_7.src=_4[k];
}
}
if(this.element){
this.currMenu=this.element;
var _8=this.element.getElementsByTagName("li");
for(var i=0;i<_8.length;i++){
this.initialize(_8[i],_3,_5);
if(_5){
this.addClassName(_8[i],"MenuBarItemIE");
_8[i].style.position="static";
}
}
if(_5){
if(this.hasClassName(this.element,"MenuBarVertical")){
this.element.style.position="relative";
}
var _a=this.element.getElementsByTagName("a");
for(var i=0;i<_a.length;i++){
_a[i].style.position="relative";
}
}
}
};
Spry.Widget.MenuBar.prototype.getElement=function(_c){
if(_c&&typeof _c=="string"){
return document.getElementById(_c);
}
return _c;
};
Spry.Widget.MenuBar.prototype.hasClassName=function(_d,_e){
if(!_d||!_e||!_d.className||_d.className.search(new RegExp("\\b"+_e+"\\b"))==-1){
return false;
}
return true;
};
Spry.Widget.MenuBar.prototype.addClassName=function(_f,_10){
if(!_f||!_10||this.hasClassName(_f,_10)){
return;
}
_f.className+=(_f.className?" ":"")+_10;
};
Spry.Widget.MenuBar.prototype.removeClassName=function(ele,_12){
if(!ele||!_12||!this.hasClassName(ele,_12)){
return;
}
ele.className=ele.className.replace(new RegExp("\\s*\\b"+_12+"\\b","g"),"");
};
Spry.Widget.MenuBar.prototype.addEventListener=function(_13,_14,_15,_16){
try{
if(_13.addEventListener){
_13.addEventListener(_14,_15,_16);
}else{
if(_13.attachEvent){
_13.attachEvent("on"+_14,_15);
}
}
}
catch(e){
}
};
Spry.Widget.MenuBar.prototype.createIframeLayer=function(_17){
var _18=document.createElement("iframe");
_18.tabIndex="-1";
_18.src="javascript:false;";
_17.parentNode.appendChild(_18);
_18.style.left=_17.offsetLeft+"px";
_18.style.top=_17.offsetTop+"px";
_18.style.width=_17.offsetWidth+"px";
_18.style.height=_17.offsetHeight+"px";
};
Spry.Widget.MenuBar.prototype.removeIframeLayer=function(_19){
var _1a=_19.parentNode.getElementsByTagName("iframe");
while(_1a.length>0){
_1a[0].parentNode.removeChild(_1a[0]);
}
};
Spry.Widget.MenuBar.prototype.clearMenus=function(_1b){
var _1c=_1b.getElementsByTagName("ul");
for(var i=0;i<_1c.length;i++){
this.hideSubmenu(_1c[i]);
}
this.removeClassName(this.element,"MenuBarActive");
};
Spry.Widget.MenuBar.prototype.bubbledTextEvent=function(){
return (navigator.vendor=="Apple Computer, Inc."&&(event.target==event.relatedTarget.parentNode||(event.eventPhase==3&&event.target.parentNode==event.relatedTarget)));
};
Spry.Widget.MenuBar.prototype.showSubmenu=function(_1e){
if(this.currMenu){
this.clearMenus(this.currMenu);
this.currMenu=null;
}
if(_1e){
this.addClassName(_1e,"MenuBarSubmenuVisible");
if(typeof document.all!="undefined"&&typeof window.opera=="undefined"&&navigator.vendor!="KDE"){
if(!this.hasClassName(this.element,"MenuBarHorizontal")||_1e.parentNode.parentNode!=this.element){
_1e.style.top=_1e.parentNode.offsetTop+"px";
}
}
if(typeof document.uniqueID!="undefined"){
this.createIframeLayer(_1e);
}
}
this.addClassName(this.element,"MenuBarActive");
};
Spry.Widget.MenuBar.prototype.hideSubmenu=function(_1f){
if(_1f){
this.removeClassName(_1f,"MenuBarSubmenuVisible");
if(typeof document.all!="undefined"&&typeof window.opera=="undefined"&&navigator.vendor!="KDE"){
_1f.style.top="";
_1f.style.left="";
}
this.removeIframeLayer(_1f);
}
};
Spry.Widget.MenuBar.prototype.initialize=function(_20,_21,_22){
var _23,closetime;
var _24=_20.getElementsByTagName("a")[0];
var _25=_20.getElementsByTagName("ul");
var _26=(_25.length>0?_25[0]:null);
var _27=false;
if(_26){
this.addClassName(_24,"MenuBarItemSubmenu");
_27=true;
}
if(!_22){
_20.contains=function(_28){
if(_28==null){
return false;
}
if(_28==this){
return true;
}else{
return this.contains(_28.parentNode);
}
};
}
var _29=this;
this.addEventListener(_20,"mouseover",function(e){
if(_29.bubbledTextEvent()){
return;
}
clearTimeout(closetime);
if(_29.currMenu==_20){
_29.currMenu=null;
}
_29.addClassName(_24,_27?"MenuBarItemSubmenuHover":"MenuBarItemHover");
if(_26&&!_29.hasClassName(_26,"MenuBarSubmenuVisible")){
_23=window.setTimeout(function(){
_29.showSubmenu(_26);
},250);
}
},false);
this.addEventListener(_20,"mouseout",function(e){
if(_29.bubbledTextEvent()){
return;
}
var _2c=(typeof e.relatedTarget!="undefined"?e.relatedTarget:e.toElement);
if(!_20.contains(_2c)){
clearTimeout(_23);
_29.currMenu=_20;
_29.removeClassName(_24,_27?"MenuBarItemSubmenuHover":"MenuBarItemHover");
if(_26){
closetime=window.setTimeout(function(){
_29.hideSubmenu(_26);
},600);
}
}
},false);
};

