Merge branch 'MDL-59642-master' of git://github.com/andrewnicols/moodle
[moodle.git] / report / upgrade.txt
blobf410e0b331ace4cf74cb9db607936fe43961d40c
1 This files describes API changes in /report/* - plugins,
2 information provided here is intended especially for developers.
4 === 3.2 ===
5 * Callback delete_course is deprecated and should be replaced with observer for event \core\event\course_content_deleted
6 * The report_log_print_graph signature and behaviour has changed to generate charts using
7   the new Chart API. The third argument has been renamed to $typeormode and it accepts
8   the type (usercourse.png, userday.png) or the mode (today, all).
10 === 2.7 ===
11 * How to migrate reports accessing table 'log':
12   http://docs.moodle.org/dev/Migrating_log_access_in_reports
13 * All reports that use logstores must implement a callback report_reportname_supports_logstore($storeinstance) in lib.php of the
14   report. Refer MDL-44596 for details.
16 === 2.2 ===
18 API changes:
19 * reports were moved from /admin/report/ to /report/
20 * new support for report settings
23 How to migrate existing admin reports:
24 # move all files to new /report/yourplugin/ location
25 # if settings.php exists add $settings=null;
26 # if settings.php does not exist create it and link the report, index.php is not linked automatically any more
27 # update require('../../config.php'); - remove one ../
28 # update all others includes and requires
29 # update all links to report pages by removing /admin/ or /$CFG->admin/
30 # add language pack with at least 'pluginname' string
31 # update CSS selectors
33 How to migrate existing course reports (optional):
34 # move all files to new /report/yourplugin/ location
35 # update require('../../config.php'); - remove one ../
36 # update all others includes and requires
37 # update all links to report pages by removing /course/ part
38 # update all language strings (use 'report_yourplugin' instead of 'coursereport_yourplugin') - use AMOS hints in commit message
39 # update all capability names
40 # grep the plugin codebase and look for any remaining 'coursereport' occurrences
41 # add new navigation hooks in lib.php - ex: report_stats_extend_navigation_course(), report_stats_extend_navigation_user()
42 # add new page types in lib.php
43 # create db/install.php migration script - delete old settings and capabilities (see converted plugins for examples)
44 # update CSS selectors
46 See http://docs.moodle.org/dev/General_report_plugins for more details and explanation.