From aa784c4eb4731e765887b164392ca52a574ad9a1 Mon Sep 17 00:00:00 2001
From: Sara Arjona <sara@moodle.com>
Date: Thu, 12 Apr 2018 09:42:36 +0200
Subject: [PATCH 1/3] MDL-61954 gradeimport_csv: Implement privacy API

---
 grade/import/csv/classes/privacy/provider.php | 46 +++++++++++++++++++
 grade/import/csv/lang/en/gradeimport_csv.php  |  1 +
 2 files changed, 47 insertions(+)
 create mode 100644 grade/import/csv/classes/privacy/provider.php

diff --git a/grade/import/csv/classes/privacy/provider.php b/grade/import/csv/classes/privacy/provider.php
new file mode 100644
index 00000000000..8b230fc1701
--- /dev/null
+++ b/grade/import/csv/classes/privacy/provider.php
@@ -0,0 +1,46 @@
+<?php
+// This file is part of Moodle - http://moodle.org/
+//
+// Moodle is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// Moodle is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+
+/**
+ * Privacy Subsystem implementation for gradeimport_csv.
+ *
+ * @package    gradeimport_csv
+ * @copyright  2018 Sara Arjona <sara@moodle.com>
+ * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+
+namespace gradeimport_csv\privacy;
+
+defined('MOODLE_INTERNAL') || die();
+
+/**
+ * Privacy Subsystem for gradeimport_csv implementing null_provider.
+ *
+ * @copyright  2018 Sara Arjona <sara@moodle.com>
+ * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+class provider implements \core_privacy\local\metadata\null_provider {
+
+    /**
+     * Get the language string identifier with the component's language
+     * file to explain why this plugin stores no data.
+     *
+     * @return  string
+     */
+    public static function get_reason() : string {
+        return 'privacy:metadata';
+    }
+}
diff --git a/grade/import/csv/lang/en/gradeimport_csv.php b/grade/import/csv/lang/en/gradeimport_csv.php
index 18c1784f9be..3e2a2090bb8 100644
--- a/grade/import/csv/lang/en/gradeimport_csv.php
+++ b/grade/import/csv/lang/en/gradeimport_csv.php
@@ -25,3 +25,4 @@
 
 $string['csv:view'] = 'Import grades from CSV';
 $string['pluginname'] = 'CSV file';
+$string['privacy:metadata'] = 'The import grades from CSV plugin does not store any personal data.';

From ce0eb44398b2d7d12b70ee5232b68aa927fcfd88 Mon Sep 17 00:00:00 2001
From: Sara Arjona <sara@moodle.com>
Date: Thu, 12 Apr 2018 09:48:52 +0200
Subject: [PATCH 2/3] MDL-61954 gradeimport_direct: Implement privacy API

---
 .../direct/classes/privacy/provider.php       | 46 +++++++++++++++++++
 .../direct/lang/en/gradeimport_direct.php     |  1 +
 2 files changed, 47 insertions(+)
 create mode 100644 grade/import/direct/classes/privacy/provider.php

diff --git a/grade/import/direct/classes/privacy/provider.php b/grade/import/direct/classes/privacy/provider.php
new file mode 100644
index 00000000000..8136bec6926
--- /dev/null
+++ b/grade/import/direct/classes/privacy/provider.php
@@ -0,0 +1,46 @@
+<?php
+// This file is part of Moodle - http://moodle.org/
+//
+// Moodle is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// Moodle is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+
+/**
+ * Privacy Subsystem implementation for gradeimport_direct.
+ *
+ * @package    gradeimport_direct
+ * @copyright  2018 Sara Arjona <sara@moodle.com>
+ * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+
+namespace gradeimport_direct\privacy;
+
+defined('MOODLE_INTERNAL') || die();
+
+/**
+ * Privacy Subsystem for gradeimport_direct implementing null_provider.
+ *
+ * @copyright  2018 Sara Arjona <sara@moodle.com>
+ * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+class provider implements \core_privacy\local\metadata\null_provider {
+
+    /**
+     * Get the language string identifier with the component's language
+     * file to explain why this plugin stores no data.
+     *
+     * @return  string
+     */
+    public static function get_reason() : string {
+        return 'privacy:metadata';
+    }
+}
diff --git a/grade/import/direct/lang/en/gradeimport_direct.php b/grade/import/direct/lang/en/gradeimport_direct.php
index 1218dc029ec..516c5fc2af1 100644
--- a/grade/import/direct/lang/en/gradeimport_direct.php
+++ b/grade/import/direct/lang/en/gradeimport_direct.php
@@ -24,6 +24,7 @@
 
 $string['direct:view'] = 'Import grades from CSV';
 $string['pluginname'] = 'Paste from spreadsheet';
