/**!meta-info
 * @name           harlequin tabs
 *
 * @description    
 *
 * @requires       Trapeze jQuery 1.4.1-1.0.0
 * @requires       Trapeze Core Plugins 0.3.0
 * @requires       simple-tabs-2.0.0
 *
 * @group-with     simple-tabs/simple-tabs.js
 * @group-with     virtual-rack-tabs.js
 *
 */




$.namespace("trapeze.HarlequinTabs");

trapeze.HarlequinTabs = trapeze.SimpleTabs.extend({

    $tab_list_container  : null,

    item_template   : '<li><a href="#%(content_id)-tab" title="%(content_id)"><span>%(title)</span></a></li>',
    list_template   : '<ul id="%(tab_nav)" class="tabbed-nav">%(list_items)</ul>',
    
    createNav : function() {
        var list_items = '';
        this.$tab_container.find('.'+this.conf.tab_class).each($.proxy(function(i, obj) {
            list_items += trapeze.render_template(this.item_template, {
                'content_id' : $(obj).attr('id'),
                'title'      : $(obj).find('.'+this.conf.title_class).remove().html()
            });
        },this)).addClass("tabbed-content");
        

        $(this.conf.tab_list_container).prepend(trapeze.render_template(this.list_template, {
            'list_items' : list_items,
            'tab_nav' : this.conf.tab_nav_id
        }));
    },

    selectNav : function(evt) {
        evt.preventDefault();
        var active_tab = $(evt.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^="'+active_tab+'"]').parent('li').addClass(this.conf.tab_nav_active);
        
        $('.'+this.conf.tab_class).hide();
        $('#'+active_tab).show();
    }
});

/* todo - add first and last child */
