Commit | Line | Data |
---|---|---|
0f704140 PS |
1 | This files describes API changes in /theme/* themes, |
2 | information provided here is intended especially for theme designer. | |
edb7d5ad | 3 | |
c10fa5da DW |
4 | === 2.8 === |
5 | ||
6 | * All mod_assign CSS selectors have been qualified with ".path-mod-assign". This means any custom CSS | |
7 | rules for mod_assign in a theme may need to be updated. | |
ebdcb292 SH |
8 | * The following render methods were renamed, if you have overridden any of these you will need to update your renderer: |
9 | - report_log_renderer::render_report_log_renderable => report_log_renderer::render_report_log | |
10 | - report_loglive_renderer::render_report_loglive_renderable => report_loglive_renderer::render_report_log | |
a2a4ad89 | 11 | * On calendar view screen the course selector and new event button have been swapped, custom CSS for .path-calendar might be affected. |
2f6a0e5f MN |
12 | * The functions search_listing() and search_pagination() in the core_course_management_renderer class take the searched string |
13 | as an extra parameter - see MDL-46902. | |
14 | ||
c10fa5da | 15 | |
6b216432 AA |
16 | === 2.7 === |
17 | ||
31f28b6a PŠ |
18 | * CSS related functions in theme class and csslib.php were refactored, addons that are |
19 | using this private API need to be updated | |
6b216432 | 20 | * Please update your css to use 'tr:nth-of-type(odd/even)' instead of '.ro/.r1' to apply tr specific css for various tables. |
98396c23 SH |
21 | These classes are deprecated now and will be removed in Moodle 2.9. This has done to better support styling tables that will be altered by JavaScript. |
22 | Here is an example to update your css: | |
23 | Old code: | |
24 | table.generaltable .r0 {background-color: #F0F0F0;} | |
25 | table.generaltable .r1 {background-color: #F0F0F0;} | |
26 | New code: | |
27 | table.generaltable > tbody > tr:nth-of-type(odd) {background-color: #F0F0F0;} | |
28 | table.generaltable > tbody > tr:nth-of-type(even) {background-color: #F0F0F0;} | |
6b216432 | 29 | |
7a2dabcb FM |
30 | Removed themes: |
31 | * afterburner, anomaly, arialist, binarius, boxxie, brick, formal_white, formfactor, fusion, leatherbound, | |
32 | magazine, nimble, nonzero, overlay, serenity, sky_high, splash, standard and standardold have been removed. | |
33 | During the upgrade process the themes will be uninstalled and all their settings will be deleted. | |
34 | If you wish to keep your theme and its settings, download it from moodle.org and put it back in | |
35 | the theme/ directory BEFORE UPGRADING. | |
6b216432 | 36 | |
71715870 JC |
37 | Notes: |
38 | * z-index on #dock has been adjusted from 11000 to 5000 to prevent overlapping issues with fullscreen TinyMCE in Base theme. | |
39 | ||
699e2fd0 | 40 | === 2.6 === |
3b42864d | 41 | |
7c2efc11 JM |
42 | Removed themes: |
43 | * "My Mobile" theme has been removed (see MDL-40874). | |
44 | During the upgrade process "My Mobile" theme will be uninstalled and all its settings will be deleted. | |
45 | "My Mobile" theme and its extending themes will fallback to the mobile friendly "Clean" theme. | |
46 | If you wish to keep "My Mobile" theme and its settings, BEFORE UPGRADING you can copy the files from the | |
47 | unmaintained plugin into theme/mymobile. | |
48 | The unmaintained plugin can be downloaded at https://moodle.org/plugins/pluginversion.php?id=4563 | |
699e2fd0 | 49 | Notes: |
faf6010b | 50 | * There have been several changes made to the classes used on headings throughout Moodle. |
51 | This was done as per the Moodle HTML guidelines. h1 and h2 elements should have no classes, h3 and lower headings | |
52 | may have descriptive classes only (any classes must properly describe the relation between the header and its content). | |
699e2fd0 | 53 | * The parameters value for the following functions have been modified: core_renderer::heading() and core_renderer::heading_with_help(). |
3b42864d | 54 | This means that headings using the default options will no longer have the class "main" which was the previous default. |
d61c96b6 | 55 | * The file picker and activity chooser have been converted to use M.core.dialogue. This means the styles |
3b42864d RW |
56 | for these elements have changed in the base and bootstrapbase themes and you will need to copy the new styles |
57 | if you are not inheriting from either one of these themes. | |
b4c6b42e | 58 | * For the themes based on bootstrapbase please also read theme/bootstrapbase/upgrade.txt |
e5de4933 SH |
59 | * A new component action_menu is now used to display editing icons for courses and blocks within a drop down. If you have a theme that doesn't |
60 | extend base, canvas, or clean then you will need to style for this new component within your theme. | |
166ac0a3 SH |
61 | * The maintenance layout now has a special renderer that extends the core_renderer in order to prevent some methods from interacting |
62 | with the database. Please be aware that for the maintenance layout some methods now always return an empty string. | |
63 | This has been done because it is important that during maintenance routines we don't show any links, interact with the database, | |
64 | or interact with caches as doing so may lead to errors, | |
65 | Please see the maintenance renderer notes below for details on the functions affected. | |
e5de4933 SH |
66 | |
67 | Renderer changes: | |
68 | * core_course_renderer::course_section_cm_edit_actions has two new optional arguments and now uses and action_menu component. | |
69 | * core_course_renderer::course_section_cm has been altered to call core_course_renderer::course_section_cm_edit_actions with the two new arguments. | |
70 | * core_renderer::block_controls has a new optional argument (the block id) and has been altered to use the new action_menu component. | |
71 | * core_renderer::block_header has been altered to give core_renderer::block_controls the new second argument, the block id. | |
72 | * core_renderer::action_link has a new argument, and optional icon that can be rendererd into the link. | |
73 | ||
faf6010b | 74 | Selector changes: |
75 | * Changes to the classes given to the header produced when rendering a single section within a course. | |
76 | .section-navigation.header.headingblock => .section-navigation.navigationtitle | |
77 | * Changes to the classes used when producing the course information box that lists courses. | |
78 | The name (h3|div} of both courses and categories used to have .name, for courses in the list this was changed to .coursename and for categories in the list this was changed to .categoryname. | |
79 | * Classes ".header and .headingblock" were removed from all front page content headings. | |
80 | * Classes ".headingblock .header .tag-header" were removed from the tag index page | |
81 | ||
166ac0a3 SH |
82 | Maintenance renderer notes: |
83 | When the maintenance layout is being used $OUTPUT will be an instance of core_renderer_maintenance. | |
84 | This renderer mimics the core_renderer except that the following functions always return an empty string. | |
cf9f5a17 | 85 | * core_renderer_maintenance::block |
86 | * core_renderer_maintenance::blocks | |
87 | * core_renderer_maintenance::blocks_for_regions | |
88 | * core_renderer_maintenance::course_header | |
89 | * core_renderer_maintenance::course_footer | |
90 | * core_renderer_maintenance::course_content_header | |
91 | * core_renderer_maintenance::course_content_footer | |
92 | * core_renderer_maintenance::custom_menu | |
93 | * core_renderer_maintenance::file_picker | |
94 | * core_renderer_maintenance::htmllize_file_tree | |
95 | * core_renderer_maintenance::lang_menu | |
96 | * core_renderer_maintenance::login_info | |
97 | * core_renderer_maintenance::user_picture | |
166ac0a3 SH |
98 | |
99 | If you have overridden methods of the core_renderer in your theme and want those changes to be shown during times of maintenance you | |
100 | will also need to override the core_renderer_maintenance and copy your customisations from the core_renderer to that. | |
101 | ||
90160639 | 102 | === 2.5.1 === |
d3e5a21e SH |
103 | |
104 | Notes: | |
105 | * Block drag and drop functionality has been improved so that it works regardless of what block regions you use | |
106 | or how many block regions you have. In order to benefit from this improvement you must convert your calls from | |
107 | $OUTPUT->blocks_for_region() to $OUTPUT->blocks. | |
108 | ||
109 | Optional changes: | |
110 | * Theme config can nominate block regions to swap if the user is using a rtl languages such as Hebrew. | |
111 | $THEME->blockrtlmanipulations should be an associative array, the key is the original block region, and the | |
112 | value should be where the blocks in that region should be displayed. | |
113 | * New $OUTPUT methods to replace code that was previously using $PAGE. Converting to these methods is optional | |
114 | but highly recommended. Refer to the bootstrapbase layouts for examples. | |
115 | - $OUTPUT->body_attributes() returns a string you can use for the body id and classes. | |
116 | - $OUTPUT->blocks() returns HTML to display a block region and all of its blocks. This adds data attributes | |
117 | that ensure drag and drop of blocks will work no matter what block regions or how many you have. | |
118 | - $OUTPUT->page_heading() returns the page heading. Replaces $PAGE->heading. | |
119 | - $OUTPUT->page_heading_button() returns the button to display with the heading. Replaces $page->button. | |
120 | - $OUTPUT->page_doc_link() returns the link to moodle docs for the page. Replaces page_doc_link(). | |
121 | - $OUTPUT->page_heading_menu() returns the heading menu for the page. Replaces $PAGE->headingmenu. | |
122 | - $OUTPUT->page_title() Returns the title to use for the head section. | |
123 | - $OUTPUT->favicon() returns the URL to the favicon. | |
124 | ||
125 | Renderer changes: | |
126 | * core_renderer::navbar now returns an empty string if there are no navigation items to display. | |
127 | * core_renderer::custom_menu now adds a class "custom_menu" to the div that contains the HTML for the custom menu. | |
128 | ||
fc7defef JF |
129 | === 2.5 === |
130 | ||
09ae7ee0 MG |
131 | required changes: |
132 | * Functions core_course_renderer::course_category_tree() and course_category_tree_category() | |
133 | are deprecated | |
134 | * Significant changes in rendering of courses and categories listings, lots of CSS classes changed, | |
135 | several functions such as print_courses(), print_whole_category_list(), print_category_info() | |
136 | are moved to course renderer. | |
137 | See http://docs.moodle.org/dev/Courses_lists_upgrade_to_2.5 | |
138 | ||
fc7defef JF |
139 | DOM changes: |
140 | * changed the h1 title in the help popup to a h2. | |
97dbc8f2 | 141 | * new setting $THEME->yuicssmodules = array('cssreset', 'cssfonts', 'cssgrids', 'cssbase'); which |
12cb45f1 | 142 | allows themes to use different CSS reset normalisers such as cssnormalize YUI module. |
6e5d002e | 143 | * Re-wrote the user profile views to definition lists. |
12cb45f1 MN |
144 | * Re-wrote the table for the course completion status block to use html_table - added some CSS classes to |
145 | the table in the process (see MDL-35608). | |
5581c618 | 146 | * Cancel buttons have the class btn-cancel. |
12cb45f1 MN |
147 | * Added a z-index for the div#dateselector-calendar-panel so that the calendar pop-up renders above |
148 | the filemanager when they overlap, ie. the course settings page (see MDL-39047). | |
9074e478 DM |
149 | * Trivial change of CSS selectors used to display plugin status at the plugins overview |
150 | screen (#plugins-control-panel). | |
fc7defef | 151 | |
6671fa73 JF |
152 | Renderer changes: |
153 | * Mymobile theme changed to support more verbose move-block-here descriptions. | |
154 | ||
2d0e682d MV |
155 | === 2.4 === |
156 | ||
52b1ed5e MG |
157 | required changes: |
158 | * output course and course content header/footer that may be returned by course format (see MDL-36048) | |
e40bd746 | 159 | * span.completionprogress has been changed to a <div> and is not a float by default any more. |
52b1ed5e | 160 | |
fbb207c5 FM |
161 | deprecation: |
162 | * i/roles: Use t/assignroles instead | |
0cddd851 FM |
163 | * t/manual_item: Use i/manual_item instead |
164 | * t/unlock_gray: Use t/locked instead | |
f2bba619 | 165 | * t/userblue: Previously used to unblock a user, use t/unblock. |
5326675e BR |
166 | * c/course: Use i/courseevent instead |
167 | * c/group: Use i/groupevent instead | |
168 | * c/site: Use i/siteevent instead | |
169 | * c/user: Use i/userevent instead | |
99938034 | 170 | * t/clear: Use t/check instead |
c3847443 FM |
171 | * i/cross_red_big: Use i/invalid or i/grade_incorrect |
172 | * i/tick_green_big: Use i/valid or i/grade_correct | |
173 | * i/tick_amber_big: Use i/caution or i/grade_partiallycorrect | |
174 | * No more small versions of i/cross_red_small, i/tick_green_small and i/tick_amber_small, use their big equivalent. | |
501380a9 | 175 | * t/addgreen: Use t/add instead. |
851d3b7a | 176 | * i/approve: Use t/approve instead |
fbb207c5 | 177 | |
2d0e682d MV |
178 | optional changes: |
179 | * new optional boolean parameter $withlinks for public function login_info() in lib/outputrenderers.php (MDL-31365) | |
180 | * new layout option "nologinlinks" and new page layout "secure" e.g. for safebrowser and securewindow (MDL-31365) | |
bb128107 | 181 | * new class 'iconlarge' for 24x24 icons. |
fbb207c5 FM |
182 | * new icons i/export and i/import (sized 16x16). Previously export and import actions used i/backup and i/restore. |
183 | * new icon i/assignroles (sized 16x16), to prevent the use of i/roles which is 12x12. | |
184 | * new icon i/switchrole (sized 16x16), was previously using i/roles. Now is a copy of the new i/assignroles icon. | |
c42651d6 FM |
185 | * new icons i/enrolusers and t/enrolusers, previsouly i/users was used. |
186 | * new icon t/cohorts (sized 12x12), to prevent the use of i/cohorts which is 16x16. | |
06b7ed0a FM |
187 | * new icons t/sort_asc, t/sort_desc to use for ordering in table headers. |
188 | * new class 'iconsort' for icons used for ordering in table headers. | |
fa9c0aab | 189 | * new icons t/locked and t/unlocked (12x12) which should be used when there is no action associated to the icon. |
0cddd851 | 190 | * new icons i/folder (16x16), monochrome equivalent to f/folder. |
f2bba619 FM |
191 | * new icons t/addcontact, t/removecontact and t/messages, previously t/addgreen, t/delete and t/log were used in messaging. |
192 | * new icons t/unblock and i/twoway. | |
5326675e | 193 | * new icons i/courseevent, i/groupevent, i/siteevent and i/userevent (16x16) instead of c/* for calendar events. |
99938034 FM |
194 | * new icon t/markasread (12x12) to replace t/clear used in forums. |
195 | * new icon t/check (12x12) to replace t/clear which name does not reflect the icon meaning. | |
c22fbd38 | 196 | * new classes 'icon-pre' and 'icon-post' supposedly to be used when the icon is positioned before or after the text. This is not really used yet, but it's a start towards some standardisation of the icon selectors. |
c3847443 FM |
197 | * new icons i/valid, i/caution and i/invalid for generic statuses. |
198 | * new icons i/grade_correct, i/grade_partiallycorrect and i/grade_incorrect for grades. | |
851d3b7a | 199 | * new icon t/approve (12x12). |
0348468b | 200 | * new icon t/contextmenu (12x12) for a monochrome version of i/menu. |
ee362526 | 201 | |
33d9f44b PS |
202 | === 2.3 === |
203 | ||
204 | optional changes: | |
205 | * add new u/f3.png image when theme contains customised f1 and f2 default user images | |
206 | ||
0f704140 PS |
207 | === 2.2 === |
208 | ||
209 | required changes: | |
210 | * use new page content placeholder "echo $OUTPUT->main_content()" instead of "echo core_renderer::MAIN_CONTENT_TOKEN" | |
ee362526 | 211 | see git commit: 3b3f302855d7621405a8b93e49bd399d67a998d7 |
2d0e682d | 212 | * upgrade report selectors: search for "-course-report-" and replace with "-report-" |