private function showRecordsPerPage() { $numbers = array(Config::getInstance()->getInt("tablePaging/rowsPerPage", 10), 50, 100, 200); if ($this->getPaging()->getTotalRows() < $numbers[0]) { return; } $body = "Show:"; foreach ($numbers as $number) { if ($number == $this->getPaging()->getRecordsPerPage()) { $recordsNumber = new HTMLElement("span"); $recordsNumber->setBody($number); } else { $recordsNumber = new Link(Href::current()); $recordsNumber->setParam(PagingInfoPrefs::getPageNumberParamName($this->getName()), floor($this->getPaging()->getFirstRecord() / $number)); $recordsNumber->setTitle($number)->setParam(PagingInfoPrefs::getRecordsPerPageParamName($this->getName()), $number); } $body .= $recordsNumber; if ($this->getPaging()->getTotalRows() < $number) { break; } } $recordsPerPageSpan = new HTMLElement("span"); $recordsPerPageSpan->set("class", "recordsPerPage"); $recordsPerPageSpan->setBody($body); echo $recordsPerPageSpan; }
/** * Create a new PagingInfo object, populate with data from the Request. * * @param Context $ctx */ private function createPagingInfo($ctx) { $pagingInfoPrefs = new PagingInfoPrefs($ctx, $this->getName()); $pagingInfo = new PagingInfo(); if ($pagingInfoPrefs->getPageNumber() >= 0) { $pagingInfo->setPageNumber($pagingInfoPrefs->getPageNumber()); } if ($pagingInfoPrefs->getRecodsPerPage() > 0) { $pagingInfo->setRecordsPerPage($pagingInfoPrefs->getRecodsPerPage()); } if ($pagingInfoPrefs->getOrderByColumn() != '') { $pagingInfo->setOrderByColumn($pagingInfoPrefs->getOrderByColumn()); $pagingInfo->setOrderByAscending($pagingInfoPrefs->isOrderByAscending()); } return $pagingInfo; }