MDL-54641 enrol: fix trailing whitespace in upgrade.txt
[moodle.git] / enrol / upgrade.txt
CommitLineData
e922fe23
PS
1This files describes API changes in /enrol/* - plugins,
2information provided here is intended especially for developers.
3
4bc38ba9 4=== 3.1 ===
992365f8 5
4bc38ba9 6* core_enrol_external::get_enrolled_users now supports two additional parameters for ordering: sortby and sortdirection.
992365f8
JD
7* Enrolment plugins UI have been consolidated. Plugins can implement use_standard_editing_ui() function
8 and add edit_instance_form() and edit_instance_validation() methods instead of providing their own edit.php and form.
c9f85a10 9 They can then rely on the default implementation of get_action_icons and get_course_navigation. In future this will
992365f8 10 mean they can be called by webservices/user upload tools because they can validate their data.
4bc38ba9 11
080c7d47
MG
12=== 3.0 ===
13
14* Added new events enrol_instance_created, enrol_instance_updated and
15 enrol_instance_deleted . Always trigger them when changing records in the
16 DB table 'enrol'.
5667e602 17* Constant CACHE_COURSE_CONTACTS_TTL was deleted.
b036215a 18* External function core_enrol_external::get_enrolled_users now returns only the viewable participants if the course has groups enabled and no groupid is passed.
080c7d47 19
6d28e2cf
JL
20=== 2.9 ===
21
22* External function core_enrol_external::get_users_courses now returns additional optional fields:
23 - summary: Course summary.
24 - summaryformat: Course summary format.
25 - format: Course format.
26 - showgrades: True if grades are shown, otherwise false.
27 - lang: Forced course language.
28 - enablecompletion: Control or not via completion and activity settings.
29
82f88cab
DP
30=== 2.8 ===
31
32* enrol_plugin::instance_deleteable() is deprecated and has been replaced by enrol_plugin::can_delete_instance()
b5a289c4
DNA
33* enrol_plugin::can_hide_show_instance() is a new function to control who can hide/show enrolment instances.
34 Returns true by default but plugins must implement their own logic.
82f88cab 35
38efca23
RT
36=== 2.6 ===
37
38* Enrolment plugin which supports self enrolment should implement can_self_enrol()
39* Enrolment plugin should implement get_enrol_info() to expose instance information
40 with webservice or external interface.
fb5ce7d3
DP
41* Webservice core_enrol_get_enrolled_users_with_capability was incorrectly specifing
42 float as the return type for user id. int is the actual returned type and is now
43 reported as such.
ee362526 44
59e7cc03
PS
45=== 2.5 ===
46
47* plugins may use general enrol/editenrolment.php page to let users edit
48 enrolments manually
ef8a733a 49* new support for grade recovery in enrol_plugin::enrol_user() method
59e7cc03 50
a2dd56d2
PS
51=== 2.4 ===
52
53required changes in code:
54* use role_get_name() or role_fix_names() if you need any role names, using role.name
55 directly from database is not correct any more
7a7b8a1f
PS
56* new restore support: ENROL_RESTORE_EXACT, ENROL_RESTORE_NOUSERS
57 and ENROL_RESTORE_CLASS were removed, implement new restore_* plugin methods instead
a2dd56d2 58
8c04252c 59other changes and new features:
005e57a2 60* course enrolment manager now works with disabled plugins too
8c04252c
PS
61* new support for protected group membership linked to enrol instance
62* new support for expiry notifications - see enrol_plugin::send_expiry_notifications() method
005e57a2 63
a2dd56d2 64
e922fe23
PS
65=== 2.2 ===
66
67required changes in code:
68* load_temp_role() is deprecated, use load_temp_course_role() instead, temp role not loaded
69* remove_temp_role() is deprecated, use remove_temp_course_roles() instead
358fb4dc 70* 'user_unenrol_modified' event was renamed to 'user_enrol_modified'
ee362526
PS
71
72
73=== 2.0 ===
74
75required changes in code:
ef8a733a 76* enrolment plugins need to be rewritten to use new API - see inline phpdocs and official plugins