/** * Determine status * * @param integer object id * @param integer user id * @param object object (optional depends on object type) * @return integer status */ function determineStatus($a_obj_id, $a_user_id, $a_obj = null) { $status = self::LP_STATUS_NOT_ATTEMPTED_NUM; include_once "Services/Tracking/classes/class.ilChangeEvent.php"; if (ilChangeEvent::hasAccessed($a_obj_id, $a_user_id)) { $status = self::LP_STATUS_IN_PROGRESS_NUM; include_once "Modules/LearningModule/classes/class.ilLMTracker.php"; $tracker = ilLMTracker::getInstanceByObjId($a_obj_id, $a_user_id); if ($tracker->getAllQuestionsCorrect()) { $status = self::LP_STATUS_COMPLETED_NUM; } } return $status; }
/** * Get tracker * * @return ilLMTracker tracker instance */ function getTracker() { include_once "./Modules/LearningModule/classes/class.ilLMTracker.php"; $tracker = ilLMTracker::getInstance($this->lm->getRefId()); $tracker->setCurrentPage($this->getCurrentPageId()); return $tracker; }
/** * Is node visible? * * @param mixed $a_node node object/array * @return boolean node visible true/false */ function isNodeVisible($a_node) { include_once "./Modules/LearningModule/classes/class.ilLMTracker.php"; return ilLMTracker::_isNodeVisible($a_node); }
/** * Get blocked users * * @return array array of blocked user information */ protected function getBlockedUsers() { include_once "./Modules/LearningModule/classes/class.ilLMTracker.php"; $track = ilLMTracker::getInstance($this->lm->getRefId()); return $bl_users = $track->getBlockedUsersInformation(); }