Пример #1
0
 /**
  * Get the current page for the request.
  *
  * @param  int  $lastPage
  * @return int
  */
 protected function calculateCurrentPage($lastPage)
 {
     $page = $this->env->getCurrentPage();
     // The page number will get validated and adjusted if it either less than one
     // or greater than the last page available based on the count of the given
     // items array. If it's greater than the last, we'll give back the last.
     if (is_numeric($page) and $page > $lastPage) {
         return $lastPage > 0 ? $lastPage : 1;
     }
     return $this->isValidPageNumber($page) ? $page : 1;
 }
Пример #2
0
 /**
  * Create a paginator for an un-grouped pagination statement.
  *
  * @param  Illuminate\Pagination\Environment  $paginator
  * @param  int    $perPage
  * @param  array  $columns
  * @return Illuminate\Pagination\Paginator
  */
 protected function ungroupedPaginate($paginator, $perPage, $columns)
 {
     $total = $this->getPaginationCount();
     // Once we have the total number of records to be paginated, we can grab the
     // current page and the result array. Then we are ready to create a brand
     // new Paginator instances for the results which will create the links.
     $page = $paginator->getCurrentPage();
     $results = $this->forPage($page, $perPage)->get($columns);
     return $paginator->make($results, $total, $perPage);
 }
Пример #3
0
 /**
  * Get a paginator for an ungrouped statement.
  *
  * @param  Illuminate\Pagination\Environment  $paginator
  * @param  int    $perPage
  * @param  array  $columns
  * @return Illuminate\Pagination\Paginator
  */
 protected function ungroupedPaginate($paginator, $perPage, $columns)
 {
     $total = $this->query->getPaginationCount();
     // Once we have the paginator we need to set the limit and offset values for
     // the query so we can get the properly paginated items. Once we have an
     // array of items we can create the paginator instances for the items.
     $page = $paginator->getCurrentPage();
     $this->query->forPage($page, $perPage);
     return $paginator->make($this->get($columns)->all(), $total, $perPage);
 }