public function doFromObject($dbObject, KalturaDetachedResponseProfile $responseProfile = null) { parent::doFromObject($dbObject, $responseProfile); $dbEntry = entryPeer::retrieveByPK($dbObject->getEntryId()); if (!QuizPlugin::validateUserEntitledForQuizEdit($dbEntry)) { /** * @var kQuiz $kQuiz */ $kQuiz = QuizPlugin::validateAndGetQuiz($dbEntry); $dbUserEntry = UserEntryPeer::retrieveByPK($this->quizUserEntryId); if ($dbUserEntry && $dbUserEntry->getStatus() == QuizPlugin::getCoreValue('UserEntryStatus', QuizUserEntryStatus::QUIZ_SUBMITTED)) { if (!$kQuiz->getShowCorrectAfterSubmission()) { $this->isCorrect = KalturaNullableBoolean::NULL_VALUE; $this->correctAnswerKeys = null; $this->explanation = null; } } else { if (!$kQuiz->getShowResultOnAnswer()) { $this->isCorrect = KalturaNullableBoolean::NULL_VALUE; } if (!$kQuiz->getShowCorrectKeyOnAnswer()) { $this->correctAnswerKeys = null; $this->explanation = null; } } } }
public function doFromObject($dbObject, KalturaDetachedResponseProfile $responseProfile = null) { parent::doFromObject($dbObject, $responseProfile); $this->optionalAnswers = KalturaOptionalAnswersArray::fromDbArray($dbObject->getOptionalAnswers(), $responseProfile); $dbEntry = entryPeer::retrieveByPK($dbObject->getEntryId()); if (!QuizPlugin::validateUserEntitledForQuizEdit($dbEntry)) { foreach ($this->optionalAnswers as $answer) { $answer->isCorrect = KalturaNullableBoolean::NULL_VALUE; } $this->explanation = null; } }