jQuery(document).ready(function(){
        /* PARAMETRI
              managePagination(contenitoreDelleUnitą, startPoint, NumUnitąPerPagina, PagineDaVisualizzareNellaPaginazione);
        */
        managePagination(jQuery("div.switch-view"), 0, 21, 5);
});

function managePagination(bookContainer, startpoint, articleforpage, pagetoshow){
    buildPagination(bookContainer, startpoint, articleforpage, pagetoshow);
    showSelectedPage(bookContainer, startpoint, articleforpage);
};

function showSelectedPage(bookContainer, startpoint, articleforpage){
    var childList = bookContainer.children('a.UI-foto');
    
    // NASCONDI TUTTI
    childList.removeClass("current").hide();
    childList.next().removeClass("current").hide();
    childList.next().next().removeClass("current").hide();
    //childList.next().next().next().removeClass("current").hide();
    
    // VISUALIZZA PAGINA SELEZIONATA
    if(jQuery(".switch-view").hasClass("image-switch")){
    	//console.log(".switch-view HAS class 'image-switch'");
    	childList.slice(startpoint, startpoint+articleforpage).addClass("current").show();
    	childList.next().slice(startpoint, startpoint+articleforpage).addClass("current");
        childList.next().next().slice(startpoint, startpoint+articleforpage).addClass("current");
        childList.next().next().slice(startpoint, startpoint+articleforpage).addClass("current");
        //childList.next().next().next().slice(startpoint, startpoint+articleforpage).addClass("current");
    }
    else{
    	//console.log(".switch-view DON'T HAS class 'image-switch'");
    	childList.slice(startpoint, startpoint+articleforpage).addClass("current");
    	childList.next().slice(startpoint, startpoint+articleforpage).addClass("current").show();
        childList.next().next().slice(startpoint, startpoint+articleforpage).addClass("current").show();
        childList.next().next().slice(startpoint, startpoint+articleforpage).addClass("current").show();
        //childList.next().next().next().slice(startpoint, startpoint+articleforpage).addClass("current").show();
    };
};

function buildPagination(bookContainer, startpoint, articleforpage, pagetoshow){
    var totBook = bookContainer.children('a.UI-foto').length;
    var npage = Math.ceil(totBook/articleforpage);
    var b=[],k=0;
    
    // SE VI SONO PIU' PAGINE
    if(npage>1){
    
        if(npage>=pagetoshow){
            var pageSelected = (startpoint / articleforpage) + 1;
            var startpointPag = (startpoint / articleforpage) + 1 - (Math.floor(pagetoshow/2));
            
            if(startpointPag<1) startpointPag = 1;
            var toplimit = pagetoshow + startpointPag;
            
            if( (toplimit - npage - 1) > 0 ) {
                  startpointPag = (npage - pagetoshow + 1);
                  toplimit = pagetoshow + startpointPag;
            };
            //------------------------------CREATE HTML-------------------------------//
              if(startpointPag > 1)
                  b[k++] = "<div style='cursor:pointer;' class='pag_down' " +
                              " onclick='javascript:managePagination(jQuery(\"div.switch-view\"), 0, " + articleforpage + ", " + pagetoshow + ");' />";
              
              for(var i=startpointPag; i<toplimit; i++){
                var pageStartPoint = articleforpage * (i - 1);
                if(i==pageSelected) var classPageSelected = "selected_page";
                else var classPageSelected = " ";
                b[k++] = "<div id='pag" + i + "' style='cursor:pointer;' class='number_page " + classPageSelected + "'" +
                         " onclick='javascript:managePagination(jQuery(\"div.switch-view\"), " + pageStartPoint + ", " + articleforpage + ", " + 
                         pagetoshow + ");'>" + i + "</div>";
              }
              
              if( (toplimit - npage - 1) < 0 ) 
                b[k++] = "<div style='cursor:pointer;' class='pag_up' " +
                         " onclick='javascript:managePagination(jQuery(\"div.switch-view\"), " + ((npage-1)*articleforpage) + ", " + articleforpage + 
                         ", " + pagetoshow + ");' />";
            //------------------------------END HTML-------------------------------//
            
            printPagination(bookContainer, b.join(''));
        }

        else{
            var pageSelected = (startpoint / articleforpage) + 1;
            
            for(var i=1; i<(npage+1); i++){
                var pageStartPoint = articleforpage * (i - 1);
                
                if(i==pageSelected) var classPageSelected = "selected_page";
                else var classPageSelected = " ";
                
                b[k++] = "<div id='pag" + i + "' style='cursor:pointer;' class='number_page " + classPageSelected + "'" +
                            " onclick='javascript:managePagination(jQuery(\"div.switch-view\"), " + pageStartPoint + ", " + articleforpage + ", " + pagetoshow + ");'>" + i + "</div>"; 
            };
            
            printPagination(bookContainer, b.join(''));
        };
    }
    
    // SE VI E' SOLO UNA PAGINA
    else {
        b[k++]="";
        printPagination(bookContainer, b.join(''));
    };
};

function printPagination(bookContainer, htmlPagination){
    jQuery('td.jspagination').html(htmlPagination);
};