|
@@ -99,6 +99,8 @@ function import_exercise($file)
|
|
|
return 'UplZipCorrupt';
|
|
|
}
|
|
|
|
|
|
+ $baseWorkDir = $baseWorkDir.$uploadPath;
|
|
|
+
|
|
|
|
|
|
$exerciseHandle = opendir($baseWorkDir);
|
|
|
$file_found = false;
|
|
@@ -174,6 +176,7 @@ function import_exercise($file)
|
|
|
|
|
|
$exercise->save();
|
|
|
$last_exercise_id = $exercise->selectId();
|
|
|
+ $courseId = api_get_course_int_id();
|
|
|
if (!empty($last_exercise_id)) {
|
|
|
|
|
|
foreach ($exercise_info['question'] as $question_array) {
|
|
@@ -195,18 +198,23 @@ function import_exercise($file)
|
|
|
|
|
|
if (isset($question_array['category'])) {
|
|
|
$category = formatText(strip_tags($question_array['category']));
|
|
|
- $categoryId = TestCategory::get_category_id_for_title(
|
|
|
- $category,
|
|
|
- api_get_course_int_id()
|
|
|
- );
|
|
|
-
|
|
|
- if (!empty($categoryId)) {
|
|
|
- $question->category = $categoryId;
|
|
|
- } else {
|
|
|
- $cat = new TestCategory();
|
|
|
- $cat->name = $category;
|
|
|
- $cat->description = '';
|
|
|
- $question->category = $cat->save();
|
|
|
+ if (!empty($category)) {
|
|
|
+ $categoryId = TestCategory::get_category_id_for_title(
|
|
|
+ $category,
|
|
|
+ $courseId
|
|
|
+ );
|
|
|
+
|
|
|
+ if (empty($categoryId)) {
|
|
|
+ $cat = new TestCategory();
|
|
|
+ $cat->name = $category;
|
|
|
+ $cat->description = '';
|
|
|
+ $categoryId = $cat->save($courseId);
|
|
|
+ if ($categoryId) {
|
|
|
+ $question->category = $categoryId;
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ $question->category = $categoryId;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -214,8 +222,8 @@ function import_exercise($file)
|
|
|
$description .= $question_array['description'];
|
|
|
}
|
|
|
$question->updateDescription($description);
|
|
|
-
|
|
|
$question->save($last_exercise_id);
|
|
|
+
|
|
|
$last_question_id = $question->selectId();
|
|
|
|
|
|
$answer = new Answer($last_question_id);
|