/** * @Route("/courses/{cidReq}/{sessionId}") * @Method({"GET"}) * * @param string $cidReq * @param int $id_session * @return Response */ public function indexAction($cidReq, $id_session = null) { $courseCode = api_get_course_id(); $sessionId = api_get_session_id(); $userId = $this->getUser()->getUserId(); $coursesAlreadyVisited = $this->getRequest()->getSession()->get('coursesAlreadyVisited'); $result = $this->autolaunch(); $showAutoLaunchLpWarning = $result['show_autolaunch_lp_warning']; $showAutoLaunchExerciseWarning = $result['show_autolaunch_exercise_warning']; if ($showAutoLaunchLpWarning) { $this->getTemplate()->assign('lp_warning', Display::return_message(get_lang('TheLPAutoLaunchSettingIsONStudentsWillBeRedirectToAnSpecificLP'), 'warning')); } if ($showAutoLaunchExerciseWarning) { $this->getTemplate()->assign('exercise_warning', Display::return_message(get_lang('TheExerciseAutoLaunchSettingIsONStudentsWillBeRedirectToAnSpecificExercise'), 'warning')); } if ($this->isCourseTeacher()) { $editIcons = Display::url(Display::return_icon('edit.png'), $this->generateUrl('course_home.controller:iconListAction', array('course' => api_get_course_id()))); $this->getTemplate()->assign('edit_icons', $editIcons); } if (!isset($coursesAlreadyVisited[$courseCode])) { event_access_course(); $coursesAlreadyVisited[$courseCode] = 1; $this->getRequest()->getSession()->set('coursesAlreadyVisited', $coursesAlreadyVisited); } $this->getRequest()->getSession()->remove('toolgroup'); $this->getRequest()->getSession()->remove('_gid'); $isSpecialCourse = \CourseManager::is_special_course($courseCode); if ($isSpecialCourse) { $autoreg = $this->getRequest()->get('autoreg'); if ($autoreg == 1) { \CourseManager::subscribe_user($userId, $courseCode, STUDENT); } } $script = 'activity.php'; if (api_get_setting('homepage_view') == 'activity' || api_get_setting('homepage_view') == 'activity_big') { $script = 'activity.php'; } elseif (api_get_setting('homepage_view') == '2column') { $script = '2column.php'; } elseif (api_get_setting('homepage_view') == '3column') { $script = '3column.php'; } elseif (api_get_setting('homepage_view') == 'vertical_activity') { $script = 'vertical_activity.php'; } $result = (require_once api_get_path(SYS_CODE_PATH) . 'course_home/' . $script); $toolList = $result['tool_list']; $this->getTemplate()->assign('icons', $result['content']); $introduction = Display::return_introduction_section($this->get('url_generator'), TOOL_COURSE_HOMEPAGE, $toolList); $this->getTemplate()->assign('introduction_text', $introduction); if (api_get_setting('show_session_data') == 'true' && $sessionId) { $sessionInfo = \CourseHome::show_session_data($sessionId); $this->getTemplate()->assign('session_info', $sessionInfo); } $response = $this->get('template')->render_template($this->getTemplatePath() . 'index.tpl'); return new Response($response, 200, array()); }
$my_list = CourseHome::get_tools_category(TOOL_INTERACTION); $list2 = CourseHome::get_tools_category(TOOL_COURSE_PLUGIN); $my_list = array_merge($my_list, $list2); $items = CourseHome::show_tools_category($my_list); $content .= return_block(get_lang('Interaction'), $items, 'course-tools-interaction'); $my_list = CourseHome::get_tools_category(TOOL_ADMIN_PLATFORM); $items = CourseHome::show_tools_category($my_list); $content .= return_block(get_lang('Administration'), $items, 'course-tools-administration'); } elseif (api_is_coach()) { $content .= $pluginExtra; if (api_get_setting('show_session_data') == 'true' && $session_id > 0) { $content .= '<div class="row"> <div class="col-xs-12 col-md-12"> <span class="viewcaption">' . get_lang('SessionData') . '</span> <table class="course_activity_home">'; $content .= CourseHome::show_session_data($session_id); $content .= '</table></div></div>'; } $content .= '<div class="row">'; $my_list = CourseHome::get_tools_category(TOOL_STUDENT_VIEW); $content .= CourseHome::show_tools_category($my_list); $content .= '</div>'; $sessionsCopy = api_get_setting('session.allow_session_course_copy_for_teachers'); if ($sessionsCopy === 'true') { // Adding only maintenance for coaches. $myList = CourseHome::get_tools_category(TOOL_ADMIN_PLATFORM); $onlyMaintenanceList = array(); foreach ($myList as $item) { if ($item['name'] == 'course_maintenance') { $item['link'] = 'course_info/maintenance_coach.php'; $onlyMaintenanceList[] = $item;