Файл: DARK WARS/dark_war/class/pages.class.php
Строк: 30
<?php
class pages {
    var $pages = 0; // количество страниц
    var $posts = 0; // количество пунктов всего
    var $items_per_page = 10; // количество пунктов на одну страницу
    var $this_page = 1; // текущая страница
    function pages($posts = 0) {
        global $player;
        $this->items_per_page = $player->items_page;
        $this->posts = $posts;
    }
    // получение текущей страницы
    function this_page() {
        $this->count();
        if (isset($_GET['page'])) {
            if (is_numeric($_GET['page'])) {
                $this->this_page = max(1, min($this->pages, intval($_GET['page'])));
            } else {
                $this->this_page = 1;
            }
        }
    }
    // старт извлечения из базы
    function my_start() {
        return $this->items_per_page * ($this->this_page - 1);
    }
    // конец
    function end() {
        return $this->items_per_page * $this->this_page;
    }
    // пересчет количества страниц
    function count() {
        if (!$this->posts)
            $this->pages = 1;
        else
            $this->pages = ceil($this->posts / $this->items_per_page);
    }
    // вывод списка страниц
    function listing($link) {
        if ($this->pages > 1) {
            $list = new design();
            $list->assign('link', $link);
            $list->assign('k_page', $this->pages);
            $list->assign('page', $this->this_page);
            $list->display('pages.tpl');
        }
    }
}
?>