/*global jQuery Drupal*/
jQuery.fn.menuSpaceDistribute = function() {
  
  return jQuery(this).each(function() {
    
    jQuery(this).width(jQuery(this).width()); // Set the width explicitly to avoid halfpixels
    
    var width = jQuery(this).outerWidth();
    var totalItemsWidth = 0;
    
    var items = jQuery(this).find('a');
    
    var minPaddingLeft = parseInt(items.eq(0).css('padding-left'), 10);
    var minPaddingRight = parseInt(items.eq(0).css('padding-right'), 10);
    items.each(function(i, e) {
      
      jQuery(e).width(jQuery(e).width() + 1);
      
      var width = jQuery(e).parent().outerWidth();
      
      width -= minPaddingLeft;
      width -= minPaddingRight;
      
      totalItemsWidth += width;
    });
    
    var available = width - totalItemsWidth;
    
    var count = items.size() * 2;
    
    var value = Math.floor(available / count);
    
    var extra = available - (value * count);
    
    var extraFill = Math.ceil(extra / count);
    
    items.each(function (i, e) {
      var paddingLeft = value + ((extra > 0) ? extraFill : 0);
      extra -= extraFill;
      
      var paddingRight = value + ((extra > 0) ? extraFill : 0);
      extra -= extraFill;
      
      jQuery(e).css({
        paddingLeft: paddingLeft,
        paddingRight: paddingRight
      });
    });
    
  });
  
};

jQuery(document).ready(function() {	
	// Distribute the padding among the menu links
  jQuery('#block-menu-block-main-menu ul').menuSpaceDistribute();
});
;

