Merge branch 'w04_MDL-26066_20_dbenrol' of git://github.com/skodak/moodle
[moodle.git] / mod / upgrade.txt
1 This files describes API changes in /mod/* - activity modules,
2 information provided here is intended especially for developers.
4 === 2.0 ===
6 WORK IN PROGRESS...
8 required changes in code:
9 * use new DML syntax everywhere
10   (http://docs.moodle.org/en/Development:DML_functions)
11 * use new DDL syntax in db/upgrade.php
12   (http://docs.moodle.org/en/Development:DDL_functions)
13 * replace defaults.php by settings.php and db/install.php
14 * replace STATEMENTS section in db/install.xml with PHP code db/install.php or db/log.php
15 * move post installation code from lib.php into db/install.php
16 * move uninstallation code from lib.php to db/uninstall.php
17 * new mandatory naming of intro and introformat table fields in module tables,
18   the presence of these fields is indicated in xxx_plugin_supports()
19 * completely rewrite file handling
20   (http://docs.moodle.org/en/Development:File_API)
21 * rewrite backup/restore
22   (not finished yet)
23 * rewrite trusttext support - new db table columns needed
24 * migrate all module features from mod_edit.php form to lib.php/modulename_supports() function
25 * implement new gradebook support (legacy 1.8.x grading not supported anymore)
26 * migrate custom resource module subtypes into separate modules,
27   necessary only for custom plugins in mod/resource/
28 * use new $PAGE and $OUTPUT instead of old weblib functions
29 * theme changes: move plugin styles into mod/xxx/styles.css and use new css markers for images,
30                  move all images into new mod/xxx/pix/ directory and use new outputlib api
31                  move module icon to mod/xxx/pix/icon.gif
32                  old global $THEME is fully replaced by $OUTPUT
33                  create plugin renderers
34   (http://docs.moodle.org/en/Development:Theme_changes_in_2.0)
35 * migrate all javascript new coding style using YUI3+YUI2
36   (http://docs.moodle.org/en/Development:JavaScript_usage_guide)
37 * remove '_utf8' from lang pack names, use new {a} syntax
38 * replace helps with new 'xxx_hlp' strings
39 * please note the $plugin->requires in version.php has to be bigger than 2010000000,
40   otherwise the plugin is marked as outdated and upgrade is interrupted
42 optional - no changes needed in older code:
43 * settingstree.php replaced by settings.php - just unset the $settings if you want to make custom part of settings admin tree
44 * support for new mforms editor element and embedded files
45   (not finished yet)
46 * portfolio support
47   (http://docs.moodle.org/en/Development:Portfolio_API)
48 * course completion tracking support
49 * new navigation features
50 * new comments API
51   (http://docs.moodle.org/en/Development:Comments_2.0)
52 * new ratings API
53   (http://docs.moodle.org/en/Development:Ratings_2.0)