1 <?php 2 // This file is part of Moodle - http://moodle.org/ 3 // 4 // Moodle is free software: you can redistribute it and/or modify 5 // it under the terms of the GNU General Public License as published by 6 // the Free Software Foundation, either version 3 of the License, or 7 // (at your option) any later version. 8 // 9 // Moodle is distributed in the hope that it will be useful, 10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 // GNU General Public License for more details. 13 // 14 // You should have received a copy of the GNU General Public License 15 // along with Moodle. If not, see <http://www.gnu.org/licenses/>. 16 /** 17 * Privacy Subsystem implementation for auth_manual. 18 * 19 * @package auth_manual 20 * @copyright 2018 Carlos Escobedo <carlos@moodle.com> 21 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 22 */ 23 24 namespace auth_manual\privacy; 25 26 defined('MOODLE_INTERNAL') || die(); 27 28 use \core_privacy\local\request\writer; 29 use \core_privacy\local\metadata\collection; 30 use \core_privacy\local\request\transform; 31 32 /** 33 * Privacy provider for the authentication manual. 34 * 35 * @copyright 2018 Carlos Escobedo <carlos@moodle.com> 36 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 37 */ 38 class provider implements 39 \core_privacy\local\metadata\provider, 40 \core_privacy\local\request\user_preference_provider { 41 42 /** 43 * Returns meta data about this system. 44 * 45 * @param collection $collection The initialised item collection to add items to. 46 * @return collection A listing of user data stored through this system. 47 */ 48 public static function get_metadata(collection $collection) : collection { 49 // There is a one user preference. 50 $collection->add_user_preference('auth_manual_passwordupdatetime', 51 'privacy:metadata:preference:passwordupdatetime'); 52 53 return $collection; 54 } 55 56 /** 57 * Export all user preferences for the plugin. 58 * 59 * @param int $userid The userid of the user whose data is to be exported. 60 */ 61 public static function export_user_preferences(int $userid) { 62 $lastpasswordupdatetime = get_user_preferences('auth_manual_passwordupdatetime', null, $userid); 63 if ($lastpasswordupdatetime !== null) { 64 $time = transform::datetime($lastpasswordupdatetime); 65 writer::export_user_preference('auth_manual', 66 'auth_manual_passwordupdatetime', 67 $time, 68 get_string('privacy:metadata:preference:passwordupdatetime', 'auth_manual') 69 ); 70 } 71 } 72 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body