upgrade.txt 8.19 KB
Newer Older
1
2
3
This files describes API changes in /course/*,
information provided here is intended especially for developers.

4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
=== 4.0 ===

* The format_base is now deprecated. Use core_course\course_format instead.
* The new course output components deprecate many renderer methods from course
renderer and course format renderer:
  - output\course_format: to render the general course structure
  - output\section_format: to render a section
  - output\cm_format: to render an activity card inside a section
  - output\course_format\*: to render parts of the course structure
  - output\section_format\*: to render parts of the course section
* The previous format renderer page_title method has been moved to course_format::page_title
* New format renderer methods to interact with the new output components:
  - render: override the default templatable mustache location for the new course components.
  - course_section_updated_cm_item: used when the course editor needs to update a cm item HTML.
  - render_course_format: contrib formats should override this method to change the default template.
* The following methods are adapted to use outputs but with a deprecation warning and should not be used anymore:
  - print_single_section_page (replaced by output\course_format)
  - print_multiple_section_page (replaced by output\course_format)
  - course_activity_clipboard (integrated in replaced by output\course_format)
  - format_summary_text (replaced by output\section_format\summay)
  - change_number_sections (replaced by output\course_format\addsection)
  - course_section_cm_list_item (replaced by output\section_format\cmitem)
  - course_section_cm (replaced by output\cm_format)
  - course_section_cm_list (replaced by output\section_format\cmlist)
  - section_edit_control_menu (replaced by output\section_format\controlmenu)
  - section_right_content (integrated in output\section_format)
  - section_left_content (integrated in output\section_format)
  - section_header (replaced by output\section_format\header)
  - section_footer (integrated in output\section_format)
  - section_edit_control_items (replaced by output\section_format\controlmenu)
  - section_summary (replaced by output\section_format\summary)
  - section_activity_summary (replaced by output\section_format\cmsummary)
  - section_availability_message (integrated in output\section_format\availability)
  - section_availability (replaced by output\section_format\availability)
  - get_nav_links (replaced by output\course_format\sectionnavigation)
  - stealth_section_header (replaced by output\section_format\header)
  - stealth_section_footer (integrated in by output\section_format)
  - section_nav_selection (replaced by output\course_format\sectionselector)
* The following abstract methods are deleted:
  - start_section_list (integrated in output\course_format)
  - end_section_list (integrated in output\course_format)
  - page_title (moved to output\course_format)

47
48
49
=== 3.11 ===
* A new callback xxx_coursemodule_definition_after_data that allows plugins to extend activity forms after the data is set.

50
=== 3.10 ===
51
52

* The function make_categories_options() has now been deprecated. Please use \core_course_category::make_categories_list() instead.
53
* External function core_course_external::get_course_contents now returns a new field contextid with the module context id.
54
55
* The core_course_external class methods get_courses(), get_courses_by_field() and search_courses() now return a "valueraw" property
  for each custom course field, which contains the original/unformatted version of the custom field value.
56

57
58
59
=== 3.9 ===

* The function get_module_metadata is now deprecated. Please use \core_course\local\service\content_item_service instead.
60
* Activity module names are now PARAM_ALPHANUM instead of PARAM_ALPHA so integers can be used in activity module names
61
62
63
64
65
66
67
68
69
* The following functions have been added to core_course_renderer class to have more granularity. They can be overriden in
  extending classes:
  - course_name
  - course_enrolment_icons
  - course_summary
  - course_contacts
  - course_overview_files
  - course_category_name
  - course_custom_fields
70

71
=== 3.8 ===
72

73
74
* The following functions have been finally deprecated and can not be used any more:
  - core_course_external::get_activities_overview
75
76
77
* External function core_course_external::get_enrolled_courses_by_timeline_classification now also supports the classification
  'allincludinghidden' which delivers all courses including hidden courses. The classification 'all' still returns all courses
  without hidden courses.
78

79
=== 3.7 ===
80

81
82
 * The course pattern function in course_summary_exporter::get_course_pattern has been moved to $OUTPUT->get_generated_image_for_id.
 * The course color function in course_summary_exporter::coursecolor has been moved to $OUTPUT->get_generated_color_for_id.
83
84
 * External function core_course_external::get_course_contents new returns the following additional completiondata field:
   - valueused (indicates whether the completion state affects the availability of other content)
85
 * External function core_course_external::get_course_contents now returns a new contentsinfo field with summary files information.
86
87
 * External function core_course_external::get_course_contents now returns an additional field "tags" returning the content tags.

88
89
=== 3.6 ===

90
 * External function core_course_external::get_course_public_information now returns the roles and the primary role of course
91
   contacts.
92
93
94
95
 * External function core_course_external::get_course_contents now return the following additional file fields:
   - onclick (onclick javascript action code)
   - afterlink (after link info to be displayed)
   - customdata (module custom data (JSON encoded))
96
97
   - completion (to indicate if completion is enabled or not)
   - completiondata (completion status for the current user in the module)
98
 * External function core_group_external::get_course_user_groups now can return all user courses group information.
99

100
=== 3.5 ===
101

102
 * There is a new capability 'moodle/course:setforcedlanguage' to control which users can force the course
103
   language; create_course and update_course functions delegate access control to the caller code; if you
104
   are calling those functions you may be interested in checking if the logged in user has 'moodle/course:setforcedlanguage' capability.
105

106
107
108
=== 3.3 ===

 * External function core_course_external::get_courses_by_field now returns the course filters list and status.
109
 * External function core_course_external::get_courses_by_field now returns the end date of the course.
110
111
112
113
114
 * External function core_course_external::get_course_contents now return the following additional file fields:
   - mimetype (the file mime type)
   - isexternalfile (if is a file reference to a external repository)
   - repositorytype (the repository name in case is a external file)
   Those fields are VALUE_OPTIONAL for backwards compatibility.
115
116
117
 * External function core_course_external::get_course_contents now return the following fields for section and modules:
   - uservisible (whether the section or module is visible by the user)
   - availabilityinfo (availability information if the course or module has any access restriction set
118

119
120
121
=== 3.2 ===

 * External function core_course_external::get_course_contents now returns the section's number in the course (new section field).
122
 * External function core_course_external::get_course_contents now returns if a section is hidden in the course format.
123
124
125
 * External functions that were returning file information now return the following file fields:
   filename, filepath, mimetype, filesize, timemodified and fileurl.
   Those fields are now marked as VALUE_OPTIONAL for backwards compatibility.
126
127
128
129
130
131
 * The modchooser now uses a renderable and a template, thus its associated renderer
   methods have been deprecated. Note that the call to core_course_render::course_modchooser,
   is still required. Deprecated methods:
   - core_course_renderer::course_modchooser_module_types
   - core_course_renderer::course_modchooser_module
   - core_course_renderer::course_modchooser_title
132
133
 * You can now specify a course end date when calling core_course_external::create_courses and core_course_external::update_courses
   external functions. core_course_external::get_courses external function is now returning courses end date values.