예제 #1
0
                         if ($tmp_input) {
                             $PROCESSED["qquestion_ids"][] = $tmp_input;
                         } else {
                             add_error("Invalid quiz question ID");
                             application_log("API passed [" . $question_id . "] which is an invalid question ID.");
                         }
                     }
                 } else {
                     add_error("No question IDs were passed to delete.");
                 }
             } else {
                 add_error("Invalid quiz question ID.");
             }
             if (!$ERROR && !empty($PROCESSED["qquestion_ids"])) {
                 foreach ($PROCESSED["qquestion_ids"] as $question_id) {
                     $qquestion = Models_Quiz_Question::fetchRowByID($question_id);
                     if (!$qquestion->fromArray(array("question_active" => "0"))->update()) {
                         add_error("Failed to deactivate question.");
                         applicaiton_log("Failed to deactivate quiz question, DB said: " . $db->ErrorMsg());
                     }
                 }
                 if (!$ERROR) {
                     echo json_encode(array("status" => "success", "data" => array("qquestion_ids" => $PROCESSED["qquestion_ids"])));
                 } else {
                     echo json_encode(array("status" => "error", "data" => array("Failed to delete quiz question.")));
                 }
             }
             break;
     }
     break;
 case "GET":
 *
*/
if (!defined("PARENT_INCLUDED") || !defined("IN_QUIZZES")) {
    exit;
} elseif (!isset($_SESSION["isAuthorized"]) || !$_SESSION["isAuthorized"]) {
    header("Location: " . ENTRADA_URL);
    exit;
} elseif (!$ENTRADA_ACL->amIAllowed('quizquestion', 'update', false)) {
    $ONLOAD[] = "setTimeout('window.location=\\'" . ENTRADA_URL . "/admin/" . $MODULE . "\\'', 15000)";
    $ERROR++;
    $ERRORSTR[] = "Your account does not have the permissions required to use this feature of this module.<br /><br />If you believe you are receiving this message in error please contact <a href=\"mailto:" . html_encode($AGENT_CONTACTS["administrator"]["email"]) . "\">" . html_encode($AGENT_CONTACTS["administrator"]["name"]) . "</a> for assistance.";
    echo display_error();
    application_log("error", "Group [" . $_SESSION["permissions"][$ENTRADA_USER->getAccessId()]["group"] . "] and role [" . $_SESSION["permissions"][$ENTRADA_USER->getAccessId()]["role"] . "] does not have access to this module [" . $MODULE . "]");
} else {
    if ($RECORD_ID) {
        $question = Models_Quiz_Question::fetchRowByID($RECORD_ID);
        $quiz_record = Models_Quiz::fetchRowByID($question->getQuizID());
        if ($quiz_record && $ENTRADA_ACL->amIAllowed(new QuizResource($quiz_record->getQuizID()), "update")) {
            if ($ALLOW_QUESTION_MODIFICATIONS) {
                $BREADCRUMB[] = array("url" => ENTRADA_URL . "/admin/" . $MODULE . "?section=edit&id=" . $quiz_record->getQuizID(), "title" => limit_chars($quiz_record->getQuizTitle(), 32));
                $BREADCRUMB[] = array("url" => ENTRADA_URL . "/admin/" . $MODULE . "?section=edit-question&id=" . $RECORD_ID, "title" => "Edit Quiz Question");
                /**
                 * Load the rich text editor.
                 */
                load_rte("advanced");
                // Error Checking
                switch ($STEP) {
                    case 2:
                        /**
                         * Required field "questiontype_id" / Question Type
                         * Currently only multile choice questions are supported, although