Moodle APIs 3.9
Moodle 3.9.13+ (Build: 20220325)
|
Class enrol_guest_plugin. More...
Public Member Functions | |
add_course_navigation ($instancesnode, stdClass $instance) | |
Adds navigation links into course admin block. More... | |
add_default_instance ($course) | |
Add new instance of enrol plugin with default settings. More... | |
add_instance ($course, array $fields=NULL) | |
Add new instance of enrol plugin. More... | |
allow_enrol (stdClass $instance) | |
Does this plugin allow manual enrolments? More... | |
allow_manage (stdClass $instance) | |
Does this plugin allow manual changes in user_enrolments table? More... | |
allow_unenrol (stdClass $instance) | |
Does this plugin allow manual unenrolment of all users? All plugins allowing this must implement 'enrol/xxx:unenrol' capability. More... | |
allow_unenrol_user (stdClass $instance, stdClass $ue) | |
Does this plugin allow manual unenrolment of a specific user? All plugins allowing this must implement 'enrol/xxx:unenrol' capability. More... | |
backup_annotate_custom_fields (backup_enrolments_execution_step $step, stdClass $enrol) | |
Backup execution step hook to annotate custom fields. More... | |
can_add_instance ($courseid) | |
Returns true if the current user can add a new instance of enrolment plugin in course. More... | |
can_delete_instance ($instance) | |
Is it possible to delete enrol instance via standard UI? More... | |
can_edit_instance ($instance) | |
Return whether or not, given the current state, it is possible to edit an instance of this enrolment plugin in the course. More... | |
can_hide_show_instance ($instance) | |
Is it possible to hide/show enrol instance via standard UI? More... | |
can_self_enrol (stdClass $instance, $checkuserenrolment=true) | |
Checks if user can self enrol. More... | |
course_edit_form ($instance, MoodleQuickForm $mform, $data, $context) | |
Adds enrol instance UI to course edit form. More... | |
course_edit_validation ($instance, array $data, $context) | |
Validates course edit form data. More... | |
course_updated ($inserted, $course, $data) | |
Called after updating/inserting course. More... | |
cron () | |
Called for all enabled enrol plugins that returned true from is_cron_required(). More... | |
delete_instance ($instance) | |
Delete course enrol plugin instance, unenrol all users. More... | |
edit_instance_form ($instance, MoodleQuickForm $mform, $context) | |
Add elements to the edit instance form. More... | |
edit_instance_validation ($data, $files, $instance, $context) | |
Perform custom validation of the data used to edit the instance. More... | |
enrol_page_hook (stdClass $instance) | |
Creates course enrol form, checks if form submitted and enrols user if necessary. More... | |
enrol_user (stdClass $instance, $userid, $roleid=null, $timestart=0, $timeend=0, $status=null, $recovergrades=null) | |
Enrol a user using a given enrolment instance. More... | |
get_action_icons (stdClass $instance) | |
Returns edit icons for the page with list of instances. More... | |
get_bulk_operations (course_enrolment_manager $manager) | |
Return an array of enrol_bulk_enrolment_operation objects that define the bulk actions that can be performed on user enrolments by the plugin. More... | |
get_config ($name, $default=NULL) | |
Returns plugin config value. More... | |
get_description_text ($instance) | |
Returns optional enrolment instance description text. More... | |
get_enrol_info (stdClass $instance) | |
Return information for enrolment instance containing list of parameters required for enrolment, name of enrolment plugin etc. More... | |
get_info_icons (array $instances) | |
Returns optional enrolment information icons. More... | |
get_instance_defaults () | |
Get default settings for enrol_guest. More... | |
get_instance_name ($instance) | |
Returns localised name of enrol instance. More... | |
get_manual_enrol_button (course_enrolment_manager $manager) | |
Returns an enrol_user_button that takes the user to a page where they are able to enrol users into the managers course through this plugin. More... | |
get_manual_enrol_link ($instance) | |
Returns link to manual enrol UI if exists. More... | |
get_name () | |
Returns name of this enrol plugin. More... | |
get_newinstance_link ($courseid) | |
Returns link to page which may be used to add new instance of enrolment plugin in course. More... | |
get_unenrolself_link ($instance) | |
Returns list of unenrol links for all enrol instances in course. More... | |
get_user_enrolment_actions (course_enrolment_manager $manager, $ue) | |
Gets an array of the user enrolment actions. More... | |
has_bulk_operations (course_enrolment_manager $manager) | |
Returns true if the plugin has one or more bulk operations that can be performed on user enrolments. More... | |
instance_deleteable ($instance) | |
is_cron_required () | |
Reads version.php and determines if it is necessary to execute the cron job now. More... | |
process_expirations (progress_trace $trace, $courseid=null) | |
Do any enrolments need expiration processing. More... | |
restore_group_member ($instance, $groupid, $userid) | |
Restore user group membership. More... | |
restore_instance (restore_enrolments_structure_step $step, stdClass $data, $course, $oldid) | |
Restore instance and map settings. More... | |
restore_role_assignment ($instance, $roleid, $userid, $contextid) | |
Restore role assignment. More... | |
restore_sync_course ($course) | |
Automatic enrol sync executed during restore. More... | |
restore_user_enrolment (restore_enrolments_structure_step $step, $data, $instance, $userid, $oldinstancestatus) | |
Restore user enrolment. More... | |
roles_protected () | |
Does this plugin assign protected roles are can they be manually removed? More... | |
send_expiry_notifications ($trace) | |
Send expiry notifications. More... | |
set_config ($name, $value) | |
Sets plugin config value. More... | |
show_enrolme_link (stdClass $instance) | |
Does this plugin support some way to user to self enrol? More... | |
sync_user_enrolments ($user) | |
Forces synchronisation of user enrolments. More... | |
try_autoenrol (stdClass $instance) | |
Attempt to automatically enrol current user in course without any interaction, calling code has to make sure the plugin and instance are active. More... | |
try_guestaccess (stdClass $instance) | |
Attempt to automatically gain temporary guest access to course, calling code has to make sure the plugin and instance are active. More... | |
unenrol_user (stdClass $instance, $userid) | |
Enrol a user from a given enrolment instance. More... | |
update_instance ($instance, $data) | |
Update instance of enrol plugin. More... | |
update_status ($instance, $newstatus) | |
Update instance status. More... | |
update_user_enrol (stdClass $instance, $userid, $status=NULL, $timestart=NULL, $timeend=NULL) | |
Store user_enrolments changes and trigger event. More... | |
use_standard_editing_ui () | |
We are a good plugin and don't invent our own UI/validation code path. More... | |
user_delete ($user) | |
Called when user is about to be deleted. More... | |
validate_param_types ($data, $rules) | |
Validate a list of parameter names and types. More... | |
Protected Member Functions | |
get_enroller ($instanceid) | |
Returns the user who is responsible for enrolments for given instance. More... | |
get_status_options () | |
Return an array of valid options for the status. More... | |
load_config () | |
Makes sure config is loaded and cached. More... | |
notify_expiry_enrolled ($user, $ue, progress_trace $trace) | |
Notify user about incoming expiration of their enrolment, it is called only if notification of enrolled users (aka students) is enabled in course. More... | |
notify_expiry_enroller ($eid, $users, progress_trace $trace) | |
Notify person responsible for enrolments that some user enrolments will be expired soon, it is called only if notification of enrollers (aka teachers) is enabled in course. More... | |
Protected Attributes | |
$config = null | |
Class enrol_guest_plugin.
|
inherited |
Adds navigation links into course admin block.
By defaults looks for manage links only.
navigation_node | $instancesnode | |
stdClass | $instance |
void |
enrol_guest_plugin::add_default_instance | ( | $course | ) |
Add new instance of enrol plugin with default settings.
object | $course |
int | id of new instance |
Reimplemented from enrol_plugin.
enrol_guest_plugin::add_instance | ( | $course, | |
array | $fields = NULL |
||
) |
Add new instance of enrol plugin.
object | $course | |
array | instance fields |
int | id of new instance, null if can not be created |
Reimplemented from enrol_plugin.
|
inherited |
Does this plugin allow manual enrolments?
stdClass | $instance | course enrol instance All plugins allowing this must implement 'enrol/xxx:enrol' capability |
bool | - true means user with 'enrol/xxx:enrol' may enrol others freely, false means nobody may add more enrolments manually |
Reimplemented in enrol_manual_plugin.
|
inherited |
Does this plugin allow manual changes in user_enrolments table?
All plugins allowing this must implement 'enrol/xxx:manage' capability
stdClass | $instance | course enrol instance |
bool | - true means it is possible to change enrol period and status in user_enrolments table |
Reimplemented in enrol_flatfile_plugin, enrol_manual_plugin, enrol_paypal_plugin, and enrol_self_plugin.
|
inherited |
Does this plugin allow manual unenrolment of all users? All plugins allowing this must implement 'enrol/xxx:unenrol' capability.
stdClass | $instance | course enrol instance |
bool | - true means user with 'enrol/xxx:unenrol' may unenrol others freely, false means nobody may touch user_enrolments |
Reimplemented in enrol_flatfile_plugin, enrol_lti_plugin, enrol_manual_plugin, enrol_paypal_plugin, and enrol_self_plugin.
|
inherited |
Does this plugin allow manual unenrolment of a specific user? All plugins allowing this must implement 'enrol/xxx:unenrol' capability.
This is useful especially for synchronisation plugins that do suspend instead of full unenrolment.
stdClass | $instance | course enrol instance |
stdClass | $ue | record from user_enrolments table, specifies user |
bool | - true means user with 'enrol/xxx:unenrol' may unenrol this user, false means nobody may touch this user enrolment |
Reimplemented in enrol_cohort_plugin, enrol_database_plugin, enrol_flatfile_plugin, and enrol_meta_plugin.
|
inherited |
Backup execution step hook to annotate custom fields.
backup_enrolments_execution_step | $step | |
stdClass | $enrol |
enrol_guest_plugin::can_add_instance | ( | $courseid | ) |
Returns true if the current user can add a new instance of enrolment plugin in course.
int | $courseid |
boolean |
Reimplemented from enrol_plugin.
enrol_guest_plugin::can_delete_instance | ( | $instance | ) |
Is it possible to delete enrol instance via standard UI?
object | $instance |
bool |
Reimplemented from enrol_plugin.
|
inherited |
Return whether or not, given the current state, it is possible to edit an instance of this enrolment plugin in the course.
Used by the standard editing UI to generate a link to the edit instance form if editing is allowed.
stdClass | $instance |
boolean |
enrol_guest_plugin::can_hide_show_instance | ( | $instance | ) |
Is it possible to hide/show enrol instance via standard UI?
stdClass | $instance |
bool |
Reimplemented from enrol_plugin.
|
inherited |
Checks if user can self enrol.
stdClass | $instance | enrolment instance |
bool | $checkuserenrolment | if true will check if user enrolment is inactive. used by navigation to improve performance. |
bool|string | true if successful, else error message or false |
Reimplemented in enrol_self_plugin.
|
inherited |
Adds enrol instance UI to course edit form.
object | $instance | enrol instance or null if does not exist yet |
MoodleQuickForm | $mform | |
object | $data | |
object | $context | context of existing course or parent category if course does not exist |
void |
|
inherited |
Validates course edit form data.
object | $instance | enrol instance or null if does not exist yet |
array | $data | |
object | $context | context of existing course or parent category if course does not exist |
array | errors array |
enrol_guest_plugin::course_updated | ( | $inserted, | |
$course, | |||
$data | |||
) |
Called after updating/inserting course.
bool | $inserted | true if course just inserted |
object | $course | |
object | $data | form data |
void |
Reimplemented from enrol_plugin.
|
inherited |
Called for all enabled enrol plugins that returned true from is_cron_required().
void |
Reimplemented in enrol_imsenterprise_plugin.
|
inherited |
Delete course enrol plugin instance, unenrol all users.
object | $instance |
void |
Reimplemented in enrol_lti_plugin.
enrol_guest_plugin::edit_instance_form | ( | $instance, | |
MoodleQuickForm | $mform, | ||
$context | |||
) |
Add elements to the edit instance form.
stdClass | $instance | |
MoodleQuickForm | $mform | |
context | $context |
bool |
Reimplemented from enrol_plugin.
enrol_guest_plugin::edit_instance_validation | ( | $data, | |
$files, | |||
$instance, | |||
$context | |||
) |
Perform custom validation of the data used to edit the instance.
array | $data | array of ("fieldname"=>value) of submitted data |
array | $files | array of uploaded files "element_name"=>tmp_file_path |
object | $instance | The instance loaded from the DB |
context | $context | The context of the instance we are editing |
array | of "element_name"=>"error_description" if there are errors, or an empty array if everything is OK. |
void |
Reimplemented from enrol_plugin.
enrol_guest_plugin::enrol_page_hook | ( | stdClass | $instance | ) |
Creates course enrol form, checks if form submitted and enrols user if necessary.
It can also redirect.
stdClass | $instance |
string | html text, usually a form in a text box |
Reimplemented from enrol_plugin.
enrol_guest_plugin::enrol_user | ( | stdClass | $instance, |
$userid, | |||
$roleid = null , |
|||
$timestart = 0 , |
|||
$timeend = 0 , |
|||
$status = null , |
|||
$recovergrades = null |
|||
) |
Enrol a user using a given enrolment instance.
stdClass | $instance | |
int | $userid | |
null | $roleid | |
int | $timestart | |
int | $timeend | |
null | $status | |
null | $recovergrades |
Reimplemented from enrol_plugin.
|
inherited |
Returns edit icons for the page with list of instances.
stdClass | $instance |
array |
Reimplemented in enrol_manual_plugin.
|
inherited |
Return an array of enrol_bulk_enrolment_operation objects that define the bulk actions that can be performed on user enrolments by the plugin.
course_enrolment_manager | $manager |
array |
Reimplemented in enrol_manual_plugin, and enrol_self_plugin.
|
inherited |
Returns plugin config value.
string | $name | |
string | $default | value if config does not exist yet |
string | value or default |
|
inherited |
Returns optional enrolment instance description text.
This is used in detailed course information.
object | $instance |
string | short html text |
enrol_guest_plugin::get_enrol_info | ( | stdClass | $instance | ) |
Return information for enrolment instance containing list of parameters required for enrolment, name of enrolment plugin etc.
stdClass | $instance | enrolment instance |
stdClass | instance info. |
Reimplemented from enrol_plugin.
|
protectedinherited |
Returns the user who is responsible for enrolments for given instance.
Override if plugin knows anybody better than admin.
int | $instanceid | enrolment instance id |
stdClass | user record |
Reimplemented in enrol_flatfile_plugin, enrol_manual_plugin, and enrol_self_plugin.
enrol_guest_plugin::get_info_icons | ( | array | $instances | ) |
Returns optional enrolment information icons.
This is used in course list for quick overview of enrolment options.
We are not using single instance parameter because sometimes we might want to prevent icon repetition when multiple instances of one type exist. One instance may also produce several icons.
array | $instances | all enrol instances of this type in one course |
array | of pix_icon |
Reimplemented from enrol_plugin.
enrol_guest_plugin::get_instance_defaults | ( | ) |
|
inherited |
Returns localised name of enrol instance.
object | $instance | (null is accepted too) |
string |
Reimplemented in enrol_cohort_plugin, enrol_meta_plugin, enrol_mnet_plugin, and enrol_self_plugin.
|
inherited |
Returns an enrol_user_button that takes the user to a page where they are able to enrol users into the managers course through this plugin.
Optional: If the plugin supports manual enrolments it can choose to override this otherwise it shouldn't
course_enrolment_manager | $manager |
enrol_user_button|false |
Reimplemented in enrol_manual_plugin.
|
inherited |
Returns link to manual enrol UI if exists.
Does the access control tests automatically.
object | $instance |
moodle_url |
Reimplemented in enrol_manual_plugin.
|
inherited |
Returns name of this enrol plugin.
string |
|
inherited |
Returns link to page which may be used to add new instance of enrolment plugin in course.
int | $courseid |
moodle_url | page url |
Reimplemented in enrol_category_plugin.
|
protected |
Return an array of valid options for the status.
array |
|
inherited |
Returns list of unenrol links for all enrol instances in course.
int | $instance |
moodle_url | or NULL if self unenrolment not supported |
|
inherited |
Gets an array of the user enrolment actions.
course_enrolment_manager | $manager | |
stdClass | $ue |
array | An array of user_enrolment_actions |
|
inherited |
Returns true if the plugin has one or more bulk operations that can be performed on user enrolments.
course_enrolment_manager | $manager |
bool |
|
inherited |
|
inherited |
Reads version.php and determines if it is necessary to execute the cron job now.
bool |
|
protectedinherited |
Makes sure config is loaded and cached.
void |
|
protectedinherited |
Notify user about incoming expiration of their enrolment, it is called only if notification of enrolled users (aka students) is enabled in course.
This is executed only once for each expiring enrolment right at the start of the expiration threshold.
stdClass | $user | |
stdClass | $ue | |
progress_trace | $trace |
|
protectedinherited |
Notify person responsible for enrolments that some user enrolments will be expired soon, it is called only if notification of enrollers (aka teachers) is enabled in course.
This is called repeatedly every day for each course if there are any pending expiration in the expiration threshold.
int | $eid | |
array | $users | |
progress_trace | $trace |
|
inherited |
Do any enrolments need expiration processing.
Plugins that want to call this functionality must implement 'expiredaction' config setting.
progress_trace | $trace | |
int | $courseid | one course, empty mean all |
bool | true if any data processed, false if not |
|
inherited |
Restore user group membership.
stdClass | $instance | |
int | $groupid | |
int | $userid |
Reimplemented in enrol_cohort_plugin, enrol_manual_plugin, and enrol_meta_plugin.
enrol_guest_plugin::restore_instance | ( | restore_enrolments_structure_step | $step, |
stdClass | $data, | ||
$course, | |||
$oldid | |||
) |
Restore instance and map settings.
restore_enrolments_structure_step | $step | |
stdClass | $data | |
stdClass | $course | |
int | $oldid |
Reimplemented from enrol_plugin.
|
inherited |
Restore role assignment.
stdClass | $instance | |
int | $roleid | |
int | $userid | |
int | $contextid |
Reimplemented in enrol_database_plugin, enrol_flatfile_plugin, enrol_ldap_plugin, enrol_manual_plugin, and enrol_self_plugin.
|
inherited |
Automatic enrol sync executed during restore.
Useful for automatic sync by course->idnumber or course category.
stdClass | $course | course record |
Reimplemented in enrol_category_plugin, enrol_database_plugin, and enrol_ldap_plugin.
|
inherited |
Restore user enrolment.
restore_enrolments_structure_step | $step | |
stdClass | $data | |
stdClass | $instance | |
int | $oldinstancestatus | |
int | $userid |
Reimplemented in enrol_cohort_plugin, enrol_database_plugin, enrol_flatfile_plugin, enrol_ldap_plugin, enrol_manual_plugin, enrol_meta_plugin, enrol_paypal_plugin, and enrol_self_plugin.
|
inherited |
Does this plugin assign protected roles are can they be manually removed?
bool | - false means anybody may tweak roles, it does not use itemid and component when assigning roles |
Reimplemented in enrol_flatfile_plugin, enrol_manual_plugin, enrol_paypal_plugin, and enrol_self_plugin.
|
inherited |
Send expiry notifications.
Plugin that wants to have expiry notification MUST implement following:
progress_trace | $trace | (accepts bool for backwards compatibility only) |
|
inherited |
Sets plugin config value.
string | $name | name of config |
string | $value | string config value, null means delete |
string | value |
|
inherited |
Does this plugin support some way to user to self enrol?
stdClass | $instance | course enrol instance |
bool | - true means show "Enrol me in this course" link in course UI |
Reimplemented in enrol_paypal_plugin, and enrol_self_plugin.
|
inherited |
Forces synchronisation of user enrolments.
This is important especially for external enrol plugins, this function is called for all enabled enrol plugins right after every user login.
object | $user | user record |
void |
Reimplemented in enrol_database_plugin, and enrol_ldap_plugin.
|
inherited |
Attempt to automatically enrol current user in course without any interaction, calling code has to make sure the plugin and instance are active.
This should return either a timestamp in the future or false.
stdClass | $instance | course enrol instance |
bool|int | false means not enrolled, integer means timeend |
enrol_guest_plugin::try_guestaccess | ( | stdClass | $instance | ) |
Attempt to automatically gain temporary guest access to course, calling code has to make sure the plugin and instance are active.
stdClass | $instance | course enrol instance |
bool|int | false means no guest access, integer means end of cached time |
Reimplemented from enrol_plugin.
enrol_guest_plugin::unenrol_user | ( | stdClass | $instance, |
$userid | |||
) |
Enrol a user from a given enrolment instance.
stdClass | $instance | |
int | $userid |
Reimplemented from enrol_plugin.
|
inherited |
Update instance of enrol plugin.
stdClass | $instance | |
stdClass | $data | modified instance fields |
boolean |
Reimplemented in enrol_cohort_plugin, enrol_lti_plugin, enrol_manual_plugin, enrol_meta_plugin, enrol_paypal_plugin, and enrol_self_plugin.
|
inherited |
Update instance status.
Override when plugin needs to do some action when enabled or disabled.
stdClass | $instance | |
int | $newstatus | ENROL_INSTANCE_ENABLED, ENROL_INSTANCE_DISABLED |
void |
Reimplemented in enrol_cohort_plugin, and enrol_meta_plugin.
|
inherited |
Store user_enrolments changes and trigger event.
stdClass | $instance | |
int | $userid | |
int | $status | |
int | $timestart | |
int | $timeend |
void |
enrol_guest_plugin::use_standard_editing_ui | ( | ) |
We are a good plugin and don't invent our own UI/validation code path.
boolean |
Reimplemented from enrol_plugin.
|
inherited |
Called when user is about to be deleted.
object | $user |
void |
|
inherited |
Validate a list of parameter names and types.
array | $data | array of ("fieldname"=>value) of submitted data |
array | $rules | array of ("fieldname"=>PARAM_X types - or "fieldname"=>array( list of valid options ) |
array | of "element_name"=>"error_description" if there are errors, or an empty array if everything is OK. |