course)) { error("This category doesn't belong to a valid course!"); } require_login($course->id); if (!isteacher($course->id)) { error("Only the teacher can import quiz questions!"); } $streditingquiz = get_string("editingquiz", "quiz"); $strimportquestions = get_string("importquestions", "quiz"); $strquestions = get_string("questions", "quiz"); print_header("$course->shortname: $strimportquestions", "$course->shortname: $strimportquestions", "wwwroot/course/view.php?id=$course->id\">$course->shortname -> $streditingquiz -> $strimportquestions"); if ($form = data_submitted()) { /// Filename if (!empty($_FILES['newfile'])) { $newfile = $_FILES['newfile']; } if (empty($newfile)) { notify(get_string("uploadproblem") ); } else if (!is_uploaded_file($newfile['tmp_name']) or $newfile['size'] == 0) { notify(get_string("uploadnofilefound") ); } else { if (! is_readable("format/$form->format".".php")) { error("Format not known ($form->format)"); } require("format/$form->format".".php"); $format = new quiz_file_format(); if (! $lines = $format->readdata($newfile['tmp_name'])) { error("File could not be read, or was empty"); } if (! $questions = $format->readquestions($lines)) { error("There are no questions in this file!"); } notify("Importing ".count($questions)." questions"); $count = 0; foreach ($questions as $question) { $count++; echo "
$count. ".stripslashes($question->questiontext)."
"; $question->category = $category->id; if (!$question->id = insert_record("quiz_questions", $question)) { error("Could not insert new question!"); } // Now to save all the answers and type-specific options $result = quiz_save_question_options($question); if (!empty($result->error)) { error($result->error); } if (!empty($result->notice)) { notice($result->notice); } } if (!empty($form->createrandom)) { /// Create a number of random questions $rm->category = $category->id; $rm->questiontext = get_string("randommatchintro", "quiz"); $rm->image = ""; $rm->qtype = RANDOMMATCH; $rm->choose = 4; /// Always 4, for now. echo "$rm->name
"; } } echo "