You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<?php /** * @copyright NetMonsters <team@netmonsters.ru> * @link http://netmonsters.ru * @package Majestic * @subpackage app * @since 2010-03-07 * @version SVN: $Id$ * @filesource $URL$ */
class PagerAction extends Action { public $page; public $last_page; protected $offset = 0; protected $count = 0; protected $limit;
public function __construct($count, $limit = 20) { $this->count = $count; $this->limit = $limit; parent::__construct(); } protected function execute() { $this->last_page = ceil($this->count / $this->limit); if (Env::Get('p') == 'last') { $page = $this->last_page; } else { $page = (int) Env::Get('p'); } $this->page = ($page <= $this->last_page && $page > 0) ? $page : 1; $this->offset = $this->limit * ($this->page - 1); }
public function getOffset() { return $this->offset; }
public function getLimit() { return $this->limit; } protected function getTemplate() { $template = ($this->template) ? $this->template : substr(get_class($this), 0, -6/*strlen('Action')*/); return '/actions/' . $template; } }
|