Ejemplo n.º 1
0
 public function mdi_get_paged($page = 1, $page_size = 50, $paginator_size = 10, $page_num_by_rows = FALSE, $info_object = 'paged', $iterated = FALSE)
 {
     parent::get_paged($page, $page_size, $page_num_by_rows, $info_object, $iterated);
     $paginator = array();
     $paginator_current_index = ($page - 1) % $paginator_size;
     $paginator_begin = $page - $paginator_current_index;
     $total_pages = $this->{$info_object}->total_pages;
     for ($i = 0; $i < $paginator_size; ++$i) {
         if ($paginator_begin + $i > $total_pages) {
             break;
         }
         $attribute = array();
         if ($i == 0) {
             $attribute['begin'] = TRUE;
         }
         if ($i == $paginator_size - 1) {
             $attribute['end'] = TRUE;
         }
         if ($paginator_begin + $i == 1) {
             $attribute['first'] = TRUE;
         }
         if ($paginator_begin + $i == $total_pages) {
             $attribute['last'] = TRUE;
         }
         if ($i == $paginator_current_index) {
             $attribute['current'] = TRUE;
         }
         $paginator[$paginator_begin + $i] = $attribute;
     }
     $this->{$info_object}->paginator = $paginator;
     return $this;
 }