private function listPublicGroups($offset) { $sql = "SELECT * FROM groups WHERE active=1 AND type <> 'private' "; require_once FRAMEWORK_PATH . 'lib/pagination/pagination.class.php'; $pagination = new Pagination($this->registry); $pagination->setQuery($sql); $pagination->setOffset($offset); $pagination->setLimit(20); $pagination->setMethod('cache'); $pagination->generatePagination(); if ($pagination->getNumRowsPage() == 0) { $this->registry->getObject('template')->buildFromTemplates('header.tpl.php', 'groups/no-public.tpl.php', 'footer.tpl.php'); } else { $this->registry->getObject('template')->buildFromTemplates('header.tpl.php', 'groups/public.tpl.php', 'footer.tpl.php'); $this->registry->getObject('template')->getPage()->addTag('groups', array('SQL', $pagination->getCache())); $this->registry->getObject('template')->getPage()->addTag('page_number', $pagination->getCurrentPage()); $this->registry->getObject('template')->getPage()->addTag('num_pages', $pagination->getNumPages()); if ($pagination->isFirst()) { $this->registry->getObject('template')->getPage()->addTag('first', ''); $this->registry->getObject('template')->getPage()->addTag('previous', ''); } else { $this->registry->getObject('template')->getPage()->addTag('first', "<a href='groups/'>First page</a>"); $this->registry->getObject('template')->getPage()->addTag('previous', "<a href='groups/" . ($pagination->getCurrentPage() - 2) . "'>Previous page</a>"); } if ($pagination->isLast()) { $this->registry->getObject('template')->getPage()->addTag('next', ''); $this->registry->getObject('template')->getPage()->addTag('last', ''); } else { $this->registry->getObject('template')->getPage()->addTag('first', "<a href='groups/" . $pagination->getCurrentPage() . "'>Next page</a>"); $this->registry->getObject('template')->getPage()->addTag('previous', "<a href='groups/" . ($pagination->getNumPages() - 1) . "'>Last page</a>"); } } }
/** * Search for members based on their name * @param String $filter name * @param int $offset the offset * @return Object pagination object */ public function filterMembersByName($filter = '', $offset = 0) { $filter = $this->registry->getObject('db')->sanitizeData(urldecode($filter)); require_once FRAMEWORK_PATH . 'lib/pagination/pagination.class.php'; $paginatedMembers = new Pagination($this->registry); $paginatedMembers->setLimit(25); $paginatedMembers->setOffset($offset); $query = "SELECT u.ID, u.username, p.name, p.dino_name, p.dino_gender, p.dino_breed FROM users u, profile p WHERE p.user_id=u.ID AND u.active=1 AND u.banned=0 AND u.deleted=0 AND p.name LIKE'%" . $filter . "%' ORDER BY p.name ASC"; $paginatedMembers->setQuery($query); $paginatedMembers->setMethod('cache'); $paginatedMembers->generatePagination(); return $paginatedMembers; }
$user = new User(); $pagination = new Pagination(); // get the actual pagenumber (for pagination) if (isset($_GET['page'])) { $page = intval($_GET['page']); } else { $page = 1; } // config pagination class $pagination->setTable('users'); $pagination->setPageLink('users.php'); $pagination->setLimit(10); $pagination->setPage($page); $pagination->setTotal(); $pagination->setPages(); $pagination->setOffset(); // get the users data as array (for view) $users = $pagination->getData(); ?> <!-- content wrapper --> <div class="container-full"> <!-- page row --> <div class="row"> <!-- sidebar --> <div class="col-sm-2 sidebar-wrapper"> <ul class="sidebar-nav"> <li class="sidebar-brand"> <a href="#">