
dojo.declare('TabContainer',null,{constructor:function(props,id){this.tabs=dojo.query('.tab',props.tabContainerNode);this.tabContentContainerNode=props.tabContentContainerNode;this.contentContainers=dojo.query('.contentContainer',props.tabContentContainerNode);this.tabContentContainerNodeIds=props.tabContentContainerNodeIds||null;this.showThisTabFrist=props.showThisTabFrist||0;this.showContentOnLoad=props.showContentOnLoad||null,this.tabServiceIds=props.tabServiceIds||null;this.fadeTransitions=props.fadeTransitions||null;this.tabPairs=[];this.id=id||null;this.setUpTabPairs();},setContent:function(whichPair){for(var i=0;i<this.tabPairs.length;i++){dojo.style(this.tabPairs[i].contentContainer,'display','none');}
dojo.style(this.tabPairs[whichPair].contentContainer,{'display':'block','opacity':0});this.beforeShowContent(whichPair);if(this.tabContentContainerNodeIds)this.tabContentContainerNode.id=this.tabPairs[whichPair].contentContainerId;if(this.fadeTransitions){dojo.fadeIn({node:this.tabPairs[whichPair].contentContainer,duration:750}).play();}else{dojo.style(this.tabPairs[whichPair].contentContainer,'opacity',1);}},beforeShowContent:function(){},setUpTabPairs:function(){if(this.tabs.length!=this.contentContainers.length||this.tabs.length<1)throw new Error('Uneven distribution of tabs to contentContainers!');var howMany=this.tabs.length;if(this.tabContentContainerNodeIds&&this.tabContentContainerNodeIds.length!=howMany)throw new Error('Uneven distribution of tabContentContainerNodeIds to tabs!');for(var i=0;i<howMany;i++){this.tabPairs.push({tab:this.tabs[i],contentContainer:this.contentContainers[i],contentContainerId:(this.tabContentContainerNodeIds)?this.tabContentContainerNodeIds[i]:null});}
for(var i=0;i<this.tabPairs.length;i++){var that=this;var fn=(function(){var ii=i;return function(){that.setContent(ii)};})();dojo.connect(this.tabPairs[i].tab,'onmousedown',fn);}
if(this.showContentOnLoad)this.setContent(this.showThisTabFrist);}});if(window.TabContainers&&window.TabContainers.length){window.TabContainersStore=[]
for(var i=0;i<TabContainers.length;i++){TabContainersStore.push(new TabContainer(TabContainers[i],i));}};