// Global JavaScripts
$(document).ready(function() {
    $('ul#nav').superfish({ delay: 400 });

    // Tabs
    if ($("#tabs").length > 0) { $("#tabs").tabs(); }

    //Colorbox
    $("a.colorbox").colorbox({ transition: "fade" });

    // Sub Nav
    if ($('#sideNav').length > 0) {
        $('#sideNav ul li:first-child').addClass("first");
        $('#sideNav ul li:last-child').addClass("last");
    }

    if ($('.productOverview-links').length > 0) {
        if ($('.product-specification-links').length > 0) $('.product-specification-links').html($('.productOverview-links').html());
        if ($('.product-ratings-links').length > 0) $('.product-ratings-links').html($('.productOverview-links').html());
    }

    // Cleanup Events and News empty p tags
    $(".sf_newsList p, .sf_singleNews p, .sf_eventsList p, .sf_singleEvent p").each(
      function() {
          var elem = $(this);
          if ($.trim(elem.html()).length == 0) {
              elem.remove();
          }
      }
    );
    
    // Search Box value
    $('#searchBox .sf_searchText').focus(function() {
        if (this.value == 'Model Number Search') { this.value = ''; }
    }).blur(function() {
        if (this.value == '') { this.value = 'Model Number Search'; }
    });

    // Search box auto-complete
    function redirect(url) {
        location.href = url;
    }
    $.ajax({
        url: "/model-numbers.xml",
        dataType: "xml",
        success: function(xmlResponse) {
          var data = $("model", xmlResponse).map(function() {
              return {
                  value: $("modelNumber", this).text(),
                  id: $("productID", this).text()
              };
          }).get();
          $(".sf_searchText").autocomplete({
              source: data,
              minLength: 2,
              select: function(event, ui) {
                  redirect("/search.aspx?id=" + ui.item.id + "&SearchQuery=" + ui.item.value);
              }
          });
        }
    });

});

