Skip to content
Snippets Groups Projects
Select Git revision
  • 4251fbc151da58e287cd66450a116aba7390a604
  • master default protected
  • pymilter-1.0.4
  • pymilter-1.0.3
  • pymilter-1.0.2
  • pymilter-1.0.1
  • pymilter-1_0
  • milter-0_8_18
  • pymilter-0_9_8
  • pymilter-0_9_7
  • pymilter-0_9_6
  • pymilter-0_9_5
  • pymilter-0_9_4
  • pymilter-0_9_2
  • pymilter-0_9_1
  • pymilter-0_9_0
  • pymilter-0_8_12
  • pymilter-0_8_11
  • pymilter-0_8_10
  • pymilter-0_8_9
  • milter-0_8_8
  • milter-0_8_7
22 results

__init__.py

Blame
  • provider.php 19.69 KiB
    <?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/>.
    /**
     * @package   mod_pdfannotator
     * @category  backup
     * @copyright 2018 RWTH Aachen (see README.md)
     * @author    Anna Heynkes
     * @license   http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
     */
    
    namespace mod_pdfannotator\privacy;
    
    defined('MOODLE_INTERNAL') || die();
    
    use \core_privacy\local\request\approved_contextlist;
    use \core_privacy\local\request\deletion_criteria;
    use \core_privacy\local\request\writer;
    use \core_privacy\local\request\helper as request_helper;
    use \core_privacy\local\metadata\collection;
    use \core_privacy\local\request\transform;
    
    /**
     * Description of provider
     *
     * @author Admin
     */
    class provider implements \core_privacy\local\metadata\provider, \core_privacy\local\request\plugin\provider {
    
        /**
         * This function implements the \core_privacy\local\metadata\provider interface.
         *
         * It describes what kind of data is stored by the pdfannotator, including:
         *
         * 1. Items stored in a Moodle subsystem - for example files, and ratings
         * 2. Items stored in the Moodle database
         * 3. User preferences stored site-wide within Moodle for the pdfannotator
         * 4. Data being exported to an external location
         *
         * @param collection $collection
         * @return collection
         */
        public static function get_metadata(collection $collection): collection {
    
            // 1. Indicating that you store content in a Moodle subsystem.
            // 1.1 Files uploaded by users are saved.
            $collection->add_subsystem_link(
                    'core_files', [], 'privacy:metadata:core_files'
            );
    
            // 2. Describing data stored in database tables.
            // 2.1 A user's annotations in the pdf are stored.
            $collection->add_database_table(
                    'pdfannotator_annotations', [
                'userid' => 'privacy:metadata:pdfannotator_annotations:userid',
                'id' => 'privacy:metadata:pdfannotator_annotations:annotationid',
                    ], 'privacy:metadata:pdfannotator_annotations'
            );