/** * function used to save question * * @global db $dh * * @param array $data question data to be saved in database * @param int $question_id question node id * * @return node id in case of successful insert or boolean */ protected function saveQuestion($data, $question_id = null) { $dh = $GLOBALS['dh']; $data['testo'] = preg_replace(array('#<p[^>]*>#', '#</p>#'), array('', '<br />'), $data['testo']); if (is_null($question_id)) { $question_res = $dh->test_addNode($data); $question_id = $question_res; } else { $question_res = $dh->test_updateNode($question_id, $data); } if ($data['tipo'][1] == ADA_CLOZE_TEST_TYPE && $question_res) { require_once MODULES_TEST_PATH . '/include/question.class.inc.php'; require_once MODULES_TEST_PATH . '/include/questionCloze.class.inc.php'; if ($data['tipo'][3] == ADA_ERASE_TEST_SIMPLICITY) { require_once MODULES_TEST_PATH . '/include/questionEraseCloze.class.inc.php'; QuestionEraseClozeTest::createEraseClozeAnswers($question_id, $data, $this->test); } else { if ($data['tipo'][3] == ADA_SLOT_TEST_SIMPLICITY) { require_once MODULES_TEST_PATH . '/include/questionSlotCloze.class.inc.php'; QuestionSlotClozeTest::createSlotClozeAnswers($question_id, $data, $this->test); } else { if ($data['tipo'][3] == ADA_MULTIPLE_TEST_SIMPLICITY) { require_once MODULES_TEST_PATH . '/include/questionMultipleCloze.class.inc.php'; QuestionMultipleClozeTest::createMultipleClozeAnswers($question_id, $data, $this->test); } else { QuestionClozeTest::createClozeAnswers($question_id, $data, $this->test); } } } } return $question_res; }
/** * Function that automatic creates answers (and save it to database) for cloze question type * ADA_MULTIPLE_TEST_SIMPLICITY version * * @global db $dh * * @param int $question_id * @param array $data question data * @param array $test test record * * @see QuestionEraseClozeTest::createEraseClozeAnswers * @see QuestionClozeTest::createClozeAnswers */ public static function createMultipleClozeAnswers($question_id, $data, $test) { require_once MODULES_TEST_PATH . '/include/questionEraseCloze.class.inc.php'; QuestionEraseClozeTest::createEraseClozeAnswers($question_id, $data, $test); }