Search moodle.org's
Developer Documentation

See Release Notes
Long Term Support Release

  • Bug fixes for general core bugs in 4.1.x will end 13 November 2023 (12 months).
  • Bug fixes for security issues in 4.1.x will end 10 November 2025 (36 months).
  • PHP version: minimum PHP 7.4.0 Note: minimum PHP version has increased since Moodle 4.0. PHP 8.0.x is supported too.

Data provider.

Author: Frédéric Massart <fred@branchup.tech>
Copyright: 2018 Frédéric Massart
License: http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
File Size: 333 lines (13 kb)
Included or required:0 times
Referenced: 0 times
Includes or requires: 0 files

Defines 1 class


Class: provider  - X-Ref

Data provider class.

get_metadata(collection $collection)   X-Ref
Returns metadata.

param: collection $collection The initialised collection to add items to.
return: collection A listing of user data stored through this system.

get_contexts_for_userid(int $userid)   X-Ref
Get the list of contexts that contain user information for the specified user.

param: int $userid The user to search.
return: contextlist $contextlist The contextlist containing the list of contexts used in this plugin.

get_users_in_context(userlist $userlist)   X-Ref
Get the list of users who have data within a context.

param: userlist    $userlist   The userlist containing the list of users who have data in this context/plugin combination.

export_user_data(approved_contextlist $contextlist)   X-Ref
Export all user data for the specified user, in the specified contexts.

param: approved_contextlist $contextlist The approved contexts to export information for.

delete_data_for_all_users_in_context(context $context)   X-Ref
Delete all data for all users in the specified context.

param: context $context The specific context to delete data for.

delete_data_for_user(approved_contextlist $contextlist)   X-Ref
Delete all user data for the specified user, in the specified contexts.

param: approved_contextlist $contextlist The approved contexts and user information to delete information for.

delete_data_for_users(approved_userlist $userlist)   X-Ref
Delete multiple users within a single context.

param: approved_userlist       $userlist The approved context and user information to delete information for.

get_chat_ids_to_cmids_from_cmids(array $cmids)   X-Ref
Return a dict of chat IDs mapped to their course module ID.

param: array $cmids The course module IDs.
return: array In the form of [$chatid => $cmid].

recordset_loop_and_export(moodle_recordset $recordset, $splitkey, $initial,callable $reducer, callable $export)   X-Ref
Loop and export from a recordset.

param: moodle_recordset $recordset The recordset.
param: string $splitkey The record key to determine when to export.
param: mixed $initial The initial data to reduce from.
param: callable $reducer The function to return the dataset, receives current dataset, and the current record.
param: callable $export The function to export the dataset, receives the last value from $splitkey and the dataset.
return: void