} $treeOptions = array('truncateNames' => 25, 'selectedNode' => $currentUnit['id']); //$_professor_ ? $treeOptions['edit'] = 1 : $treeOptions['edit'] = 0; $ruleCheck = true; if ($_student_ && $_change_ && $currentLesson->options['tracking']) { //$currentUser -> setSeenUnit($currentUnit, $currentLesson, 1); //$currentContent -> markSeenNodes($currentUser); //$userProgress = EfrontStats :: getUsersLessonStatus($currentLesson, $currentUser -> user['login']); //$userProgress = $userProgress[$currentLesson -> lesson['id']][$currentUser -> user['login']]; $seenContent = EfrontStats::getStudentsSeenContent($currentLesson->lesson['id'], $currentUser->user['login']); $seenContent = $seenContent[$currentLesson->lesson['id']][$currentUser->user['login']]; $userProgress = EfrontStats::lightGetUserStatusInLesson($_SESSION['s_login'], $currentLesson, $seenContent, $visitableIterator); $smarty->assign("T_SEEN_UNIT", in_array($currentUnit['id'], array_keys($seenContent))); //Notify smarty whether the student has seen the current unit if ($currentLesson->options['rules']) { $ruleCheck = $currentContent->checkRules($currentUnit['id'], $seenContent); } if ($ruleCheck !== true) { $message = $ruleCheck; $message_type = 'failure'; $smarty->assign("T_RULE_CHECK_FAILED", true); $ruleCheck = false; } $smarty->assign("T_USER_PROGRESS", $userProgress); } if ($_student_) { if (preg_match("#</object>#", $currentUnit['data']) || preg_match("#</applet>#", $currentUnit['data'])) { $smarty->assign("T_CONTAINS_FLASH", true); } //$smarty -> assign("T_NEXT_LESSON", $currentLesson -> getNextLesson()); //$userTimeInUnit = EfrontTimes::formatTimeForReporting($times->getUserSessionTimeInUnit($currentUser->user['login'], $currentUnit['id']));