Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 4.3.x will end 7 October 2024 (12 months).
  • Bug fixes for security issues in 4.3.x will end 21 April 2025 (18 months).
  • PHP version: minimum PHP 8.0.0 Note: minimum PHP version has increased since Moodle 4.1. PHP 8.2.x is supported too.

Differences Between: [Versions 310 and 403] [Versions 311 and 403] [Versions 39 and 403] [Versions 400 and 403]

Privacy Subsystem implementation for core_analytics.

Copyright: 2018 David MonllaĆ³
License: http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
File Size: 524 lines (24 kb)
Included or required:0 times
Referenced: 0 times
Includes or requires: 0 files

Defines 1 class


Class: provider  - X-Ref

Privacy Subsystem for core_analytics implementing metadata and plugin providers.

get_metadata(collection $collection)   X-Ref
Returns meta data about this system.

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_models_with_user_data()   X-Ref
Returns a list of models with user data.

return: \core_analytics\model[]

analytics_prediction_actions_user_sql($userid, $modelids, $contextsql = false)   X-Ref
Returns the sql query to query analytics_prediction_actions table by user ID.

param: int $userid The user ID of the analytics prediction.
param: int[] $modelids Model IDs to include in the SQL.
param: string $contextsql Optional "in or equal" SQL to also query by context ID(s).
return: array sql string in [0] and params in [1].

analytics_prediction_actions_context_sql($contextid, $modelids, $usersql = false)   X-Ref
Returns the sql query to query analytics_prediction_actions table by context ID.

param: int $contextid The context ID of the analytics prediction.
param: int[] $modelids Model IDs to include in the SQL.
param: string $usersql Optional "in or equal" SQL to also query by user ID(s).
return: array sql string in [0] and params in [1].