This files describes API changes in /mod/* - activity modules, information provided here is intended especially for developers. === 2.2 === required changes in code: * fix missing parameter types in optional_param() and required_param() * use new optional_param_array(), required_param_array() or clean_param_array() when dealing with array parameters * textlib->asort() replaced by specialized collatorlib::asort() * use new make_temp_directory() and make_cache_directory() optional - no changes needed: * mod/data/lib.php data_get_all_recordids() now has two new optional variables: $selectdata and $params. === 2.1 === required changes in code: * add new support for basic restore from 1.9 optional - no changes needed: * mod/data/lib.php data_get_all_recordids() now has two new optional variables: $selectdata and $params. === 2.0 === required changes in code: * use new DML syntax everywhere (http://docs.moodle.org/dev/DML_functions) * use new DDL syntax in db/upgrade.php (http://docs.moodle.org/dev/DDL_functions) * replace defaults.php by settings.php and db/install.php * replace STATEMENTS section in db/install.xml with PHP code db/install.php or db/log.php * move post installation code from lib.php into db/install.php * move uninstallation code from lib.php to db/uninstall.php * new mandatory naming of intro and introformat table fields in module tables, the presence of these fields is indicated in xxx_plugin_supports() * completely rewrite file handling (http://docs.moodle.org/dev/File_API) * rewrite backup/restore (not finished yet) * rewrite trusttext support - new db table columns needed * migrate all module features from mod_edit.php form to lib.php/modulename_supports() function * implement new gradebook support (legacy 1.8.x grading not supported anymore) * migrate custom resource module subtypes into separate modules, necessary only for custom plugins in mod/resource/ * use new $PAGE and $OUTPUT instead of old weblib functions * theme changes: move plugin styles into mod/xxx/styles.css and use new css markers for images, move all images into new mod/xxx/pix/ directory and use new outputlib api move module icon to mod/xxx/pix/icon.gif old global $THEME is fully replaced by $OUTPUT create plugin renderers (http://docs.moodle.org/dev/Theme_changes_in_2.0) * migrate all javascript new coding style using YUI3+YUI2 (http://docs.moodle.org/dev/JavaScript_usage_guide) * remove '_utf8' from lang pack names, use new {a} syntax * replace helps with new 'xxx_hlp' strings * please note the $plugin->requires in version.php has to be bigger than 2010000000, otherwise the plugin is marked as outdated and upgrade is interrupted optional - no changes needed in older code: * settingstree.php replaced by settings.php - just unset the $settings if you want to make custom part of settings admin tree * support for new mforms editor element and embedded files (not finished yet) * portfolio support (http://docs.moodle.org/dev/Portfolio_API) * course completion tracking support * new navigation features * new comments API (http://docs.moodle.org/dev/Comments_2.0) * new ratings API (http://docs.moodle.org/dev/Ratings_2.0)