
var SimpleTabs=new Class({options:{show:0,delay:0,entrySelector:'.rgtabs-entry',classWrapper:'rgtabs-wrapper',classMenu:'rgtabs-menu',classContainer:'rgtabs-container',onShow:function(toggle,container,index){toggle.addClass('rgtabs-selected');var list=$$('.rgtabs-selected a');list.each(function(element){element.addClass('sel');});container.setStyle('display','');},onHide:function(toggle,container,index){var list=$$('.rgtabs-selected a');list.each(function(element){element.removeClass('sel');});toggle.removeClass('rgtabs-selected');container.setStyle('display','none');},onRequest:function(toggle,container,index){container.addClass('rgtabs-ajax-loading');},onComplete:function(toggle,container,index){container.removeClass('rgtabs-ajax-loading');},onFailure:function(toggle,container,index){container.removeClass('rgtabs-ajax-loading');},getContent:null},initialize:function(el,options){this.setOptions(options);this.element=$(el);this.current=0;this.selected=null;this.build();this.loadActive();this.prepareTimer(this.options.show+1);},build:function(){this.entries=[];var count=0;var count2=0;this.menu=new Element('ul',{'class':this.options.classMenu});this.wrapper=new Element('div',{'class':this.options.classWrapper});this.element.getElements(this.options.entrySelector).each(function(el){count++});this.count=count;this.element.getElements(this.options.entrySelector).each(function(el){if(count2==0){classname="tabfirst";}else if(count2+1==count){classname="tablast";}else{classname="tabmiddle";}
count2++;var content=el.href||(this.options.getContent?this.options.getContent.call(this,el):el.getNext());this.addTab(el.innerHTML,el.title||el.innerHTML,content,classname);},this);this.element.empty().adopt(this.menu).adopt(this.wrapper);if(this.entries.length){this.select(this.options.show);this.current=this.options.show;}},addTab:function(text,title,content,classname){if($type(content)=='string'&&!$(content))var url=content;var container=$(content)||new Element('div');this.entries.push({container:container.setStyle('display','none').addClass(this.options.classContainer).inject(this.wrapper),toggle:new Element('li').addClass(classname).adopt(new Element('a',{href:'javascript:void(0)',title:title,events:{click:this.onClick.bindWithEvent(this,[this.entries.length])}}).setHTML(text)).inject(this.menu),url:url||null});return this;},onClick:function(evt,index){evt.stop();this.select(index);},select:function(index){if(this.selected===index||!this.entries[index])return this;var entry=this.entries[index];var params=[entry.toggle,entry.container,index];if(this.selected!==null){var current=this.entries[this.selected];if(this.ajax&&this.ajax.running)this.ajax.cancel();params.concat([current.toggle,current.container,this.selected]);this.fireEvent('onHide',[current.toggle,current.container,this.selected]);}
this.fireEvent('onShow',params);if(entry.url&&!entry.loaded){this.ajax=new Ajax(entry.url,$merge({onRequest:this.fireEvent.pass(['onRequest',params],this),onFailure:this.fireEvent.pass(['onFailure',params],this),onComplete:function(resp){entry.loaded=true;entry.container.empty().setHTML(resp);this.fireEvent('onComplete',params);}.bind(this)},this.options.ajaxOptions)).request();}
this.selected=index;this.prepareTimer(this.selected+1);return this;},loadActive:function(){var show=-1;this.element.getElements('.rgtabs-wrapper .rgtabs-container a[id^="c"]').each(function(anchorid,i){if(window.location.hash.test(anchorid.id)){show=i;}});if(show!=-1){this.select(show);}},prepareTimer:function(index){if(this.options.delay>0){if(index>=this.count)index=0;this.select.delay(this.options.delay,this,index);}}});SimpleTabs.implement(new Events,new Options);