(function($) {
   
    $.fn.extend({

        scroll_sidebar: function(options) {
            
            var settings = $.extend({
                'opacity': 0.2,
                'more_link_text': '...zobacz więcej...',
                'speed': 500
            }, options)

            return this.each(function() {

                var obj = $(this)
                var items = $(".sidebar-entry", obj.parent())
                var title = obj.find(".sidebar-entry-title a")
                var sidebar = obj.parent()
                var sidebar_wrapper = sidebar.parent()
                
                title.live('click', function() {
                    if(!obj.hasClass('selected')) {
                        var items = $(".sidebar-entry", obj.parent())
                        var index = $(items).index(obj)
                        
                        items.removeClass('selected')
                        obj.addClass('selected')
                        $(".sidebar-more-link").remove()
                      
                        var margin = 0
    
                        for(var i = 0; i < index; i++) {
                            var item = $(".sidebar-entry:eq(" + i + ")")
                            margin = margin + item.height()
                            margin = margin + parseInt(item.css('paddingTop').replace(/px/, ''))
                            margin = margin + parseInt(item.css('paddingBottom').replace(/px/, ''))
                            margin = margin + parseInt(item.css('marginBottom').replace(/px/, ''))
                            margin = margin + parseInt(item.css('borderBottomWidth').replace(/px/, ''))
                        }
                    
                        items.animate({
                            'opacity': settings.opacity
                        }, settings.speed)
                        
                        obj.animate({
                            'opacity': 1
                        }, settings.speed)
                        
                        obj.append(
                            $("<p />")
                                .addClass('sidebar-more-link')
                                .append(
                                    $("<a />")
                                        .attr({
                                            'href': title.attr('href')
                                        })
                                        .text(settings.more_link_text)
                                )
                        )
                        
                        sidebar.animate({
                            'marginTop': -margin + 'px'
                        }, settings.speed, function(callback) {
                        
                            for(var i = 0; i < index; i++) {
                                var item = $(".sidebar-entry:eq(0)")
                                item.appendTo(sidebar)
                            }
                            
                            sidebar.css({'marginTop': 0})
                        })
                        
                        $("html, body").animate({
                            'scrollTop': 0
                        }, settings.speed);
    
                        return false
                    }
                })
            
            })

        }

    })
 
})(jQuery)


$(document).ready(function() {

    $(".sidebar-entry-list").wrap(
        $("<div />")
            .addClass('sidebar-entry-list-wrapper')
    )

})

