From 980e85cd4408b7ee0ddaef58f7303d5609f5d37a Mon Sep 17 00:00:00 2001 From: cescobedo Date: Mon, 23 Apr 2018 14:31:40 +0200 Subject: [PATCH] MDL-61915 enrol: Add privacy implementation for all enrol plugins None of the Enrol plugins (except lti and paypal) have any user preference or database table. They all implement the null provider. --- enrol/category/classes/privacy/provider.php | 41 +++++++++++++++++++ enrol/category/lang/en/enrol_category.php | 1 + enrol/cohort/classes/privacy/provider.php | 41 +++++++++++++++++++ enrol/cohort/lang/en/enrol_cohort.php | 1 + enrol/database/classes/privacy/provider.php | 41 +++++++++++++++++++ enrol/database/lang/en/enrol_database.php | 1 + enrol/flatfile/classes/privacy/provider.php | 41 +++++++++++++++++++ enrol/flatfile/lang/en/enrol_flatfile.php | 1 + enrol/guest/classes/privacy/provider.php | 41 +++++++++++++++++++ enrol/guest/lang/en/enrol_guest.php | 1 + .../classes/privacy/provider.php | 41 +++++++++++++++++++ .../lang/en/enrol_imsenterprise.php | 1 + enrol/ldap/classes/privacy/provider.php | 41 +++++++++++++++++++ enrol/ldap/lang/en/enrol_ldap.php | 1 + enrol/manual/classes/privacy/provider.php | 41 +++++++++++++++++++ enrol/manual/lang/en/enrol_manual.php | 1 + enrol/meta/classes/privacy/provider.php | 41 +++++++++++++++++++ enrol/meta/lang/en/enrol_meta.php | 1 + enrol/mnet/classes/privacy/provider.php | 41 +++++++++++++++++++ enrol/mnet/lang/en/enrol_mnet.php | 1 + enrol/self/classes/privacy/provider.php | 41 +++++++++++++++++++ enrol/self/lang/en/enrol_self.php | 1 + 22 files changed, 462 insertions(+) create mode 100644 enrol/category/classes/privacy/provider.php create mode 100644 enrol/cohort/classes/privacy/provider.php create mode 100644 enrol/database/classes/privacy/provider.php create mode 100644 enrol/flatfile/classes/privacy/provider.php create mode 100644 enrol/guest/classes/privacy/provider.php create mode 100644 enrol/imsenterprise/classes/privacy/provider.php create mode 100644 enrol/ldap/classes/privacy/provider.php create mode 100644 enrol/manual/classes/privacy/provider.php create mode 100644 enrol/meta/classes/privacy/provider.php create mode 100644 enrol/mnet/classes/privacy/provider.php create mode 100644 enrol/self/classes/privacy/provider.php diff --git a/enrol/category/classes/privacy/provider.php b/enrol/category/classes/privacy/provider.php new file mode 100644 index 00000000000..47ced3ec322 --- /dev/null +++ b/enrol/category/classes/privacy/provider.php @@ -0,0 +1,41 @@ +. +/** + * Privacy Subsystem implementation for enrol_category. + * + * @package enrol_category + * @copyright 2018 Carlos Escobedo + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +namespace enrol_category\privacy; +defined('MOODLE_INTERNAL') || die(); +/** + * Privacy Subsystem for enrol_category implementing null_provider. + * + * @copyright 2018 Carlos Escobedo + * @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'; + } +} \ No newline at end of file diff --git a/enrol/category/lang/en/enrol_category.php b/enrol/category/lang/en/enrol_category.php index 1c36a0f507f..5e139c486ba 100644 --- a/enrol/category/lang/en/enrol_category.php +++ b/enrol/category/lang/en/enrol_category.php @@ -27,3 +27,4 @@ $string['category:synchronised'] = 'Role assignments synchronised to course enro $string['enrolcategorysynctask'] = 'Category enrolment sync task'; $string['pluginname'] = 'Category enrolments'; $string['pluginname_desc'] = 'The category enrolments plugin synchronises any role assignments in the category context for roles with the capability enrol/category:synchronised allowed.'; +$string['privacy:metadata'] = 'The Category enrolments plugin does not store any personal data.'; diff --git a/enrol/cohort/classes/privacy/provider.php b/enrol/cohort/classes/privacy/provider.php new file mode 100644 index 00000000000..7f0b93246b1 --- /dev/null +++ b/enrol/cohort/classes/privacy/provider.php @@ -0,0 +1,41 @@ +. +/** + * Privacy Subsystem implementation for enrol_cohort. + * + * @package enrol_cohort + * @copyright 2018 Carlos Escobedo + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +namespace enrol_cohort\privacy; +defined('MOODLE_INTERNAL') || die(); +/** + * Privacy Subsystem for enrol_cohort implementing null_provider. + * + * @copyright 2018 Carlos Escobedo + * @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'; + } +} \ No newline at end of file diff --git a/enrol/cohort/lang/en/enrol_cohort.php b/enrol/cohort/lang/en/enrol_cohort.php index 50fdd26ebf4..a1e23cff3b5 100644 --- a/enrol/cohort/lang/en/enrol_cohort.php +++ b/enrol/cohort/lang/en/enrol_cohort.php @@ -33,3 +33,4 @@ $string['pluginname'] = 'Cohort sync'; $string['pluginname_desc'] = 'Cohort enrolment plugin synchronises cohort members with course participants.'; $string['status'] = 'Active'; $string['creategroup'] = 'Create new group'; +$string['privacy:metadata'] = 'The Cohort sync enrolments plugin does not store any personal data.'; diff --git a/enrol/database/classes/privacy/provider.php b/enrol/database/classes/privacy/provider.php new file mode 100644 index 00000000000..eb0c3cd9f2d --- /dev/null +++ b/enrol/database/classes/privacy/provider.php @@ -0,0 +1,41 @@ +. +/** + * Privacy Subsystem implementation for enrol_database. + * + * @package enrol_database + * @copyright 2018 Carlos Escobedo + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +namespace enrol_database\privacy; +defined('MOODLE_INTERNAL') || die(); +/** + * Privacy Subsystem for enrol_database implementing null_provider. + * + * @copyright 2018 Carlos Escobedo + * @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'; + } +} \ No newline at end of file diff --git a/enrol/database/lang/en/enrol_database.php b/enrol/database/lang/en/enrol_database.php index 8fc2e39063d..be21f84eb76 100644 --- a/enrol/database/lang/en/enrol_database.php +++ b/enrol/database/lang/en/enrol_database.php @@ -73,3 +73,4 @@ $string['settingsheadernewcourses'] = 'Creation of new courses'; $string['remoteuserfield_desc'] = 'The name of the field in the remote table that we are using to match entries in the user table.'; $string['templatecourse'] = 'New course template'; $string['templatecourse_desc'] = 'Optional: auto-created courses can copy their settings from a template course. Type here the shortname of the template course.'; +$string['privacy:metadata'] = 'The External database enrolments plugin does not store any personal data.'; diff --git a/enrol/flatfile/classes/privacy/provider.php b/enrol/flatfile/classes/privacy/provider.php new file mode 100644 index 00000000000..5e403cde6bf --- /dev/null +++ b/enrol/flatfile/classes/privacy/provider.php @@ -0,0 +1,41 @@ +. +/** + * Privacy Subsystem implementation for enrol_flatfile. + * + * @package enrol_flatfile + * @copyright 2018 Carlos Escobedo + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +namespace enrol_flatfile\privacy; +defined('MOODLE_INTERNAL') || die(); +/** + * Privacy Subsystem for enrol_flatfile implementing null_provider. + * + * @copyright 2018 Carlos Escobedo + * @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'; + } +} \ No newline at end of file diff --git a/enrol/flatfile/lang/en/enrol_flatfile.php b/enrol/flatfile/lang/en/enrol_flatfile.php index 886192870be..12043aefcc5 100644 --- a/enrol/flatfile/lang/en/enrol_flatfile.php +++ b/enrol/flatfile/lang/en/enrol_flatfile.php @@ -61,3 +61,4 @@ It could look something like this: del, student, 17, CF101 add, student, 21, CF101, 1091115000, 1091215000 '; +$string['privacy:metadata'] = 'The Flat file (CSV) enrolments plugin does not store any personal data.'; diff --git a/enrol/guest/classes/privacy/provider.php b/enrol/guest/classes/privacy/provider.php new file mode 100644 index 00000000000..cf0391992ce --- /dev/null +++ b/enrol/guest/classes/privacy/provider.php @@ -0,0 +1,41 @@ +. +/** + * Privacy Subsystem implementation for enrol_guest. + * + * @package enrol_guest + * @copyright 2018 Carlos Escobedo + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +namespace enrol_guest\privacy; +defined('MOODLE_INTERNAL') || die(); +/** + * Privacy Subsystem for enrol_guest implementing null_provider. + * + * @copyright 2018 Carlos Escobedo + * @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'; + } +} \ No newline at end of file diff --git a/enrol/guest/lang/en/enrol_guest.php b/enrol/guest/lang/en/enrol_guest.php index f536bb211fb..fa97e438323 100644 --- a/enrol/guest/lang/en/enrol_guest.php +++ b/enrol/guest/lang/en/enrol_guest.php @@ -43,3 +43,4 @@ $string['status_help'] = 'This setting determines whether a user can access the $string['status_link'] = 'enrol/guest'; $string['usepasswordpolicy'] = 'Use password policy'; $string['usepasswordpolicy_desc'] = 'Use standard password policy for guest access passwords.'; +$string['privacy:metadata'] = 'The Guest access enrolments plugin does not store any personal data.'; diff --git a/enrol/imsenterprise/classes/privacy/provider.php b/enrol/imsenterprise/classes/privacy/provider.php new file mode 100644 index 00000000000..ad24aaccd5c --- /dev/null +++ b/enrol/imsenterprise/classes/privacy/provider.php @@ -0,0 +1,41 @@ +. +/** + * Privacy Subsystem implementation for enrol_imsenterprise. + * + * @package enrol_imsenterprise + * @copyright 2018 Carlos Escobedo + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +namespace enrol_imsenterprise\privacy; +defined('MOODLE_INTERNAL') || die(); +/** + * Privacy Subsystem for enrol_imsenterprise implementing null_provider. + * + * @copyright 2018 Carlos Escobedo + * @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'; + } +} \ No newline at end of file diff --git a/enrol/imsenterprise/lang/en/enrol_imsenterprise.php b/enrol/imsenterprise/lang/en/enrol_imsenterprise.php index 01caa10ba66..7e4a4444bd7 100644 --- a/enrol/imsenterprise/lang/en/enrol_imsenterprise.php +++ b/enrol/imsenterprise/lang/en/enrol_imsenterprise.php @@ -92,3 +92,4 @@ $string['zeroisnotruncation'] = '0 indicates no truncation'; $string['roles'] = 'Roles'; $string['ignore'] = 'Ignore'; $string['importimsfile'] = 'Import IMS Enterprise file'; +$string['privacy:metadata'] = 'The IMS Enterprise file enrolments plugin does not store any personal data.'; diff --git a/enrol/ldap/classes/privacy/provider.php b/enrol/ldap/classes/privacy/provider.php new file mode 100644 index 00000000000..2354006993d --- /dev/null +++ b/enrol/ldap/classes/privacy/provider.php @@ -0,0 +1,41 @@ +. +/** + * Privacy Subsystem implementation for enrol_ldap. + * + * @package enrol_ldap + * @copyright 2018 Carlos Escobedo + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +namespace enrol_ldap\privacy; +defined('MOODLE_INTERNAL') || die(); +/** + * Privacy Subsystem for enrol_ldap implementing null_provider. + * + * @copyright 2018 Carlos Escobedo + * @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'; + } +} \ No newline at end of file diff --git a/enrol/ldap/lang/en/enrol_ldap.php b/enrol/ldap/lang/en/enrol_ldap.php index e0834e27712..7b4db432235 100644 --- a/enrol/ldap/lang/en/enrol_ldap.php +++ b/enrol/ldap/lang/en/enrol_ldap.php @@ -128,3 +128,4 @@ $string['user_type'] = 'If the group membership contains distinguished names, sp $string['user_type_key'] = 'User type'; $string['version'] = 'The version of the LDAP protocol your server is using'; $string['version_key'] = 'Version'; +$string['privacy:metadata'] = 'The LDAP enrolments plugin does not store any personal data.'; diff --git a/enrol/manual/classes/privacy/provider.php b/enrol/manual/classes/privacy/provider.php new file mode 100644 index 00000000000..20d6f561fc6 --- /dev/null +++ b/enrol/manual/classes/privacy/provider.php @@ -0,0 +1,41 @@ +. +/** + * Privacy Subsystem implementation for enrol_manual. + * + * @package enrol_manual + * @copyright 2018 Carlos Escobedo + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +namespace enrol_manual\privacy; +defined('MOODLE_INTERNAL') || die(); +/** + * Privacy Subsystem for enrol_manual implementing null_provider. + * + * @copyright 2018 Carlos Escobedo + * @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'; + } +} \ No newline at end of file diff --git a/enrol/manual/lang/en/enrol_manual.php b/enrol/manual/lang/en/enrol_manual.php index 1d68899943a..e77ddb5fb56 100644 --- a/enrol/manual/lang/en/enrol_manual.php +++ b/enrol/manual/lang/en/enrol_manual.php @@ -82,3 +82,4 @@ $string['wscannotenrol'] = 'Plugin instance cannot manually enrol a user in the $string['wsnoinstance'] = 'Manual enrolment plugin instance doesn\'t exist or is disabled for the course (id = {$a->courseid})'; $string['wsusercannotassign'] = 'You don\'t have the permission to assign this role ({$a->roleid}) to this user ({$a->userid}) in this course({$a->courseid}).'; $string['manualpluginnotinstalled'] = 'The "Manual" plugin has not yet been installed'; +$string['privacy:metadata'] = 'The Manual enrolments plugin does not store any personal data.'; diff --git a/enrol/meta/classes/privacy/provider.php b/enrol/meta/classes/privacy/provider.php new file mode 100644 index 00000000000..04db729d42d --- /dev/null +++ b/enrol/meta/classes/privacy/provider.php @@ -0,0 +1,41 @@ +. +/** + * Privacy Subsystem implementation for enrol_meta. + * + * @package enrol_meta + * @copyright 2018 Carlos Escobedo + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +namespace enrol_meta\privacy; +defined('MOODLE_INTERNAL') || die(); +/** + * Privacy Subsystem for enrol_meta implementing null_provider. + * + * @copyright 2018 Carlos Escobedo + * @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'; + } +} \ No newline at end of file diff --git a/enrol/meta/lang/en/enrol_meta.php b/enrol/meta/lang/en/enrol_meta.php index e2b43d3e16c..f2a90d02fb4 100644 --- a/enrol/meta/lang/en/enrol_meta.php +++ b/enrol/meta/lang/en/enrol_meta.php @@ -38,3 +38,4 @@ $string['pluginname'] = 'Course meta link'; $string['pluginname_desc'] = 'Course meta link enrolment plugin synchronises enrolments and roles in two different courses.'; $string['syncall'] = 'Synchronise all enrolled users'; $string['syncall_desc'] = 'If enabled all enrolled users are synchronised even if they have no role in parent course, if disabled only users that have at least one synchronised role are enrolled in child course.'; +$string['privacy:metadata'] = 'The Course meta link enrolments plugin does not store any personal data.'; diff --git a/enrol/mnet/classes/privacy/provider.php b/enrol/mnet/classes/privacy/provider.php new file mode 100644 index 00000000000..7af9084c65c --- /dev/null +++ b/enrol/mnet/classes/privacy/provider.php @@ -0,0 +1,41 @@ +. +/** + * Privacy Subsystem implementation for enrol_mnet. + * + * @package enrol_mnet + * @copyright 2018 Carlos Escobedo + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +namespace enrol_mnet\privacy; +defined('MOODLE_INTERNAL') || die(); +/** + * Privacy Subsystem for enrol_mnet implementing null_provider. + * + * @copyright 2018 Carlos Escobedo + * @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'; + } +} \ No newline at end of file diff --git a/enrol/mnet/lang/en/enrol_mnet.php b/enrol/mnet/lang/en/enrol_mnet.php index 2fb3ed0946c..4741841c1a4 100644 --- a/enrol/mnet/lang/en/enrol_mnet.php +++ b/enrol/mnet/lang/en/enrol_mnet.php @@ -35,3 +35,4 @@ $string['remotesubscriber_help'] = 'Select \'All hosts\' to open this course for $string['remotesubscribersall'] = 'All hosts'; $string['roleforremoteusers'] = 'Role for their users'; $string['roleforremoteusers_help'] = 'What role will the remote users from the selected host get.'; +$string['privacy:metadata'] = 'The MNet remote enrolments plugin does not store any personal data.'; diff --git a/enrol/self/classes/privacy/provider.php b/enrol/self/classes/privacy/provider.php new file mode 100644 index 00000000000..53fe8227c09 --- /dev/null +++ b/enrol/self/classes/privacy/provider.php @@ -0,0 +1,41 @@ +. +/** + * Privacy Subsystem implementation for enrol_self. + * + * @package enrol_self + * @copyright 2018 Carlos Escobedo + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +namespace enrol_self\privacy; +defined('MOODLE_INTERNAL') || die(); +/** + * Privacy Subsystem for enrol_self implementing null_provider. + * + * @copyright 2018 Carlos Escobedo + * @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'; + } +} \ No newline at end of file diff --git a/enrol/self/lang/en/enrol_self.php b/enrol/self/lang/en/enrol_self.php index c5aabd62e38..75fc0273466 100644 --- a/enrol/self/lang/en/enrol_self.php +++ b/enrol/self/lang/en/enrol_self.php @@ -121,3 +121,4 @@ $string['welcometocoursetext'] = 'Welcome to {$a->coursename}! If you have not done so already, you should edit your profile page so that we can learn more about you: {$a->profileurl}'; +$string['privacy:metadata'] = 'The Self enrolments plugin does not store any personal data.';