+$string['privacy:metadata'] = 'The import grades from copied spreadsheed plugin does not store any personal data.';
 $string['userdata'] = 'Help copying data into this form.';
 $string['userdata_help'] = 'Grades may be copied and pasted from a spreadsheet into the gradebook. The spreadsheet should have a column containing user identity data - either username or ID number or email address. Each column for import should have a column header.';
 $string['userdata_link'] = 'grade/import/direct/index';

From 3d702cc227bf0b304aec062763e7ed97b155d7e1 Mon Sep 17 00:00:00 2001
From: Sara Arjona <sara@moodle.com>
Date: Thu, 12 Apr 2018 09:49:09 +0200
Subject: [PATCH 3/3] MDL-61954 gradeimport_xml: Implement privacy API

---
 grade/import/xml/classes/privacy/provider.php | 46 +++++++++++++++++++
 grade/import/xml/lang/en/gradeimport_xml.php  |  1 +
 2 files changed, 47 insertions(+)
 create mode 100644 grade/import/xml/classes/privacy/provider.php

diff --git a/grade/import/xml/classes/privacy/provider.php b/grade/import/xml/classes/privacy/provider.php
new file mode 100644
index 00000000000..54f4e465047
--- /dev/null
+++ b/grade/import/xml/classes/privacy/provider.php
@@ -0,0 +1,46 @@
+<?php
+// This file is part of Moodle - http://moodle.org/
+//
+// Moodle is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// Moodle is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
+
+/**
+ * Privacy Subsystem implementation for gradeimport_xml.
+ *
+ * @package    gradeimport_xml
+ * @copyright  2018 Sara Arjona <sara@moodle.com>
+ * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+
+namespace gradeimport_xml\privacy;
+
+defined('MOODLE_INTERNAL') || die();
+
+/**
+ * Privacy Subsystem for gradeimport_xml implementing null_provider.
+ *
+ * @copyright  2018 Sara Arjona <sara@moodle.com>
+ * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
+ */
+class provider implements \core_privacy\local\metadata\null_provider {
+
+    /**
+     * Get the language string identifier with the component's language
+     * file to explain why this plugin stores no data.
+     *
+     * @return  string
+     */
+    public static function get_reason() : string {
+        return 'privacy:metadata';
+    }
+}
diff --git a/grade/import/xml/lang/en/gradeimport_xml.php b/grade/import/xml/lang/en/gradeimport_xml.php
index ae6bc293bf7..5000a0adcb5 100644
--- a/grade/import/xml/lang/en/gradeimport_xml.php
+++ b/grade/import/xml/lang/en/gradeimport_xml.php
@@ -34,6 +34,7 @@ $string['errorduringimport'] = 'An error occurred when trying to import: {$a}';
 $string['fileurl'] = 'Remote file URL';
 $string['fileurl_help'] = 'The remote file URL field is for fetching data from a remote server, such as a student information system.';
 $string['pluginname'] = 'XML file';
+$string['privacy:metadata'] = 'The import grades from XML plugin does not store any personal data.';
 $string['xml:publish'] = 'Publish import grades from XML';
 $string['xml:view'] = 'Import grades from XML';
 $string['importxml'] = 'XML import';