$(document).ready(function() {
    $('div#sidebar ul li ul').each(function(e) {
        if($(this).children('li').length > 6) {
            $(this).append('\
                <img src=\'images/up.png\' alt=\'\' class=\'up\' />\
                <img src=\'images/down.png\' alt=\'\' class=\'down\' />\
            ');
        }
        
        $('li', this).each(function(i) {
            if($(this).attr('class') == 'selected') {
                if((i + 1) > 6) {
                    $(this).parent().find('li').css('top', '-' + (((i + 1) - 6) * 24) + 'px');
                }
            }
        });
    });
    
    $('div#sidebar ul li img.up, div#sidebar ul li img.down').click(function(e) {
        object = $(this).parent().parent().find('ul li')
        
        if(parseInt(object.css('top')) == 0) {
            css_top = 0;
        }
        else {
            css_top = (parseInt(object.css('top')) / -24)
        }
        
        if($(this).attr('class') == 'up' && (css_top + 6) <= object.length) {
            object.css('top', '-' + ((24 * css_top) - 24) + 'px');
        }
        else if($(this).attr('class') == 'down' && (css_top + 6) < object.length) {
            object.css('top', '-' + ((24 * css_top) + 24) + 'px');
        }
    });
    
    $('div#sidebar ul li a').click(function(e) {
        child_ul = $('ul', $(this).parent());
        
        if(child_ul.length == 1) {
            if(!child_ul.is(':hidden')) {
                return;
            }
            
            $('div#sidebar ul li a').each(function(i) {
                close_child_ul = $('ul', $(this).parent());
                
                if(close_child_ul.length == 1 && !close_child_ul.is(':hidden')) {
                    close_child_ul.slideToggle();
                }
            });
            
            child_ul.slideToggle();
            
            return false;
        }
    });
});
