Zum Inhalt springen

Frage zu usePiBasePagebrowser in eigener Extension

Erstellt am 14. August 2008 · 2 Antworten · letzte Antwort am 14. August 2008

Tags: Frage

Perseus85 ·

Hallo,

ich hoffe mir kann hier jemand helfen... und zwar benutze ich den "usePiBasePagebrowser" in meiner Extension, blöderweise habe ich es nicht hinbekommen, dass er die Seitenzahlen dynamisch anpasst.

Zur Verdeutlichung:
Habe ca. 80 Seiten und so sieht der Browser aus:
<previous 1 2 3 4 5 6 7 8 9 10 next>

soweit so gut... wenn ich aber auf Seite 11 bin, sollte das Ganze aber so ähnlich aussehen:
<previous 7 8 9 10 11 12 13 14 15 16 next>
tut es aber nicht... sieht nach wie vor aus, wie oben.

Eigentlich sollte das mit Hilfe von "pagefloat" funktionieren... funktioniert aber anscheinend nicht.
Hier nochmal der zugehörige Code:

if($countRecords > $listLimit) {

			// Configure pagebrowser vars
			$this->internal['res_count'] = $countRecords;
			$this->internal['results_at_a_time'] = $listLimit;
                        $this->internal['pagefloat'] = 'center';
			$this->internal['maxPages'] = $this->conf['pageBrowser.']['maxPages'] > 0 ? $this->conf['pageBrowser.']['maxPages'] : 10;
			$this->internal['action'] = $action;

Hat jemand damit Erfahrungen gemacht, bzw. eine Lösungsidee?

Danke schonmal

steffenk ·

pagefloat ist richtig (center)

Schau Dir einfach mal den Rendercode in der pibase an
tslib_pibase::pi_list_browseresults

if ($pagefloat > -1) {
	$lastPage = min($totalPages,max($pointer+1 + $pagefloat,$maxPages));
	$firstPage = max(0,$lastPage-$maxPages);
} else {
	$firstPage = 0;
	$lastPage = t3lib_div::intInRange($totalPages,1,$maxPages);
}
Perseus85 ·

Oh vielen Dank... habe den Fehler gefunden

und zwar ist das eigentliche Problem, dass hier usePiBasePagebrowser=0 ist...

if( $this->conf['usePiBasePagebrowser'] ) {
...
 $markerArray['###BROWSE_LINKS###'] = $this->pi_list_browseresults( ...);
}

🙁 es liegt also daran, dass er die Konfiguration aus dem Backend nicht übernimmt... seltsam.
Naja jetzt weiß ich wo ich suchen muss... ohne des if funktionierts.