(function($) {
    $.fn.hidelink = function(dane)
            {
                dane.rozdzielnik='<span class="hidelink_rozdzielnik">'+dane.rozdzielnik+'</span>';
                var ilosc=$('#'+dane.linki).children().length;
                var pierwszy=$('#'+dane.linki+' :first-child');
                var element=pierwszy;
                var i=0;
                for(i;i<ilosc;i++)
                    {
                        if(element.children().attr('id')==dane.znacznik||element.attr('id')==dane.znacznik)
                            {break;}
                        else
                            {element=element.next();}
                    }
                var przod=Math.ceil(dane.ilosc/2);
                var tyl=dane.ilosc-przod;
                
                i++;
                if(dane.ilosc+2<ilosc)
                    {
                        if(i<=(przod+1))
                        {
                            var j=1;
                            $('#'+dane.linki).children().each(function(){
                                if(j>dane.ilosc)
                                    {
                                        if(j==ilosc){$(this).before(dane.rozdzielnik);}
                                        else if((i!=(przod+1))||(j!=(dane.ilosc+1))){$(this).hide().addClass('hidelink2');}
                                    }
                                j++;
                            });
                        }
                    else if(i<ilosc-(tyl+1))
                        {
                            j=1;
                            $('#'+dane.linki).children().each(function(){
                                if(j<(i-(przod-1)))
                                    {

                                        if(j==1){$(this).after(dane.rozdzielnik);}
                                        else {$(this).hide().addClass('hidelink1');}

                                    }else if(j>(i+tyl))
                                        {
                                            if(j==ilosc){$(this).before(dane.rozdzielnik);}
                                            else {$(this).hide().addClass('hidelink2');}
                                        }
                                j++;
                            });
                        }
                        else
                            {
                                j=1;
                                $('#'+dane.linki).children().each(function(){
                                    if(j<ilosc-(dane.ilosc-1))
                                        {
                                            if(j==1){$(this).after(dane.rozdzielnik);}
                                            else if((i!=(ilosc-(tyl+1)))||(j!=(ilosc-(dane.ilosc)))){$(this).hide().addClass('hidelink1');}
                                        }
                                    j++;
                                });
                            }
                    }
                $('.hidelink_rozdzielnik').click(function(){
                    if($(this).prev().hasClass('hidelink2'))
                        {
                            $('.hidelink2').show();
                            $(this).remove();
                        }
                    if($(this).next().hasClass('hidelink1'))
                        {
                            $('.hidelink1').show();
                            $(this).remove();
                        }
                }).css('cursor','pointer');
            }
})(jQuery);