MDL-69973 xmldb: Fix problem with MariaDB >= 10.2.7 metadata defaults
[moodle.git] / course / upgrade.txt
blob45dc3a15c6300d78368d90aa42840a91a5520c09
1 This files describes API changes in /course/*,
2 information provided here is intended especially for developers.
4 === 3.9 ===
6 * The function get_module_metadata is now deprecated. Please use \core_course\local\service\content_item_service instead.
7 * Activity module names are now PARAM_ALPHANUM instead of PARAM_ALPHA so integers can be used in activity module names
8 * The following functions have been added to core_course_renderer class to have more granularity. They can be overriden in
9   extending classes:
10   - course_name
11   - course_enrolment_icons
12   - course_summary
13   - course_contacts
14   - course_overview_files
15   - course_category_name
16   - course_custom_fields
18 === 3.8 ===
20 * The following functions have been finally deprecated and can not be used any more:
21   - core_course_external::get_activities_overview
22 * External function core_course_external::get_enrolled_courses_by_timeline_classification now also supports the classification
23   'allincludinghidden' which delivers all courses including hidden courses. The classification 'all' still returns all courses
24   without hidden courses.
26 === 3.7 ===
28  * The course pattern function in course_summary_exporter::get_course_pattern has been moved to $OUTPUT->get_generated_image_for_id.
29  * The course color function in course_summary_exporter::coursecolor has been moved to $OUTPUT->get_generated_color_for_id.
30  * External function core_course_external::get_course_contents new returns the following additional completiondata field:
31    - valueused (indicates whether the completion state affects the availability of other content)
32  * External function core_course_external::get_course_contents now returns a new contentsinfo field with summary files information.
33  * External function core_course_external::get_course_contents now returns an additional field "tags" returning the content tags.
35 === 3.6 ===
37  * External function core_course_external::get_course_public_information now returns the roles and the primary role of course
38    contacts.
39  * External function core_course_external::get_course_contents now return the following additional file fields:
40    - onclick (onclick javascript action code)
41    - afterlink (after link info to be displayed)
42    - customdata (module custom data (JSON encoded))
43    - completion (to indicate if completion is enabled or not)
44    - completiondata (completion status for the current user in the module)
45  * External function core_group_external::get_course_user_groups now can return all user courses group information.
47 === 3.5 ===
49  * There is a new capability 'moodle/course:setforcedlanguage' to control which users can force the course
50    language; create_course and update_course functions delegate access control to the caller code; if you
51    are calling those functions you may be interested in checking if the logged in user has 'moodle/course:setforcedlanguage' capability.
53 === 3.3 ===
55  * External function core_course_external::get_courses_by_field now returns the course filters list and status.
56  * External function core_course_external::get_courses_by_field now returns the end date of the course.
57  * External function core_course_external::get_course_contents now return the following additional file fields:
58    - mimetype (the file mime type)
59    - isexternalfile (if is a file reference to a external repository)
60    - repositorytype (the repository name in case is a external file)
61    Those fields are VALUE_OPTIONAL for backwards compatibility.
62  * External function core_course_external::get_course_contents now return the following fields for section and modules:
63    - uservisible (whether the section or module is visible by the user)
64    - availabilityinfo (availability information if the course or module has any access restriction set
66 === 3.2 ===
68  * External function core_course_external::get_course_contents now returns the section's number in the course (new section field).
69  * External function core_course_external::get_course_contents now returns if a section is hidden in the course format.
70  * External functions that were returning file information now return the following file fields:
71    filename, filepath, mimetype, filesize, timemodified and fileurl.
72    Those fields are now marked as VALUE_OPTIONAL for backwards compatibility.
73  * The modchooser now uses a renderable and a template, thus its associated renderer
74    methods have been deprecated. Note that the call to core_course_render::course_modchooser,
75    is still required. Deprecated methods:
76    - core_course_renderer::course_modchooser_module_types
77    - core_course_renderer::course_modchooser_module
78    - core_course_renderer::course_modchooser_title
79  * You can now specify a course end date when calling core_course_external::create_courses and core_course_external::update_courses
80    external functions. core_course_external::get_courses external function is now returning courses end date values.