} else { if ($course->options['duration'] && $course->course['active_in_course']) { if ($course->course['active_in_course'] < $course->course['start_date']) { $course->course['active_in_course'] = $course->course['start_date']; } $course->course['remaining'] = $course->course['active_in_course'] + $course->options['duration'] * 3600 * 24 - time(); if ($course->course['end_date'] && $course->course['end_date'] < $course->course['active_in_course'] + $course->options['duration'] * 3600 * 24) { $course->course['remaining'] = $course->course['end_date'] - time(); } } else { $course->course['remaining'] = null; } } //Check whether the course registration is expired. If so, set $value['active_in_course'] to false, so that the effect is to appear disabled if ($course->course['duration'] && $course->course['active_in_course'] && $course->course['duration'] * 3600 * 24 + $course->course['active_in_course'] < time()) { $course->archiveCourseUsers($course->course['users_LOGIN']); } if (!$currentUser->user['user_types_ID'] && $course->course['user_type'] != $currentUser->user['user_type'] || $currentUser->user['user_types_ID'] && $course->course['user_type'] != $currentUser->user['user_types_ID']) { $course->course['different_role'] = 1; } $userCourses[$key] = $course; } $options = array('lessons_link' => '#user_type#.php?lessons_ID=', 'courses_link' => $roles[$course->course['user_type']] == 'professor' ? true : false, 'catalog' => false, 'only_progress_link' => true, 'collapse' => $GLOBALS['configuration']['collapse_catalog']); foreach ($loadedModules as $module) { $module->onBeforeShowCoursesTree($userLessons, $userCourses, $userProgress); } if (sizeof($userLessons) > 0 || sizeof($userCourses) > 0) { $smarty->assign("T_DIRECTIONS_TREE", $directionsTree->toHTML(false, $userLessons, $userCourses, $userProgress, $options)); } if (G_VERSIONTYPE != 'community') { #cpp#ifndef COMMUNITY
public function archiveUserCourses($courses) { $courses = $this->verifyCoursesList($courses); foreach ($courses as $course) { $course = new EfrontCourse($course); $course->archiveCourseUsers($this); } $this->courses = false; //Reset users cache return $this->getUserCourses(); }