/*
 *  Trapeze Tabs
 *
 *  @description    Create a set of tabs with navigation links prepended.
 *  @copyright      Trapeze Copyright (c) 2010, Trapeze, All rights reserved.
 *
 *  @author         Teddy Hwang (thwang at trapeze dot com)
 *
 *  @requires       Trapeze jQuery Distribution
 *  @requires       Trapeze Core Utilities
 *
 */
 
 
$.namespace("trapeze.SimpleTabs");
trapeze.SimpleTabs=$.Class.extend({conf:null,$tab_container:null,$tab_nav:null,list_template:'<ul id="%(tab_nav)">%(list_items)</ul>',item_template:'<li><a href="#%(content_id)-tab" title="%(content_id)">%(title)</a></li>',createNav:function(){var a="";this.$tab_container.find("."+this.conf.tab_class).each($.proxy(function(b,c){a+=trapeze.render_template(this.item_template,{content_id:$(c).attr("id"),title:$(c).find("."+this.conf.title_class).remove().html()})},this));this.$tab_container.prepend(trapeze.render_template(this.list_template,
{list_items:a,tab_nav:this.conf.tab_nav_id}))},createTabs:function(){var a=window.location.hash.replace("#","").replace("-tab","")||null,b=[];$("."+this.conf.tab_class).each(function(c,d){b.push($(d).attr("id"))});if(a&&$.inArray(a,b)>=0){this.$tab_nav.find('a[title^="'+a+'"]').parent("li").addClass(this.conf.tab_nav_active);$("#"+a).show()}else{this.$tab_nav.find("li:eq("+this.conf.tab_default+")").addClass(this.conf.tab_nav_active);$("."+this.conf.tab_class+":eq("+this.conf.tab_default+")").show()}for(i=
0;i<b.length;i++)$('a[title^="'+b[i]+'"]').click($.proxy(this.selectNav,this))},selectNav:function(a){a=$(a.currentTarget).attr("title");this.$tab_nav.find("li."+this.conf.tab_nav_active).removeClass(this.conf.tab_nav_active);this.$tab_nav.find('a[title^="'+a+'"]').parent("li").addClass(this.conf.tab_nav_active);$("."+this.conf.tab_class).hide();$("#"+a).show()},init:function(a){this.conf=$.extend({},{tab_default:"0",tab_class:"tab",tab_nav_id:"TabNav",tab_nav_active:"active",title_class:"tabbed-title",
selector:null},a);this.$tab_container=$(this.conf.selector);this.createNav();this.$tab_nav=this.$tab_container.find("#"+this.conf.tab_nav_id);$("."+this.conf.tab_class).hide();this.createTabs()}});

