diff --git a/backup/cc/entities.class.php b/backup/cc/entities.class.php index e61fe1ee03b..625d390bc3b 100644 --- a/backup/cc/entities.class.php +++ b/backup/cc/entities.class.php @@ -208,9 +208,8 @@ class entities { if (!empty($files)) { foreach ($files as $file) { - - $source = cc2moodle::$path_to_manifest_folder . DIRECTORY_SEPARATOR . $file->nodeValue; - $destination = $destination_folder . DIRECTORY_SEPARATOR . $file->nodeValue; + $source = cc2moodle::$path_to_manifest_folder . DIRECTORY_SEPARATOR . $file; + $destination = $destination_folder . DIRECTORY_SEPARATOR . $file; $destination_directory = dirname($destination); @@ -251,10 +250,9 @@ class entities { if (in_array($ext, array('html', 'htm', 'xhtml'))) { continue; } - $all_files[] = $file; + $all_files[] = $file->nodeValue; } } - unset($files); } @@ -264,8 +262,8 @@ class entities { if (!empty($labels) && ($labels->length > 0)) { $tname = 'course_files'; $dpath = cc2moodle::$path_to_manifest_folder . DIRECTORY_SEPARATOR . $tname; - $fpath = $dpath . DIRECTORY_SEPARATOR . 'folder.gif'; - $rfpath = $tname.'/folder.gif'; + $rfpath = 'folder.gif'; + $fpath = $dpath . DIRECTORY_SEPARATOR . $rfpath; if (!file_exists($dpath)) { mkdir($dpath); diff --git a/backup/cc/entities11.class.php b/backup/cc/entities11.class.php index 96c0873dfb3..9af9f3c89c0 100644 --- a/backup/cc/entities11.class.php +++ b/backup/cc/entities11.class.php @@ -51,7 +51,7 @@ class entities11 extends entities { if (in_array($ext, array('html', 'htm', 'xhtml'))) { continue; } - $all_files[] = $file; + $all_files[] = $file->nodeValue; } unset($files); } @@ -62,8 +62,8 @@ class entities11 extends entities { if (!empty($labels) && ($labels->length > 0)) { $tname = 'course_files'; $dpath = cc2moodle::$path_to_manifest_folder . DIRECTORY_SEPARATOR . $tname; + $rfpath = 'folder.gif'; $fpath = $dpath . DIRECTORY_SEPARATOR . 'folder.gif'; - $rfpath = $tname.'/folder.gif'; if (!file_exists($dpath)) { mkdir($dpath); } diff --git a/backup/cc/entity.quiz.class.php b/backup/cc/entity.quiz.class.php index 34e9b273eab..4bb8c32b839 100644 --- a/backup/cc/entity.quiz.class.php +++ b/backup/cc/entity.quiz.class.php @@ -276,6 +276,7 @@ class cc_quiz extends entities { '[#question_text#]', '[#question_type#]', '[#question_general_feedback#]', + '[#question_defaultgrade#]', '[#date_now#]', '[#question_type_nodes#]', '[#question_stamp#]', @@ -308,6 +309,7 @@ class cc_quiz extends entities { self::safexml($question['title']), $question_moodle_type, self::safexml($question['feedback']), + $question['defaultgrade'], //default grade time(), $question_type_node, $quiz_stamp, @@ -368,6 +370,7 @@ class cc_quiz extends entities { $questions[$question_identifier]['moodle_type'] = $question_type['moodle']; $questions[$question_identifier]['cc_type'] = $question_type['cc']; $questions[$question_identifier]['feedback'] = $this->get_general_feedback($assessment, $question_identifier); + $questions[$question_identifier]['defaultgrade'] = $this->get_defaultgrade($assessment, $question_identifier); $questions[$question_identifier]['answers'] = $this->get_answers($question_identifier, $assessment, $last_answer_id); } @@ -395,6 +398,21 @@ class cc_quiz extends entities { } } + private function get_defaultgrade($assessment, $question_identifier) { + $result = 1; + $xpath = cc2moodle::newx_path($assessment, cc2moodle::getquizns()); + $query = '//xmlns:item[@ident="' . $question_identifier . '"]'; + $query .= '//xmlns:qtimetadatafield[xmlns:fieldlabel="cc_weighting"]/xmlns:fieldentry'; + $defgrade = $xpath->query($query); + if (!empty($defgrade) && ($defgrade->length > 0)) { + $resp = (int)$defgrade->item(0)->nodeValue; + if ($resp >= 0 && $resp <= 99) { + $result = $resp; + } + } + return $result; + } + private function get_general_feedback ($assessment, $question_identifier) { $xpath = cc2moodle::newx_path($assessment, cc2moodle::getquizns()); diff --git a/backup/cc/entity11.quiz.class.php b/backup/cc/entity11.quiz.class.php index 83e50d177fe..9472607ead9 100644 --- a/backup/cc/entity11.quiz.class.php +++ b/backup/cc/entity11.quiz.class.php @@ -276,6 +276,7 @@ class cc11_quiz extends entities11 { '[#question_text#]', '[#question_type#]', '[#question_general_feedback#]', + '[#question_defaultgrade#]', '[#date_now#]', '[#question_type_nodes#]', '[#question_stamp#]', @@ -308,6 +309,7 @@ class cc11_quiz extends entities11 { self::safexml($question['title']), $question_moodle_type, self::safexml($question['feedback']), + $question['defaultgrade'], time(), $question_type_node, $quiz_stamp, @@ -368,6 +370,7 @@ class cc11_quiz extends entities11 { $questions[$question_identifier]['moodle_type'] = $question_type['moodle']; $questions[$question_identifier]['cc_type'] = $question_type['cc']; $questions[$question_identifier]['feedback'] = $this->get_general_feedback($assessment, $question_identifier); + $questions[$question_identifier]['defaultgrade'] = $this->get_defaultgrade($assessment, $question_identifier); $questions[$question_identifier]['answers'] = $this->get_answers($question_identifier, $assessment, $last_answer_id); } @@ -395,6 +398,21 @@ class cc11_quiz extends entities11 { } } + private function get_defaultgrade($assessment, $question_identifier) { + $result = 1; + $xpath = cc2moodle::newx_path($assessment, cc2moodle::getquizns()); + $query = '//xmlns:item[@ident="' . $question_identifier . '"]'; + $query .= '//xmlns:qtimetadatafield[xmlns:fieldlabel="cc_weighting"]/xmlns:fieldentry'; + $defgrade = $xpath->query($query); + if (!empty($defgrade) && ($defgrade->length > 0)) { + $resp = (int)$defgrade->item(0)->nodeValue; + if ($resp >= 0 && $resp <= 99) { + $result = $resp; + } + } + return $result; + } + private function get_general_feedback ($assessment, $question_identifier) { $xpath = cc112moodle::newx_path($assessment, cc112moodle::getquizns()); diff --git a/backup/cc/sheets/course_question_categories_question_category_question.xml b/backup/cc/sheets/course_question_categories_question_category_question.xml index 99028c41574..a0fb3f179bc 100644 --- a/backup/cc/sheets/course_question_categories_question_category_question.xml +++ b/backup/cc/sheets/course_question_categories_question_category_question.xml @@ -6,7 +6,7 @@ 1 [#question_general_feedback#] - 1 + [#question_defaultgrade#] 0 [#question_type#] 1