MDL-50860 core: improve creation of random strings
[moodle.git] / enrol / upgrade.txt
blobbd321bd42867aa9b824554cea54a245c0d74e3cd
1 This files describes API changes in /enrol/* - plugins,
2 information provided here is intended especially for developers.
4 === 2.8 ===
6 * enrol_plugin::instance_deleteable() is deprecated and has been replaced by enrol_plugin::can_delete_instance()
7 * enrol_plugin::can_hide_show_instance() is a new function to control who can hide/show enrolment instances.
8   Returns true by default but plugins must implement their own logic.
10 === 2.6 ===
12 * Enrolment plugin which supports self enrolment should implement can_self_enrol()
13 * Enrolment plugin should implement get_enrol_info() to expose instance information
14   with webservice or external interface.
15 * Webservice core_enrol_get_enrolled_users_with_capability was incorrectly specifing
16   float as the return type for user id. int is the actual returned type and is now
17   reported as such.
19 === 2.5 ===
21 * plugins may use general enrol/editenrolment.php page to let users edit
22   enrolments manually
23 * new support for grade recovery in enrol_plugin::enrol_user() method
25 === 2.4 ===
27 required changes in code:
28 * use role_get_name() or role_fix_names() if you need any role names, using role.name
29   directly from database is not correct any more
30 * new restore support: ENROL_RESTORE_EXACT, ENROL_RESTORE_NOUSERS
31   and ENROL_RESTORE_CLASS were removed, implement new restore_* plugin methods instead
33 other changes and new features:
34 * course enrolment manager now works with disabled plugins too
35 * new support for protected group membership linked to enrol instance
36 * new support for expiry notifications - see enrol_plugin::send_expiry_notifications() method
39 === 2.2 ===
41 required changes in code:
42 * load_temp_role() is deprecated, use load_temp_course_role() instead, temp role not loaded
43 * remove_temp_role() is deprecated, use remove_temp_course_roles() instead
44 * 'user_unenrol_modified' event was renamed to 'user_enrol_modified'
47 === 2.0 ===
49 required changes in code:
50 * enrolment plugins need to be rewritten to use new API - see inline phpdocs and official plugins