/** * Run method with main page logic * * Read in album information and photos associated with an album from the database. * Populate template and display results in the page. Pagination possible * @access public */ public function run() { $PAGINATION_LIMIT = 10; $session = Session::getInstance(); $user = $session->getUser(); $albumDAO = AlbumDAO::getInstance(); $photoDAO = PhotoDAO::getInstance(); $album = $photo_array = $photo_count = $paginator_page = $queryVars = null; $title = ""; $page = isset($_GET["page"]) && is_numeric($_GET["page"]) ? intval($_GET["page"]) : 1; if ($page < 1) { $page = 1; } $id = isset($_GET["id"]) && is_numeric($_GET["id"]) ? intval($_GET["id"]) : 0; if ($id <= 0) { header("Location: " . BASE_URL); return; } $album = $albumDAO->load($id, array("joins" => true)); if ($album) { $title = $album->getTitle(); $count = $photoDAO->countByAlbum($album); $paginator = new Paginator($count, $PAGINATION_LIMIT); $paginator_page = $paginator->getPage($page); $photo_array = $photoDAO->allByAlbum($album, array("limit" => $paginator_page)); $queryVars = array("id" => $id); } $this->template->render(array("title" => "View Album - {$title}", "session" => $session, "album" => $album, "photo_array" => $photo_array, "paginator_page" => $paginator_page, "queryVars" => $queryVars, "main_page" => "view_album_tpl.php")); }
public static function GetList($arOrder = array(), $arFilter = array(), $arSelect = array(), $arLimit = array()) { $DB = App::DB(); $arFilter = self::GetFilter($arFilter); if (empty($arOrder)) { $arOrder = array("SORT" => "ASC"); } $arOrder = self::GetSort($arOrder); $tables = array("CATALOG" => self::$table_catalog, "ELEMENT" => self::$table); if (is_array($arLimit) and !empty($arLimit)) { $page = !empty($arLimit['PAGE']) ? (int) $arLimit['PAGE'] : 1; $total_count = self::GetCount($arFilter); $arLimit['COUNT'] = $arLimit['COUNT'] > 0 ? $arLimit['COUNT'] : 3; $pagination = new Paginator($arLimit['PAGE'], $arLimit['COUNT'], $total_count); self::$pagination = $pagination->GetHtml(); $arLimit['OFFSET'] = $pagination->Offset(); } else { $arLimit = array(); self::$pagination = ''; } $sql = getListSql($tables, $arOrder, $arFilter, $arSelect, $arLimit); //d($sql); $res = $DB->Query($sql, "ScriptAcid\\CatalogElementResult"); if ($DB->Error()) { dbError($DB->Error()); return false; } parent::$result = $res; return $res; }
/** * Run method with main page logic * * Read in list of albums and the latest photos for each album. Pagination enabled. * Populate template with data and display results in the page. * @access public */ public function run() { $PAGINATION_LIMIT = 10; $session = Session::getInstance(); $user = $session->getUser(); $albumDAO = AlbumDAO::getInstance(); $photoDAO = PhotoDAO::getInstance(); $page = isset($_GET["page"]) && is_numeric($_GET["page"]) ? intval($_GET["page"]) : 1; if ($page < 1) { $page = 1; } $count = $paginator = $paginator_page = null; $album = $photo_info_array = null; $title = ""; $count = $albumDAO->count(); $paginator = new Paginator($count, $PAGINATION_LIMIT); $paginator_page = $paginator->getPage($page); $album_array = $albumDAO->all(array("limit" => $paginator_page)); $photo_info_array = array(); foreach ($album_array as $album) { $count = $photoDAO->countByAlbum($album); if ($count > 0) { $tmp_paginator = new Paginator($count, 1); $tmp_paginator_page = $paginator->getPage($page); // Only get latest item list($latest_photo) = $photoDAO->allByAlbum($album, array("order" => "id DESC", "limit" => $tmp_paginator_page)); $photo_info_array[] = array($count, $latest_photo); } } $this->template->render(array("title" => "Album List", "main_page" => "album_list_tpl.php", "session" => $session, "album_array" => $album_array, "photo_info_array" => $photo_info_array, "paginator_page" => $paginator_page)); }
function pagination($url = null) { $sql = "SELECT id, first_name, last_name, role, email, active, gender, profile_image,fb_id, created_on FROM user ORDER BY created_on DESC"; $table_page = PATH_ADMIN_VIEWS . "user/paginator/row.php"; $paginator = new \Paginator(); $paginator->execute($sql, $table_page, $url); }
/** * Run method with main page logic * * Read in list of the latest published articles. Pagination enabled. * Populate template and display results in the page. * @access public */ public function run() { $PAGINATION_LIMIT = 10; $session = Session::getInstance(); $user = $session->getUser(); /* if ($user == null || !$user->validUser ()) { header ("Location: " . BASE_URL); return; } */ $articleDAO = ArticleDAO::getInstance(); $tagDAO = ArticleTagDAO::getInstance(); $page = isset($_GET["page"]) && is_numeric($_GET["page"]) ? intval($_GET["page"]) : 1; if ($page < 1) { $page = 1; } $count = $paginator = $paginator_page = null; $article = $articletags_array = null; $title = ""; $count = $articleDAO->countPublished(true); $paginator = new Paginator($count, $PAGINATION_LIMIT); $paginator_page = $paginator->getPage($page); $article_array = $articleDAO->allPublished(true, array("order" => "{$articleDAO->getTableName()}.postDate DESC, {$articleDAO->getTableName()}.id DESC", "limit" => $paginator_page, "joins" => true)); foreach ($article_array as $article) { $articletags_array[] = $tagDAO->allArticleTags($article, array("order" => "name")); } $this->template->render(array("title" => "Latests Articles", "main_page" => "article_list_tpl.php", "session" => $session, "article_array" => $article_array, "articletags_array" => $articletags_array, "paginator_page" => $paginator_page)); }
function pagination($url = null) { $sql = "SELECT id,`name`, `from`, `to`, cc, `subject`, content, `read`, sent_at FROM email"; $table_page = PATH_ADMIN_VIEWS . "email/paginator/row.php"; $paginator = new \Paginator(); $paginator->execute($sql, $table_page, $url); }
/** * (non-PHPdoc) * @see IModel::getTemplateParameters() */ public function getTemplateParameters() { $teamId = $this->_websoccer->getUser()->getClubId($this->_websoccer, $this->_db); // last training executions $lastExecution = TrainingDataService::getLatestTrainingExecutionTime($this->_websoccer, $this->_db, $teamId); $unitsCount = TrainingDataService::countRemainingTrainingUnits($this->_websoccer, $this->_db, $teamId); $paginator = null; $trainers = null; // has valid training unit? $training_unit = TrainingDataService::getValidTrainingUnit($this->_websoccer, $this->_db, $teamId); if (!isset($training_unit["id"])) { // get trainers $count = TrainingDataService::countTrainers($this->_websoccer, $this->_db); $eps = $this->_websoccer->getConfig("entries_per_page"); $paginator = new Paginator($count, $eps, $this->_websoccer); if ($count > 0) { $trainers = TrainingDataService::getTrainers($this->_websoccer, $this->_db, $paginator->getFirstIndex(), $eps); } } else { $training_unit["trainer"] = TrainingDataService::getTrainerById($this->_websoccer, $this->_db, $training_unit["trainer_id"]); } // collect effects of executed training unit $trainingEffects = array(); $contextParameters = $this->_websoccer->getContextParameters(); if (isset($contextParameters["trainingEffects"])) { $trainingEffects = $contextParameters["trainingEffects"]; } return array("unitsCount" => $unitsCount, "lastExecution" => $lastExecution, "training_unit" => $training_unit, "trainers" => $trainers, "paginator" => $paginator, "trainingEffects" => $trainingEffects); }
public function action_index() { $this->_parse_uri(); $category_id = (int) $this->category->id; $list_categories = ORM::factory('catalog_Category')->where('category_id', '=', $category_id)->find_all()->as_array(); $elements_orm = ORM::factory('catalog_Element')->where('category_id', '=', $category_id); $paginator_orm = clone $elements_orm; $paginator = new Paginator('layout/paginator'); $paginator->per_page($this->limit)->count($paginator_orm->count_all()); unset($paginator_orm); $list = $elements_orm->paginator($paginator)->find_all()->as_array(); $properties = array(); if (!empty($category_id)) { $property_helper = ORM_Helper::factory('catalog_Category', $category_id)->property_helper(); $property_helper->set_owner_id($category_id); $properties = $property_helper->get_list(); $titlebar_title = Arr::path($properties, 'Title.value'); if (empty($titlebar_title)) { $titlebar_title = $this->category->title; } } else { $orm_helper = ORM_Helper::factory('page', $this->page_id); $properties = $orm_helper->property_list(); $titlebar_title = Arr::path($properties, 'Title.value'); if (empty($titlebar_title)) { $titlebar_title = __('Categories of goods'); } } $this->template->set_filename('modules/catalog/list')->set('list_categories', $list_categories)->set('list', $list)->set('paginator', $paginator)->set('properties', $properties)->set('titlebar_title', $titlebar_title); }
public function leave() { $smarty = parent::load('smarty'); $leave_form = parent::load('form', 'LeaveForm', $_POST); parent::load('model', 'forms'); parent::load('model', 'system/contrib/auth.User'); if (!$this->is_post()) { import('system/share/web/paginator'); if (User::has_role('人力资源') || User::has_role('总经理')) { $data = Forms::get_by_type_and_user('请假申请'); $smarty->assign('has_role', true); } else { $data = Forms::get_by_type_and_user('请假申请', User::info('id')); } $paginator = new Paginator((array) $data, $_GET['page'], 10); $smarty->assign('paginator', $paginator->output()); $smarty->assign('page_title', '请假申请'); $smarty->assign('leave_form', $leave_form->output()); $smarty->display('forms/leave'); return; } $form_data = new Forms(); $form_data->user_id = User::info('id'); $form_data->state = 0; $form_data->type = '请假申请'; $form_data->form_data = serialize($_POST); $form_data->save(); import('system/share/network/redirect'); HTTPRedirect::flash_to('forms/leave', '提交请假申请成功, 请耐心等待审核', $smarty); }
public function showAction($offset = 0) { $this->_view->title = 'ActiveRecord Database MVC'; $oContentCats = new ContentCats(2); $rsCat = $oContentCats->find(); $oContents = new Contents(); $items_per_page = 15; $offset = $offset % $items_per_page != 0 ? 0 : $offset; $rs = $oContents->find(NULL, 'sort ASC', NULL, "{$offset},{$items_per_page}"); $pages = new Paginator(); $pages->current_url = base_url() . 'active-record/active-record/show/%d'; $pages->offset = $offset; $pages->items_per_page = $items_per_page; $pages->items_total = $oContents->getTotalRow(); $pages->mid_range = 7; $pages->paginate(); $this->_view->pages = $pages; $this->_view->rs = $rs; $this->_view->rsCat = $rsCat; $this->_view->filter_link = base_url() . 'active-record/active-record/show'; $this->_view->add_link = base_url() . 'active-record/active-record/ar-add-model/'; $this->_view->edit_link = base_url() . 'active-record/active-record/ar-edit-model/'; $this->_view->delete_link = base_url() . 'active-record/active-record/ar-delete-model/'; $this->renderView('active-record/active-record/show'); }
public function getDataFromDb($pageNumber) { //new database connection $db = new Database(); // $start = 0; // $limit = 5; //execute query // $db->executeQuery("INSERT INTO cars(id,name,price) VALUES('9','maruti','5400')"); //$db->executeQuery("INSERT INTO test_table(name,email) VALUES('kumaran','*****@*****.**')"); // $db->executeQuery("INSERT INTO fruits(name,color) VALUES('mango','orange')"); // $db->executeQuery("DELETE FROM fruits WHERE color='violet'"); $db->executeQuery("SELECT * FROM first_names"); // $db->executeQuery("DELETE FROM test_table WHERE name='gfdg' OR name='tty' "); // $db->executeQuery("DELETE FROM test_table WHERE name='kumaran'"); //return result array // $db->getAllRows(); // ok $page = new Paginator($db->getAllRows(), 10); //array , limit, pages count [optional. default is 10] $rows = $page->getPage($pageNumber); $this->navLinks = $page->pageCount(); return $rows; // print_r ($db->getRows(1,3)); //ok // print_r($db->getRowAt(1)); // ok // print_r ($db->getRow()); // return first row // print_r($db->affectedRows()); // ok // print_r($db->count()); // ok // print_r($db->lastInsertId()); //ok /* * to escape string * $email="*****@*****.**"; * $db->escapeString($email); */ }
public function action_index() { $category_uri = $this->request->param('category_uri'); $news_category = new News_Category(); $category_list = $news_category->get_list($this->page_id); if (empty($category_list)) { throw new HTTP_Exception_404(); } $category_orm = $news_category->by_uri($category_list, $category_uri); $orm = ORM::factory('news')->where('category_id', 'IN', array_keys($category_list)); if ($category_orm) { $orm->where('category_id', '=', $category_orm->id); $properties = $news_category->get_properties(array($category_orm)); $properties = reset($properties); $this->title = $category_orm->title; $this->breadcrumbs[] = array('title' => $category_orm->title); } else { $orm_helper = ORM_Helper::factory('page', $this->page_id); $properties = $orm_helper->property_list(); } $paginator_orm = clone $orm; $paginator = new Paginator('layout/paginator'); $paginator->per_page($this->limit)->count($paginator_orm->count_all()); unset($paginator_orm); $list = $orm->paginator($paginator)->find_all()->as_array(); $titlebar_title = Arr::path($properties, 'Title.value'); if (empty($titlebar_title)) { $titlebar_title = __('Blog'); } $this->template->set_filename('modules/news/list')->set('list', $list)->set('paginator', $paginator)->set('categories', $category_list)->set('properties', $properties)->set('titlebar_title', $titlebar_title); }
function pagination($url = null) { $sql = "SELECT c.id AS id, comment, u.first_name AS commented_by, u.id AS user_id, commented_at, p.title AS post_title, c.active AS active \n FROM comment c \n LEFT JOIN user u ON c.commented_by = u.id\n LEFT JOIN post p ON c.post_id = p.id"; $table_page = PATH_ADMIN_VIEWS . "comment/paginator/row.php"; $paginator = new \Paginator(); $paginator->execute($sql, $table_page, $url); }
public function index() { $this->view->js_link[] = $this->make_link('js', SITE_ASSETS, 'pages/sidebar_search.js'); $this->view->js_link[] = $this->make_link('js', SITE_ASSETS, 'pages/common.js'); // alapbeállítások lekérdezése $this->view->settings = $this->munkak_model->get_settings(); // 3 legfrissebb munka $this->view->latest_jobs = $this->munkak_model->jobs_query(3); $this->view->title = 'Munka diákoknak | Multijob Iskolaszövetkezet.'; $this->view->description = 'Munka diákoknak a Multijob Iskolaszövetkezetnél. Diákmunka az ország több területén.'; $this->view->keywords = 'diákmunka, alkalmi munka, multijob'; // paginator include LIBS . '/pagine_class.php'; // paginátor objektum létrehozása (paraméter neve, limit) $pagine = new Paginator('oldal', 9); // adatok lekérdezése limittel $this->view->jobs_data = $this->munkak_model->jobs_filter_query($pagine->get_limit(), $pagine->get_offset()); // szűrési feltételeknek megfelelő összes rekord száma $filter_count = $this->munkak_model->jobs_filter_count_query(); $pagine->set_total($filter_count); // lapozó linkek $this->view->pagine_links = $pagine->page_links($this->registry->uri_path); //$this->view->debug(true); $this->view->render('munkak/tpl_munkak'); }
/** * Run method with main page logic * * Read in list of the latest published events and populate template with results. * Display results in the page. Pagination enabled * @access public */ public function run() { $PAGINATION_LIMIT = 10; $session = Session::getInstance(); $user = $session->getUser(); $eventDAO = EventDAO::getInstance(); $page = isset($_GET["page"]) && is_numeric($_GET["page"]) ? intval($_GET["page"]) : 1; $platform_id = isset($_GET["platform"]) && is_numeric($_GET["platform"]) ? intval($_GET["platform"]) : 0; if ($page < 1) { $page = 1; } $count = $paginator = $paginator_page = $queryVars = $current_platform = null; if ($platform_id <= 0) { $count = $eventDAO->countStatus(Event::APPROVED_STATUS); $paginator = new Paginator($count, $PAGINATION_LIMIT); $paginator_page = $paginator->getPage($page); $event_array = $eventDAO->allByStatus(Event::APPROVED_STATUS, array("order" => "{$eventDAO->getTableName()}.date DESC, {$eventDAO->getTableName()}.id DESC", "joins" => true, "limit" => $paginator_page)); } else { $count = $eventDAO->countPlatformStatus($platform_id, Event::APPROVED_STATUS); $paginator = new Paginator($count, $PAGINATION_LIMIT); $paginator_page = $paginator->getPage($page); $event_array = $eventDAO->allByPlatformStatus($platform_id, Event::APPROVED_STATUS, array("order" => "{$eventDAO->getTableName()}.date DESC, {$eventDAO->getTableName()}.id DESC", "joins" => true, "limit" => $paginator_page)); $queryVars = array("platform" => $platform_id); } $platformDAO = PlatformDAO::getInstance(); $platform_array = $platformDAO->all(); //print_r ($event_array); if ($platform_id > 0) { $current_platform = $platformDAO->load($platform_id); } $this->template->render(array("title" => "Event List", "main_page" => "event_list_tpl.php", "event_array" => $event_array, "session" => $session, "paginator_page" => $paginator_page, "sidebar_extra" => joinPath("fragments", "event_sidebar_tpl.php"), "platform_array" => $platform_array, "queryVars" => $queryVars, "current_platform" => $current_platform)); }
public function testPaginationOnlyPage() { $paginator = new Paginator(); $output = $paginator->paginate($this->baseUrl, 100, 1, 100); $this->assertFalse($this->didFindString($output, 'Older Tweets')); $this->assertFalse($this->didFindString($output, 'Newer Tweets')); }
function paginate($dql, $pageSize = 10, $currentPage = 1) { $paginator = new Paginator($dql); $paginator->getQuery()->setFirstResult($pageSize * ($currentPage - 1))->setMaxResults($pageSize); // set the limit return $paginator; }
public function getPage() { $this->current_page = isset($_GET['page']) ? $_GET['page'] : 1; $this->limit = isset($_GET['limit']) ? $_GET['limit'] : 5; $page_nav = new Paginator($this->current_page, $this->limit); $res = $page_nav->getPage(); $this->num_entries = $res['num_entries']; return ['items' => $res['items'], 'page' => $this->current_page]; }
public function index() { $paginator = new Paginator(10, $this->in_vars('page', 1)); if ($this->is_vars('q')) { $paginator->cp(array('q' => $this->in_vars('q'))); } $this->vars('entries', C(PlanetEntry)->find_page($this->in_vars('q'), $paginator, '-updated')); $this->vars('paginator', $paginator); }
public function getTemplateParameters() { $clubId = $this->_websoccer->getUser()->getClubId($this->_websoccer, $this->_db); $count = YouthMatchesDataService::countMatchesOfTeam($this->_websoccer, $this->_db, $clubId); $eps = $this->_websoccer->getConfig("entries_per_page"); $paginator = new Paginator($count, $eps, $this->_websoccer); $matches = YouthMatchesDataService::getMatchesOfTeam($this->_websoccer, $this->_db, $clubId, $paginator->getFirstIndex(), $eps); return array("matches" => $matches, "paginator" => $paginator); }
public function getTemplateParameters() { YouthPlayersDataService::deleteInvalidOpenMatchRequests($this->_websoccer, $this->_db); $count = YouthPlayersDataService::countMatchRequests($this->_websoccer, $this->_db); $eps = $this->_websoccer->getConfig("entries_per_page"); $paginator = new Paginator($count, $eps, $this->_websoccer); $requests = YouthPlayersDataService::getMatchRequests($this->_websoccer, $this->_db, $paginator->getFirstIndex(), $eps); return array("requests" => $requests, "paginator" => $paginator); }
function select_all_vendedores() { include '../resources/paginator.class.php'; $sql = "SELECT * FROM personal ;"; $result = $this->database->query($sql); $result = $this->database->result; $quantity = mysql_num_rows($result); if ($quantity < 1) { echo '<div class="notify"> <p>No hay personal en el sistema!</p> </div>'; } else { $count = 0; while ($row = mysql_fetch_array($result)) { $count++; } $pages = new Paginator(); $pages->items_total = $count; $pages->mid_range = 10; $pages->paginate(); $pages->display_pages(); $sql = "SELECT * FROM personal "; $result = $this->database->query($sql); $result = $this->database->result; while ($row = mysql_fetch_array($result)) { $id = $row['id']; $nombre = $row['nombre']; $apellido = $row['apellido']; $login = $row['login']; $role = $row['role']; $password = $row['password']; switch ($role) { case 1: $role_nombre = "Administrador"; break; case 2: $role_nombre = "Marketing"; break; case 3: $role_nombre = "Ventas"; break; } echo '<div class="item"> <div class="olive-bar"><h4>' . $nombre . ' ' . $apellido . '</h4></div> </div>'; } echo '<div class="navigate">'; echo $pages->display_pages(); // Optional call which will display the page numbers after the results. //$pages->display_jump_menu(); // Optional Ð displays the page jump menu //echo $pages->display_items_per_page(); //Optional Ð displays the items per //echo $pages->current_page . ' of ' .$pages->num_pages.''; echo '</div>'; } }
/** * инициализация * инициализируются сортировщик, пагинатор и данные */ protected function init() { if ($this->sorter) { $this->sorter->init(); } if ($this->paginator) { $this->paginator->init(); } $this->initData(); }
/** * Creates the paginator test. * @param \Attibee\Paginator\Paginator $p the paginator object * @return \Attibee\Paginator\Paginator the paginator object */ protected function createPaginator(Paginator $p = null) { if (!$p) { return null; } $p->setTotalItems(100); $p->setNumberPages(5); $p->setItemsPerPage(5); return $p; }
function pagination($url = null) { $sql = "SELECT p.id AS id, p.title AS title, c.type AS type , c.name AS category_name, NULL AS comments, \n p.posted_at AS posted_at, p.publish AS publish, u.first_name AS posted_by,\n img.thumb_small as thumb_small, img.original as original \n FROM post p \n LEFT JOIN post_category c ON p.post_category_id = c.id\n LEFT JOIN user u ON p.user_id = u.id\n LEFT JOIN image img ON img.id = p.banner_image"; if (!\SKS\LIB\Session::isSuperAdmin()) { $sql .= " WHERE u.id = " . \SKS\LIB\Session::getLoggedInUser()->getId(); } $table_page = PATH_ADMIN_VIEWS . "publish/paginator/row.php"; $paginator = new \Paginator(); $paginator->execute($sql, $table_page, $url); }
public function getFollowers($userId, $params, $limit = null) { if ($limit === null) { $limit = self::DEFAULT_ITEM_LIMIT; } $join = new Sabel_Db_Join("Follower"); $paginator = new Paginator($join->add("Users", "", array("id" => "uid", "fkey" => "user_id"))); $paginator->setCondition("Follower.follow_id", $userId); $paginator->setDefaultOrder("Follower.created_at", "desc"); return $paginator->build($limit, $params); }
public function getPublicStatuses($params, $limit = null) { if ($limit === null) { $limit = self::DEFAULT_ITEM_LIMIT; } $join = new Sabel_Db_Join("Status"); $paginator = new Paginator($join->add("User")); // $paginator->setCondition("User.private_flag", false); $paginator->setDefaultOrder("Status.created_at", "desc"); return $paginator->build($limit, $params); }
public function testSetCursor() { $d11 = $this->collection->createDocument(array('param1' => 1, 'param2' => 1))->save(); $d12 = $this->collection->createDocument(array('param1' => 1, 'param2' => 2))->save(); $d21 = $this->collection->createDocument(array('param1' => 2, 'param2' => 1))->save(); $d22 = $this->collection->createDocument(array('param1' => 2, 'param2' => 2))->save(); $cursor = $this->collection->find(); $pager = new Paginator(); $pager->setItemsOnPage(1)->setCurrentPage(2)->setCursor($cursor); $this->assertEquals($d12->getId(), $pager->key()); }
function pagination($url = null) { $sql = "SELECT i.id AS id, `name`, size, `from`,`date`, original, thumb_small, thumb_medium, thumb_big, u.id AS user_id, u.first_name AS uploaded_by, i.active as active " . " FROM image i LEFT JOIN user u ON u.id = i.user_id "; if (\SKS\LIB\Session::isAuthor()) { $sql .= " WHERE u.id = " . \SKS\LIB\Session::getLoggedInUser()->getId(); } $sql .= " ORDER BY date DESC "; $table_page = PATH_ADMIN_VIEWS . "gallery/paginator/row.php"; $paginator = new \Paginator(); $paginator->execute($sql, $table_page, $url); }
public function getTemplateParameters() { $positionFilter = $this->_websoccer->getRequestParameter("position"); $count = YouthPlayersDataService::countTransferableYouthPlayers($this->_websoccer, $this->_db, $positionFilter); $eps = $this->_websoccer->getConfig("entries_per_page"); $paginator = new Paginator($count, $eps, $this->_websoccer); if ($positionFilter != null) { $paginator->addParameter("position", $positionFilter); } $players = YouthPlayersDataService::getTransferableYouthPlayers($this->_websoccer, $this->_db, $positionFilter, $paginator->getFirstIndex(), $eps); return array("players" => $players, "paginator" => $paginator); }