/* 
  Alex MacCaw
  Simple tabs lib
  
  <script type="text/javascript" charset="utf-8">
    jQuery(function($){
      $("#tabs a").tabs();
    });
  </script>
  
  <ul id="tabs">
    <li><a href="#tabName">Tab Name</a></li>
    <li><a href="#tab2Name">Tab 2</a></li>
  </ul>
  
  <div id="tabName">Content</div>
  <div id="tab2Name">Content for tab 2</div>
*/

(function($){
  $.fn.showTab = function(){
    $(this).each(function(){
      $($(this).data('tab')).addClass('active');
      $(this).show();
    });
  };
  
  $.fn.hideTab = function(){
    $(this).each(function(){
      $($(this).data('tab')).removeClass('active');
      $(this).hide();
    });
  }
  
  $.fn.tabs = function(){
    var tabs = $(this);
    
    var bodies = $.map(tabs, function(tab){
      var href = $(tab).attr('href');
      var body = $(href);
      $(tab).data('tab', body);
      $(body).data('tab', tab);
      return body;
    });
    bodies = $(bodies);

    tabs.click(function(){
      bodies.hideTab();
      $($(this).data('tab')).showTab();
      return false;
    });
    
    var defaultBody = bodies[0];
    if( location.hash ){
      var el = $(location.hash);
      if( el[0] && $.inArray(el, tabs) ){
        defaultBody = el;
      }
    }
    bodies.hideTab();
    $(defaultBody).showTab();
  }
})(jQuery);