//----------------------------------    
// Create a multi-tabbed box
//
// Requires jquery
//----------------------------------

function multitabs(selector){
  
  // Main
  jQuery(selector).each(function(){

      // Setup
      multi=jQuery(this);
      tabs=multi.find(".tab");
      slides=multi.find(".slide");
 
      // Subroutines
      tab_click=function(vt){
        // If new tab is visible, quit
        if(vt.is(".active"))return false;
        // Swap visible slide out and new one in
        var hs=slides.filter(".active");
        var vs=slides.eq(tabs.index(vt[0]));
        tab_click_slide(hs,vs);
        // Update tabs
        var ht=tabs.filter(".active");
        tab_click_tab(ht,vt);
        // Show if not shown
        if(!multi.is(".active"))multi.slideDown("slow");
        return false;
      }
      // Allow these events to be overridden
      tab_click_slide=function(hs,vs){
        hs.removeClass("active");
        hs.hide();
        vs.show();
        vs.addClass("active");
      }
      tab_click_tab=function(ht,vt){
        ht.removeClass("active");
        vt.addClass("active");
      }

      // Events
      tabs.find("a").click(function(){
        return tab_click(jQuery(this).parents(".tab"));
      });

      // Find and launch default or first
      var deftab=parseInt(multi.attr("default"));
      tab_click(tabs.eq(isNaN(deftab)?0:deftab));

   });
}


