Joomla.it Forum

Non solo Joomla... => Sviluppo => : vales 07 Jun 2011, 16:27:12

: [Risolto] uso di pagination in Joomla 1.6.3
: vales 07 Jun 2011, 16:27:12
Mi occorre la paginazione di una lista di campi di records di una tabella che visualizzo con chronforms v4 RC 1.9 per joomla 1.6.

Per richiamare la paginazione uso queste righe di codice nella posizione opportuna.

:
jimport('joomla.html.pagination');
$pageNav = new JPagination($total, $limitstart, $limit);
echo $pageNav->getListFooter();

In joomla 1.6.3 ottengo il risultato della paginazione sviluppato in verticale come in  figura 1.

In Joomla 1.5.3 ottengo con lo stesso form e codice gestito dallo stesso componente v4 RC 1.9 per la versiome joomla 1.5 il risultato è corretto e sviluppato in orizzontale come nella figura 2.

Essendo a questo punto la cosa abbastanza strana sono andato a confrontare i due file pagination.php delle due versioni di joomla.

Nella versione per joomla 1.6 ho trovato questo blocco di codice che produce il risultato verticale
:
protected function _list_render($list)
    {
        // Reverse output rendering for right-to-left display.
        $html = '<ul>';
        $html .= '<li class="pagination-start">'.$list['start']['data'].'</li>';
        $html .= '<li class="pagination-prev">'.$list['previous']['data'].'</li>';
        foreach($list['pages'] as $page) {
            $html .= '<li>'.$page['data'].'</li>';
        }
        $html .= '<li class="pagination-next">'. $list['next']['data'].'</li>';
        $html .= '<li class="pagination-end">'. $list['end']['data'].'</li>';
        $html .= '</ul>';

        return $html;
    }
   
in cui in effetti vi sono le ul e li che provocano lo sviluppo verticale.

Nella versione per joomla 1.5 la stessa funzione è ben diversa.

:
function _list_render($list)
    {

        // Initialize variables
        $html = null;

        // Reverse output rendering for right-to-left display
        $html .= '&lt;&lt; ';
        $html .= $list['start']['data'];
        $html .= ' &lt; ';
        $html .= $list['previous']['data'];
        foreach( $list['pages'] as $page ) {
            $html .= ' '.$page['data'];
        }
        $html .= ' '. $list['next']['data'];
        $html .= ' &gt;';
        $html .= ' '. $list['end']['data'];
        $html .= ' &gt;&gt;';

        return $html;
    }
   
Sostituendo il blocco di joomla 1.5 in joomla 1.6 si ottiene il risultato giusto allineato orizzontalmente.

Qualcuno ha qualche idea su questa cosa ?

Sono io che tralascio qualcosa o è joomla 1.6 che ha un problema sulla navigazione?
: Re:uso di pagination in Joomla 1.6.3
: mau_develop 07 Jun 2011, 16:37:43
ul display inline probabilmente, un po' come nei menù
http://lau.csi.it/realizzare/accessibilita/fogli_di_stile/liste/lista_vs_menu.shtml (...un po' datato ma valido)

M.
: Re:uso di pagination in Joomla 1.6.3
: vales 07 Jun 2011, 17:02:59
thanks mau_develop

è proprio display: inline da inserire nel posto giusto in un css personalizzato.

inserita action load css con questo codice

:
ul li {
display: inline;
}

tutto allineato perfettamente