/** * Return Session Catalogue rendered view * @param string $action * @param string $nameTools * @param array $limit */ public function sessionsList($action, $nameTools, $limit = array()) { $date = isset($_POST['date']) ? $_POST['date'] : date('Y-m-d'); $hiddenLinks = isset($_GET['hidden_links']) ? intval($_GET['hidden_links']) == 1 : false; $limit = isset($limit) ? $limit : getLimitArray(); $countSessions = $this->model->countSessions($date); $sessions = $this->model->browseSessions($date, $limit); $pageTotal = intval(ceil(intval($countSessions) / $limit['length'])); // Do NOT show pagination if only one page or less $cataloguePagination = $pageTotal > 1 ? getCataloguePagination($limit['current'], $limit['length'], $pageTotal) : ''; $sessionsBlocks = $this->getFormatedSessionsBlock($sessions); // Get session list catalogue URL //$sessionUrl = getCourseCategoryUrl(1, $limit['length'], null, 0, 'display_sessions'); // Get session search catalogue URL $courseUrl = getCourseCategoryUrl(1, $limit['length'], null, 0, 'subscribe'); $tpl = new Template(); $tpl->assign('show_courses', CoursesAndSessionsCatalog::showCourses()); $tpl->assign('show_sessions', CoursesAndSessionsCatalog::showSessions()); $tpl->assign('show_tutor', api_get_setting('show_session_coach') === 'true' ? true : false); $tpl->assign('course_url', $courseUrl); $tpl->assign('catalog_pagination', $cataloguePagination); $tpl->assign('hidden_links', $hiddenLinks); $tpl->assign('search_token', Security::get_token()); $tpl->assign('search_date', $date); $tpl->assign('web_session_courses_ajax_url', api_get_path(WEB_AJAX_PATH) . 'course.ajax.php'); $tpl->assign('sessions', $sessionsBlocks); $tpl->assign('already_subscribed_label', $this->getAlreadyRegisteredInSessionLabel()); $contentTemplate = $tpl->get_template('auth/session_catalog.tpl'); $tpl->display($contentTemplate); }
{}, function(responseText, textStatus, XMLHttpRequest) { dialog.dialog({ modal : true, width : 540, height : 400 }); }); //prevent the browser to follow the link return false; }); }); </script>'; } // Get Limit data $limit = getLimitArray(); // Section for the tabs. $this_section = SECTION_COURSES; // Access rights: anonymous users can't do anything useful here. api_block_anonymous_users(); $user_can_view_page = false; //For students if (api_get_setting('allow_students_to_browse_courses') == 'false') { $user_can_view_page = false; } else { $user_can_view_page = true; } //For teachers/admins if (api_is_platform_admin() || api_is_course_admin() || api_is_allowed_to_create_course()) { $user_can_view_page = true; }
/** * Return Session Catalogue rendered view * @param string $action * @param string $nameTools * @param array $limit */ public function sessionsList($action, $nameTools, $limit = array()) { $date = isset($_POST['date']) ? $_POST['date'] : date('Y-m-d'); $hiddenLinks = isset($_GET['hidden_links']) ? intval($_GET['hidden_links']) == 1 : false; $limit = isset($limit) ? $limit : getLimitArray(); $countSessions = $this->model->countSessions($date); $sessions = $this->model->browseSessions($date, $limit); $pageTotal = intval(ceil(intval($countSessions) / $limit['length'])); // Do NOT show pagination if only one page or less $cataloguePagination = $pageTotal > 1 ? getCataloguePagination($limit['current'], $limit['length'], $pageTotal) : ''; $sessionsBlocks = array(); // Get session list catalogue URL $sessionUrl = getCourseCategoryUrl(1, $limit['length'], null, 0, 'display_sessions'); // Get session search catalogue URL $courseUrl = getCourseCategoryUrl(1, $limit['length'], null, 0, 'subscribe'); foreach ($sessions as $session) { $sessionsBlocks[] = array('id' => $session['id'], 'name' => $session['name'], 'nbr_courses' => $session['nbr_courses'], 'nbr_users' => $session['nbr_users'], 'coach_name' => $session['coach_name'], 'is_subscribed' => $session['is_subscribed'], 'icon' => $this->getSessionIcon($session['name']), 'date' => SessionManager::getSessionFormattedDate($session), 'subscribe_button' => $this->getRegisterInSessionButton($session['name'])); } $tpl = new Template(); $tpl->assign('action', $action); $tpl->assign('showCourses', CoursesAndSessionsCatalog::showCourses()); $tpl->assign('showSessions', CoursesAndSessionsCatalog::showSessions()); $tpl->assign('api_get_self', api_get_self()); $tpl->assign('sessionUrl', $sessionUrl); $tpl->assign('courseUrl', $courseUrl); $tpl->assign('nameTools', $nameTools); $tpl->assign('coursesCategoriesList', $this->getCoursesCategoriesBlock(null, false, $limit)); $tpl->assign('cataloguePagination', $cataloguePagination); $tpl->assign('hiddenLinks', $hiddenLinks); $tpl->assign('searchToken', Security::get_token()); $tpl->assign('searchDate', $date); $tpl->assign('web_session_courses_ajax_url', api_get_path(WEB_AJAX_PATH) . 'course.ajax.php'); $tpl->assign('sessions_blocks', $sessionsBlocks); $tpl->assign('already_subscribed_label', $this->getAlreadyRegisterInSessionLabel()); $contentTemplate = $tpl->get_template('auth/sessions_catalog.tpl'); $tpl->display($contentTemplate); }