Example #1
0
 /**
  * RequestのPaginator
  * @param \ebi\Request $req
  * @param integer $default_paginate_by
  * @param integer $max_paginate_by
  * @return \ebi\Paginator
  */
 public static function request(\ebi\Request $req, $default_paginate_by = 20, $max_paginate_by = 100)
 {
     $paginate_by = $req->in_vars('paginate_by', $default_paginate_by);
     if ($paginate_by > $max_paginate_by) {
         $paginate_by = $max_paginate_by;
     }
     $self = new self($paginate_by, $req->in_vars('page', 1));
     if ($req->is_vars('order')) {
         $o = $req->in_vars('order');
         $p = $req->in_vars('porder');
         if ($o == $p) {
             if ($o[0] == '-') {
                 $o = substr($o, 1);
             } else {
                 $o = '-' . $o;
             }
             $req->vars('order', $o);
         }
         $self->order($o);
     }
     $self->cp($req->ar_vars());
     return $self;
 }