VisualPaginator
Jednoduchý vizuální stránkovač.
| Verze | 0.9 |
| Download | VisualPaginator.zip |
| Autor | David Grudl |
| Licence | New BSD License |
Ukázka
Použití
Komponentu stránkovače vytvoříme a připojíme k presenteru, například
po názvem vp:
public function renderDefault()
{
// create visual paginator control
$vp = new VisualPaginator($this, 'vp');
...
Stránkovač si sám pamatuje aktuální číslo stránky, stačí tedy nastavit počet prvků na stránku a celkový počet prvků. Pro usnadnění jeho metoda getPaginator() vrací objekt Nette\Paginator.
...
$paginator = $vp->getPaginator();
$paginator->itemsPerPage = 15;
$paginator->itemCount = count($items);
...
//příklad jak omezit třeba výběr řádků ze SQL pro danou stránku (s dibi)
$rows = dibi::fetchAll('SELECT ... ORDER BY ... %ofs %lmt', $paginator->offset, $paginator->itemsPerPage);
A nakonec jej můžeme vykreslit v šabloně pomocí makra
widget:
{control vp}
Připojené soubory
- visualpaginator.zip 6 kB
Komentáře 
bas87 | 8. 3. 2011, 15:48 | comment
Archív obsahuje zapomenutý adresář s „.svn“
neologyc | 13. 8. 2011, 17:10 | comment
Pro PHP 5.3 s namespace a Nette 2.0 je potřeba do VisualPagination.php přidat:
use Nette\Application\UI\Control; use Nette\Utils\Paginator;
Hoodas | 16. 10. 2011, 22:19 | bug
Co verze 2.0 bez namespace? I po změně z extends Control na NControll A řádku 46: $this->paginator = new Paginator; na $this->paginator = new NPaginator; mi to háže chyby se scházejícíma proměnnýma … Jsem newbieeee… ZA info díky.

HosipLan | 27. 11. 2010, 9:12 | comment
<?php public function createComponentVp($name) {
$vp = new VisualPaginator($this, $name);
…
return $vp; } ?>