$(function(){

    $("ul.dropdown li").hover(function(){
    
        $(this).addClass("hover");
        $('ul:first',this).css('visibility', 'visible');
    
    }, function(){
    
        $(this).removeClass("hover");
        $('ul:first',this).css('visibility', 'hidden');
    
    });
    
    
    $("ul.dropdown li ul li:has(ul)").find("a:first").addClass("hasdropdown");

});

$.fn.textWidth = function(){
  var sensor = $('<div />').css({margin: 0, padding: 0});
  $(this).append(sensor);
  var width = sensor.width();
  sensor.remove();
  return width;
};


$(document).ready(function() {
    $('ul.dropdown').each(function() { 
        var maxWidth = 0;
        var elemWidth = 0;
        $('ul.sub_menu li').each(function() {
            elemWidth = (parseInt($(this).find("a").context.offsetWidth) + parseInt($(this).context.offsetWidth) - (parseInt($(this).find("a").context.offsetWidth) / 2) - 26); 
            if (parseInt($(this).outerWidth(true)) > maxWidth) {
                maxWidth = elemWidth;
            }
        });
        $('ul.dropdown li ul.sub_menu li').each(function() {
            $(this).css('width', maxWidth + "px");
        });
        
        maxWidth = 0;
        elemWidth = 0;
        $('ul.sub_menu li ul li').each(function() {
            $(this).css('width', "");
            elemWidth = (parseInt($(this).find("a").context.offsetWidth) + parseInt($(this).context.offsetWidth) - (parseInt($(this).find("a").context.offsetWidth) / 2) - 26); 
            if (parseInt($(this).outerWidth(true)) > maxWidth) {
                maxWidth = elemWidth;
            }
        });
        $('ul.sub_menu li ul li').each(function() {
            $(this).css('width', maxWidth + "px");
        });
        
        maxWidth = 0;
        elemWidth = 0;
        $('ul.sub_menu li ul li ul li').each(function() {
            $(this).css('width', "");
            /*elemWidth = (parseInt($(this).find("a").context.offsetWidth) + parseInt($(this).context.offsetWidth) - (parseInt($(this).find("a").context.offsetWidth) / 2) - 26); 
            if (parseInt($(this).outerWidth(true)) > maxWidth) {
                maxWidth = elemWidth;
            }*/
        });
        /*$('ul.sub_menu li ul li ul li').each(function() {
            $(this).css('width', maxWidth + "px");
        });*/
    });
        
    });

