var Spry;if(!Spry){Spry={};}if(!Spry.Widget){Spry.Widget={};}Spry.Widget.TabbedPanels=function(a,c){this.element=this.getElement(a);this.defaultTab=0;this.tabSelectedClass="TabbedPanelsTabSelected";this.tabHoverClass="TabbedPanelsTabHover";this.tabFocusedClass="TabbedPanelsTabFocused";this.panelVisibleClass="TabbedPanelsContentVisible";this.focusElement=null;this.hasFocus=false;this.currentTabIndex=0;this.enableKeyboardNavigation=true;this.nextPanelKeyCode=Spry.Widget.TabbedPanels.KEY_RIGHT;this.previousPanelKeyCode=Spry.Widget.TabbedPanels.KEY_LEFT;Spry.Widget.TabbedPanels.setOptions(this,c);if(typeof(this.defaultTab)=="number"){if(this.defaultTab<0){this.defaultTab=0;}else{var b=this.getTabbedPanelCount();if(this.defaultTab>=b){this.defaultTab=(b>1)?(b-1):0;}}this.defaultTab=this.getTabs()[this.defaultTab];}if(this.defaultTab){this.defaultTab=this.getElement(this.defaultTab);}this.attachBehaviors();};Spry.Widget.TabbedPanels.prototype.getElement=function(a){if(a&&typeof a=="string"){return document.getElementById(a);}return a;};Spry.Widget.TabbedPanels.prototype.getElementChildren=function(b){var a=[];var c=b.firstChild;while(c){if(c.nodeType==1){a.push(c);}c=c.nextSibling;}return a;};Spry.Widget.TabbedPanels.prototype.addClassName=function(b,a){if(!b||!a||(b.className&&b.className.search(new RegExp("\\b"+a+"\\b"))!=-1)){return;}b.className+=(b.className?" ":"")+a;};Spry.Widget.TabbedPanels.prototype.removeClassName=function(b,a){if(!b||!a||(b.className&&b.className.search(new RegExp("\\b"+a+"\\b"))==-1)){return;}b.className=b.className.replace(new RegExp("\\s*\\b"+a+"\\b","g"),"");};Spry.Widget.TabbedPanels.setOptions=function(d,c,a){if(!c){return;}for(var b in c){if(a&&c[b]===undefined){continue;}d[b]=c[b];}};Spry.Widget.TabbedPanels.prototype.getTabGroup=function(){if(this.element){var a=this.getElementChildren(this.element);if(a.length){return a[0];}}return null;};Spry.Widget.TabbedPanels.prototype.getTabs=function(){var a=[];var b=this.getTabGroup();if(b){a=this.getElementChildren(b);}return a;};Spry.Widget.TabbedPanels.prototype.getContentPanelGroup=function(){if(this.element){var a=this.getElementChildren(this.element);if(a.length>1){return a[1];}}return null;};Spry.Widget.TabbedPanels.prototype.getContentPanels=function(){var a=[];var b=this.getContentPanelGroup();if(b){a=this.getElementChildren(b);}return a;};Spry.Widget.TabbedPanels.prototype.getIndex=function(c,a){c=this.getElement(c);if(c&&a&&a.length){for(var b=0;b<a.length;b++){if(c==a[b]){return b;}}}return -1;};Spry.Widget.TabbedPanels.prototype.getTabIndex=function(b){var a=this.getIndex(b,this.getTabs());if(a<0){a=this.getIndex(b,this.getContentPanels());}return a;};Spry.Widget.TabbedPanels.prototype.getCurrentTabIndex=function(){return this.currentTabIndex;};Spry.Widget.TabbedPanels.prototype.getTabbedPanelCount=function(a){return Math.min(this.getTabs().length,this.getContentPanels().length);};Spry.Widget.TabbedPanels.addEventListener=function(c,b,d,a){try{if(c.addEventListener){c.addEventListener(b,d,a);}else{if(c.attachEvent){c.attachEvent("on"+b,d);}}}catch(f){}};Spry.Widget.TabbedPanels.prototype.cancelEvent=function(a){if(a.preventDefault){a.preventDefault();}else{a.returnValue=false;}if(a.stopPropagation){a.stopPropagation();}else{a.cancelBubble=true;}return false;};Spry.Widget.TabbedPanels.prototype.onTabClick=function(b,a){this.showPanel(a);return this.cancelEvent(b);};Spry.Widget.TabbedPanels.prototype.onTabMouseOver=function(b,a){this.addClassName(a,this.tabHoverClass);return false;};Spry.Widget.TabbedPanels.prototype.onTabMouseOut=function(b,a){this.removeClassName(a,this.tabHoverClass);return false;};Spry.Widget.TabbedPanels.prototype.onTabFocus=function(b,a){this.hasFocus=true;this.addClassName(a,this.tabFocusedClass);return false;};Spry.Widget.TabbedPanels.prototype.onTabBlur=function(b,a){this.hasFocus=false;this.removeClassName(a,this.tabFocusedClass);return false;};Spry.Widget.TabbedPanels.KEY_UP=38;Spry.Widget.TabbedPanels.KEY_DOWN=40;Spry.Widget.TabbedPanels.KEY_LEFT=37;Spry.Widget.TabbedPanels.KEY_RIGHT=39;Spry.Widget.TabbedPanels.prototype.onTabKeyDown=function(g,f){var c=g.keyCode;if(!this.hasFocus||(c!=this.previousPanelKeyCode&&c!=this.nextPanelKeyCode)){return true;}var b=this.getTabs();for(var a=0;a<b.length;a++){if(b[a]==f){var d=false;if(c==this.previousPanelKeyCode&&a>0){d=b[a-1];}else{if(c==this.nextPanelKeyCode&&a<b.length-1){d=b[a+1];}}if(d){this.showPanel(d);d.focus();break;}}}return this.cancelEvent(g);};Spry.Widget.TabbedPanels.prototype.preorderTraversal=function(a,b){var d=false;if(a){d=b(a);if(a.hasChildNodes()){var f=a.firstChild;while(!d&&f){d=this.preorderTraversal(f,b);try{f=f.nextSibling;}catch(c){f=null;}}}}return d;};Spry.Widget.TabbedPanels.prototype.addPanelEventListeners=function(d,b){var c=this;Spry.Widget.TabbedPanels.addEventListener(d,"click",function(f){return c.onTabClick(f,d);},false);Spry.Widget.TabbedPanels.addEventListener(d,"mouseover",function(f){return c.onTabMouseOver(f,d);},false);Spry.Widget.TabbedPanels.addEventListener(d,"mouseout",function(f){return c.onTabMouseOut(f,d);},false);if(this.enableKeyboardNavigation){var e=null;var a=null;this.preorderTraversal(d,function(f){if(f.nodeType==1){var g=null;if(d.attributes.getNamedItem){g=d.attributes.getNamedItem("tabindex");}else{g=d.attributes.tabindex;}if(g){e=f;return true;}if(!a&&f.nodeName.toLowerCase()=="a"){a=f;}}return false;});if(e){this.focusElement=e;}else{if(a){this.focusElement=a;}}if(this.focusElement){Spry.Widget.TabbedPanels.addEventListener(this.focusElement,"focus",function(f){return c.onTabFocus(f,d);},false);Spry.Widget.TabbedPanels.addEventListener(this.focusElement,"blur",function(f){return c.onTabBlur(f,d);},false);Spry.Widget.TabbedPanels.addEventListener(this.focusElement,"keydown",function(f){return c.onTabKeyDown(f,d);},false);}}};Spry.Widget.TabbedPanels.prototype.showPanel=function(b){var f=-1;if(typeof b=="number"){f=b;}else{f=this.getTabIndex(b);}if(!f<0||f>=this.getTabbedPanelCount()){return;}var e=this.getTabs();var c=this.getContentPanels();var a=Math.max(e.length,c.length);if(a>0){for(var d=0;d<a;d++){if(d!=f){if(e[d]){this.removeClassName(e[d],this.tabSelectedClass);}if(c[d]){this.removeClassName(c[d],this.panelVisibleClass);c[d].style.display="none";}}}this.addClassName(e[f],this.tabSelectedClass);this.addClassName(c[f],this.panelVisibleClass);c[f].style.display="block";this.currentTabIndex=f;}};Spry.Widget.TabbedPanels.prototype.attachBehaviors=function(d){var c=this.getTabs();var a=this.getContentPanels();var e=this.getTabbedPanelCount();for(var b=0;b<e;b++){this.addPanelEventListeners(c[b],a[b]);}this.showPanel(this.defaultTab);};
