Пример #1
0
 private function populateSpecificFeedbackInline($user_solution, $answer_id, $template)
 {
     require_once 'Modules/TestQuestionPool/classes/feedback/class.ilAssConfigurableMultiOptionQuestionFeedback.php';
     if ($this->object->getSpecificFeedbackSetting() == ilAssConfigurableMultiOptionQuestionFeedback::FEEDBACK_SETTING_CHECKED) {
         foreach ($user_solution as $mc_solution) {
             if (strcmp($mc_solution, $answer_id) == 0) {
                 $fb = $this->object->feedbackOBJ->getSpecificAnswerFeedbackTestPresentation($this->object->getId(), $answer_id);
                 if (strlen($fb)) {
                     $template->setCurrentBlock("feedback");
                     $template->setVariable("FEEDBACK", $this->object->prepareTextareaOutput($fb, true));
                     $template->parseCurrentBlock();
                 }
             }
         }
     }
     if ($this->object->getSpecificFeedbackSetting() == ilAssConfigurableMultiOptionQuestionFeedback::FEEDBACK_SETTING_ALL) {
         $fb = $this->object->feedbackOBJ->getSpecificAnswerFeedbackTestPresentation($this->object->getId(), $answer_id);
         if (strlen($fb)) {
             $template->setCurrentBlock("feedback");
             $template->setVariable("FEEDBACK", $this->object->prepareTextareaOutput($fb, true));
             $template->parseCurrentBlock();
         }
     }
     if ($this->object->getSpecificFeedbackSetting() == ilAssConfigurableMultiOptionQuestionFeedback::FEEDBACK_SETTING_CORRECT) {
         $answer = $this->object->getAnswer($answer_id);
         if ($answer->getPoints() > 0) {
             $fb = $this->object->feedbackOBJ->getSpecificAnswerFeedbackTestPresentation($this->object->getId(), $answer_id);
             if (strlen($fb)) {
                 $template->setCurrentBlock("feedback");
                 $template->setVariable("FEEDBACK", $this->object->prepareTextareaOutput($fb, true));
                 $template->parseCurrentBlock();
             }
         }
     }
 }