MDL-57455 mod_data: Import and export tags
[moodle.git] / mod / data / import.php
index 03f4815..c2c0c37 100644 (file)
@@ -116,7 +116,7 @@ if (!$formdata = $form->get_data()) {
         $errorfield = '';
         $safetoskipfields = array(get_string('user'), get_string('username'), get_string('email'),
             get_string('timeadded', 'data'), get_string('timemodified', 'data'),
         $errorfield = '';
         $safetoskipfields = array(get_string('user'), get_string('username'), get_string('email'),
             get_string('timeadded', 'data'), get_string('timemodified', 'data'),
-            get_string('approved', 'data'));
+            get_string('approved', 'data'), get_string('tags', 'data'));
         foreach ($fieldnames as $name => $id) {
             if (!isset($rawfields[$name])) {
                 if (!in_array($name, $safetoskipfields)) {
         foreach ($fieldnames as $name => $id) {
             if (!isset($rawfields[$name])) {
                 if (!in_array($name, $safetoskipfields)) {
@@ -156,6 +156,21 @@ if (!$formdata = $form->get_data()) {
                         $DB->insert_record('data_content', $content);
                     }
                 }
                         $DB->insert_record('data_content', $content);
                     }
                 }
+
+                if (core_tag_tag::is_enabled('mod_data', 'data_records') &&
+                        isset($fieldnames[get_string('tags', 'data')])) {
+                    $columnindex = $fieldnames[get_string('tags', 'data')];
+                    $rawtags = $record[$columnindex];
+                    $tags = explode(',', $rawtags);
+                    foreach ($tags as $tag) {
+                        $tag = trim($tag);
+                        if (empty($tag)) {
+                            continue;
+                        }
+                        core_tag_tag::add_item_tag('mod_data', 'data_records', $recordid, $context, $tag);
+                    }
+                }
+
                 $recordsadded++;
                 print get_string('added', 'moodle', $recordsadded) . ". " . get_string('entry', 'data') . " (ID $recordid)<br />\n";
             }
                 $recordsadded++;
                 print get_string('added', 'moodle', $recordsadded) . ". " . get_string('entry', 'data') . " (ID $recordid)<br />\n";
             }