$(document).ready(function() {
  var initializeTabs = function () {
    $('.tabmenu ul li').each(function() {
      var e = $(this), hc = false;

      if (! e.hasClass('active') && ! e.next().hasClass('active'))
       e.css('border-right', '2px solid #ccc');
      else
       e.css('border-right', '2px solid transparent');
    });
  };

  $('.tabmenu ul li').each(function() {
    var e = $(this), hc = false;

    initializeTabs();

    e.click(function() {
      if (e.attr('container') == undefined)
        return;

      var c = $('#' + e.attr('container')) || null;

      if (!$('#detailsContainer').is(':visible'))
        $('#detailsContainer').slideDown('slow');

      $('#detailsContainer > div:visible').addClass('invisible');
      $('.tabmenu ul li.active').removeClass('active');

      c.removeClass('invisible');

      e.addClass('active');

      initializeTabs();

      hc = true;
    }).mouseenter(function() {
     if (e.hasClass('active'))
       hc = true;
     
     $.each([e, e.prev()], function(i, u) {
       u.css('border-right', '2px solid transparent');
     });

     e.addClass('active');
    }).mouseleave(function() {
     if (! hc)
       e.removeClass('active');

     hc = false;

     if (e.hasClass('active'))
       return;

      initializeTabs();
    });
  });
});
