

(function($) {
  // global closure and $ portability

  /* -- CAROUSELS -- */
  
  var disabledClass = "bt-carousel-disabled";
  var clipPadding = 18;
  var minTabPanelCopyHeight = 500;
  
  var tabLinks;

  $(document).ready( function() {

     // setup the search auto-focus
     var sVal = $('#s').val()

     if (sVal != '') {
         $('#s:first').focus().select();
     } 
   
    
    $('.carousel-pages').carousel({ classNameDisabled: "bt-carousel-disabled" });
    
      
    $(".carousel-tab-panels")
      .carousel({selectorItem: "li.tab-panel", transitionOptions: { easing: "easeOutQuart", duration: 400 } })
      .bind('carousel.afterchange', function(event, data) {
        var li = data.newItem;

        var copyElements = li.find("div.copy,div.tab-panel-body");

        if (copyElements.length) {
            var copy = copyElements.eq(0);
            var newHeight = Math.max(minTabPanelCopyHeight, copy.innerHeight() + clipPadding);
            
            li.css( { height: newHeight } ).closest(".carousel-tab-panels").css( { height: newHeight } );
        }

        // set the state of the tab here, so that any scroll will correctly update the display (not just clicks on tabs) 
        $('#' + data.newItem.attr("id").replace("tab-panel", "tab")).addClass("current");

        if (data.target.hasClass("tab-scroll")) {
          $.scrollTo($(this).closest(".carousel"), {
              duration: 250, 
              easing: "easeOutQuart"
          });
        }
        
      });
        
  
    $(".carousel-tab-buttons a, a.tab-scroll").click( function(event) {
    
      event.preventDefault();
      
      var el = $(this);
      var c = el.closest(".carousel");
      var ctp = c.find(".carousel-tab-panels");
      var tl = c.find(".carousel-tab-buttons a");
      
      ctp.carousel('to', { el: el.gel(), target: $(this) });
      tl.removeClass("current");
      
    });
    
    $('#tabs-panels').find(".tabs,.navigation").show();

    var parts = document.location.href.split("#");
    
    if (parts.length == 2 && parts[1] != "") {
      $('.tabs ul a[href=#tab-panel-' + parts[1] + ']').click();
    } 




  }); // end dom ready 
  
})(jQuery); // end global closure


