marcelo.valvassori / Amigos-Share-loading

Necessidade de realizar mais testes no Fórum, a principio quando existe mais de uma página para ser apresentada ele sempre pula para a segunda, sendo o provável erro o fato de que no fórum as páginas devem começam em "0" e não em "1" como em todas as demais listagens do sistema, sendo talvez necessário realizar teste para na URL chamada utilizando windows.location.pathname.includes('forum.php') e quem sabe modificar o valor da variável npg em algum momento, que no script esta sendo iniciada em "0" mas incrementada assim que adicionado o separador de página.

Necessário modificar paginação para retornar todas as existentes:


getPaginationArray(){
        var pages = [];
        try{
            $('.pagination li a.page-link').map(function(){
                let lnk = $(this).attr('href').split('?')[1], vars = [], hash;
                if(lnk){
                    var hashes = lnk.split('&');
                    for(var i = 0; i < hashes.length; i++){
                        hash = hashes[i].split('=');
                        vars.push(hash[0]);
                        vars[hash[0]] = hash[1];
                    }
                    pages.push(parseInt(vars['page']));
                }
            });
            let p = [...new Set(pages)].sort((a, b) => a - b);
            pages = [];
            for (let i = p[0]; i <= p[p.length-1]; i++)pages.push(i);
        }catch(e){
            new Error(e);
        }
        return pages;
    }

Solução:

Modificar todo o script em sua essência, padronizar o uso das chamadas assíncronas e reestruturar melhor a classe segmentando conteúdo do principal método atual da classe.