コード例 #1
0
ファイル: Paginator.php プロジェクト: WebChemistry/filter
 /**
  * @return array
  */
 public function getSteps()
 {
     if (!$this->steps) {
         $this->paginator->setPage($this->page);
         $this->paginator->setItemsPerPage($this->limit);
         $this->paginator->setItemCount($this->settings->getItemCount());
         $this->paginator->setPage($this->page);
         $paginator = $this->paginator;
         $arr = range(max($paginator->getFirstPage(), $paginator->getPage() - 2), min($paginator->getLastPage(), $paginator->getPage() + 2));
         $count = 2;
         $quotient = ($paginator->getPageCount() - 1) / $count;
         for ($i = 0; $i <= $count; $i++) {
             $arr[] = (int) (round($quotient * $i) + $paginator->getFirstPage());
         }
         sort($arr);
         $this->steps = array_values(array_unique($arr));
     }
     return $this->steps;
 }
コード例 #2
0
ファイル: DataFacade.php プロジェクト: WebChemistry/filter
 /**
  * @return Additional
  */
 public function getAdditional()
 {
     return $this->settings->getAdditional();
 }
コード例 #3
0
 /**
  * @return Paginator
  * @internal
  */
 protected function createComponentPaginator()
 {
     $paginator = $this->settings->getPaginator();
     $paginator->onRender[] = [$this, 'init'];
     return $paginator;
 }