/** * Gets all Question attempts for a given question * * @param string $vQB * @return void * @author Ben Evans */ public static function getAllFromQuestionBase(Model_Quiz_QuestionBase $vQB) { $db = Zend_Registry::get("db"); $vReturn = array(); $sql = "SELECT attempt_id FROM question_attempt WHERE question_basequestion_id=" . $db->quote($vQB->getID()); //echo $sql; $result = $db->query($sql); $rows = $result->fetchAll(); foreach ($rows as $row) { $vReturn[] = Model_Quiz_QuestionAttempt::fromID($row['attempt_id']); } return $vReturn; }
/** * Gets a new Question from the Question Base object provided * @param Model_Quiz_QuestionBase $vQB * @return Model_Quiz_GeneratedQuestion NULL if not defined */ public static function fromQuestionBase($vQB, $path = false) { $db = Zend_Registry::get("db"); //Firstly see if there's any 'spare' Model_Quiz_GeneratedQuestions Model_Shell_Debug::getInstance()->log(" Seeing if there are any Pregenerated Questions for Question Identifier " . $vQB->getID(), __METHOD__); $result = $db->query("SELECT generated_id FROM generated_questions WHERE question_basequestion_id=" . $db->quote($vQB->getID()) . " AND generated_id NOT IN(SELECT generated_questionsgenerated_id AS generated_id FROM question_attempt)"); $row = $result->fetch(); if ($row['generated_id'] != null) { Model_Shell_Debug::getInstance()->log("Found PreGenerated Question with Generated Identifier " . $row['generated_id']); return Model_Quiz_GeneratedQuestion::fromID($row['generated_id']); } return self::generateNewFromQuestionBase($vQB, $path); //Return a new generated question as there are no spares in the database }