Commit | Line | Data |
---|---|---|
e922fe23 PS |
1 | This files describes API changes in /enrol/* - plugins, |
2 | information 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 | ||
53 | required 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 | 59 | other 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 | ||
67 | required 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 | ||
75 | required changes in code: | |
ef8a733a | 76 | * enrolment plugins need to be rewritten to use new API - see inline phpdocs and official plugins |