/*
		MIT License
*/
window.addEvent("domready",function(){new SimpleTabs("tab-tabs",{selector:"h4"})});
var SimpleTabs=new Class({Implements:[Events,Options],options:{show:0,selector:".tab-tab",classWrapper:"tab-wrapper-home",classMenu:"tab-menu-home",classContainer:"tab-container",onSelect:function(a,b){a.addClass("tab-selected-home");b.setStyle("display","")},onDeselect:function(a,b){a.removeClass("tab-selected-home");b.setStyle("display","none")},onRequest:function(a,b){b.addClass("tab-ajax-loading")},onComplete:function(a,b){b.removeClass("tab-ajax-loading")},onFailure:function(a,b){b.removeClass("tab-ajax-loading")},
onAdded:Class.empty,getContent:null,ajaxOptions:{},cache:true},initialize:function(a,b){this.element=$(a);this.setOptions(b);this.selected=null;this.build()},build:function(){this.tabs=[];this.menu=new Element("ul",{"class":this.options.classMenu});this.wrapper=new Element("div",{"class":this.options.classWrapper});this.element.getElements(this.options.selector).each(function(a){var b=a.get("href")||(this.options.getContent?this.options.getContent.call(this,a):a.getNext());this.addTab(a.innerHTML,
a.title||a.innerHTML,b)},this);this.element.empty().adopt(this.menu,this.wrapper);this.tabs.length&&this.select(this.options.show)},addTab:function(a,b,c){var d=$(c),f=(d||new Element("div")).setStyle("display","none").addClass(this.options.classContainer).inject(this.wrapper),e=this.tabs.length,g=this.options.hover?"mouseenter":"click",h="tab-"+e;a={container:f,toggle:(new Element("li")).grab((new Element("a",{href:"#",title:b})).addClass(h).grab(new Element("span",{html:a}))).addEvent(g,this.onClick.bindWithEvent(this,
[e])).inject(this.menu)};if(!d&&$type(c)=="string")a.url=c;this.tabs.push(a);return this.fireEvent("onAdded",[a.toggle,a.container,e])},onClick:function(a,b){this.select(b);return false},select:function(a){if(this.selected===a||!this.tabs[a])return this;this.ajax&&this.ajax.cancel().removeEvents();var b=this.tabs[a],c=[b.toggle,b.container,a];if(this.selected!==null){var d=this.tabs[this.selected];this.ajax&&this.ajax.running&&this.ajax.cancel();c.extend([d.toggle,d.container,this.selected]);this.fireEvent("onDeselect",
[d.toggle,d.container,this.selected])}this.fireEvent("onSelect",c);if(b.url&&(!b.loaded||!this.options.cache)){this.ajax=this.ajax||new Request.HTML;this.ajax.setOptions({url:b.url,method:"get",update:b.container,onFailure:this.fireEvent.pass(["onFailure",c],this),onComplete:function(){b.loaded=true;this.fireEvent("onComplete",c)}.bind(this)}).setOptions(this.options.ajaxOptions);this.ajax.send();this.fireEvent("onRequest",c)}this.selected=a;return this}});