Merge branch 'MDL-41954-workshop-zero-variance' of git://github.com/mudrd8mz/moodle
[moodle.git] / mod / upgrade.txt
CommitLineData
9c82ff2a 1This files describes API changes in /mod/* - activity modules,
2information provided here is intended especially for developers.
3
9c82ff2a 4
0662bd67
PS
5=== 2.5 ===
6
7* support for 'mod/*' filters was removed
8
7d59d8da
PS
9=== 2.4 ===
10
11new features:
12
13* mod/xxx/adminlib.php may now include 'plugininfo_yoursubplugintype' class definition
14 used by plugin_manager; it is recommended to store extra admin settings classes in this file
76fb0443 15
27affa26
AA
16optional - no changes needed:
17
18* mod_lesson_renderer::header() now accepts an additional parameter $extrapagetitle
7d59d8da 19
76fb0443
AG
20* mod/data/lib.php data_get_all_recordids() now has two new optional variables: $selectdata and $params.
21
0f0c0228
TH
22=== 2.3 ===
23
24required changes in code:
daefd6eb 25
0f0c0228
TH
26* define the capability mod/xxx:addinstance (and the corresponding lang string)
27 (unless your mod is a MOD_ARCHETYPE_SYSTEM).
261cbbac
DM
28* xxx_pluginfile() is now given the 7th parameter (hopefully the last one) that
29 contains additional options for the file serving. The array should be re-passed
30 to send_stored_file().
0f0c0228 31
daefd6eb 32* most resourcelib_embed_* functions are replaced with core_media_renderer;
33 for an example, see mod/resource/locallib.php, resource_display_embed()
34
652cc648
DS
35optional - no changes needed:
36
37* add support for handling course drag and drop types - functions
38 xxx_dndupload_register() and xxx_dndupload_handle($uploadinfo) see:
39 http://docs.moodle.org/dev/Implementing_Course_drag_and_drop_upload_support_in_a_module
0f0c0228 40
ee362526
PS
41=== 2.2 ===
42
43required changes in code:
44* fix missing parameter types in optional_param() and required_param()
45* use new optional_param_array(), required_param_array() or clean_param_array() when dealing with array parameters
2f1e464a 46* core_text::asort() replaced by specialized core_collator::asort()
ee362526
PS
47* use new make_temp_directory() and make_cache_directory()
48
49
50=== 2.1 ===
51
52required changes in code:
53* add new support for basic restore from 1.9
54
55
56=== 2.0 ===
44f2977c 57
9c82ff2a 58required changes in code:
59* use new DML syntax everywhere
728ebac7 60 (http://docs.moodle.org/dev/DML_functions)
9c82ff2a 61* use new DDL syntax in db/upgrade.php
728ebac7 62 (http://docs.moodle.org/dev/DDL_functions)
9c82ff2a 63* replace defaults.php by settings.php and db/install.php
847400a7 64* replace STATEMENTS section in db/install.xml with PHP code db/install.php or db/log.php
9cb56578 65* move post installation code from lib.php into db/install.php
56f7ff74 66* move uninstallation code from lib.php to db/uninstall.php
8026a943
PS
67* new mandatory naming of intro and introformat table fields in module tables,
68 the presence of these fields is indicated in xxx_plugin_supports()
9c82ff2a 69* completely rewrite file handling
728ebac7 70 (http://docs.moodle.org/dev/File_API)
9c82ff2a 71* rewrite backup/restore
44f2977c 72 (not finished yet)
9cb56578
PS
73* rewrite trusttext support - new db table columns needed
74* migrate all module features from mod_edit.php form to lib.php/modulename_supports() function
398a160d 75* implement new gradebook support (legacy 1.8.x grading not supported anymore)
44f2977c
PS
76* migrate custom resource module subtypes into separate modules,
77 necessary only for custom plugins in mod/resource/
af34490a 78* use new $PAGE and $OUTPUT instead of old weblib functions
78946b9b
PS
79* theme changes: move plugin styles into mod/xxx/styles.css and use new css markers for images,
80 move all images into new mod/xxx/pix/ directory and use new outputlib api
81 move module icon to mod/xxx/pix/icon.gif
cbcc9852 82 old global $THEME is fully replaced by $OUTPUT
8026a943 83 create plugin renderers
728ebac7 84 (http://docs.moodle.org/dev/Theme_changes_in_2.0)
b7534190 85* migrate all javascript new coding style using YUI3+YUI2
728ebac7 86 (http://docs.moodle.org/dev/JavaScript_usage_guide)
2b0e098e
PS
87* remove '_utf8' from lang pack names, use new {a} syntax
88* replace helps with new 'xxx_hlp' strings
7070ca36 89* please note the $plugin->requires in version.php has to be bigger than 2010000000,
dae88219 90 otherwise the plugin is marked as outdated and upgrade is interrupted
9c82ff2a 91
92optional - no changes needed in older code:
dbf9e4ba 93* settingstree.php replaced by settings.php - just unset the $settings if you want to make custom part of settings admin tree
ff3ad2d9
PS
94* support for new mforms editor element and embedded files
95 (not finished yet)
9c82ff2a 96* portfolio support
728ebac7 97 (http://docs.moodle.org/dev/Portfolio_API)
9c82ff2a 98* course completion tracking support
8026a943
PS
99* new navigation features
100* new comments API
728ebac7 101 (http://docs.moodle.org/dev/Comments_2.0)
8026a943 102* new ratings API
728ebac7 103 (http://docs.moodle.org/dev/Ratings_2.0)
9c82ff2a 104