34ee6113f20722d44c08a38bf4acbd04f3c0430a
[moodle.git] / mod / data / upgrade.txt
1 This files describes API changes in /mod/data - plugins,
2 information provided here is intended especially for developers.
4 == 4.2 ==
5 * The field base class now has a method validate(). Overwrite it in the field type to provide validation of field type's
6   parameters in the field add/modify form.
7 * New tags are added to the current mod_data\templates class: ##otherfields##, [[FIELD#name]],
8   and [[FIELD#description]].
9 * The mod_data\template class can provide preprocessor methods to optimize some tags. From now on,
10   when load_template_tags detects a tag, it will call a "preprocess_tag_TAGNAME" method if it exists.
11   This preprocessing can be used, for example, to precalculate some content. Currently, this preprocessor
12   is used to detect which fields needs to be renderer when a ##otherfields## is used.
14 === 4.1 ===
15 * The method data_view is now deprecated. Use $maganer->set_module_viewed instead.
16 * The data_print_template function is now deprecated and replaced by mod_data\template class.
17 * The data_print_ratings function now has an extra $print to get the ratings output instead of printing it directly.
18 * The following functions have been deprecated because they have been moved to the manager class:
19   - data_get_available_presets
20   - data_get_available_site_presets
21   - data_preset_name
22   - data_presets_export
23   - data_presets_generate_xml
24   - data_presets_save
25   - is_directory_a_preset
26 * mod_data_external::add_entry() function throws an error when trying to add an entry to a database with no field created.
27 * data_user_can_add_entry() function returns false for any user if there is no field created on the database.
28 * From now on, the data_generate_default_template method will always return a string with the template content or an empty
29   string when there is no content available.
30 * The following classes have been deprecated from lib.php because they have been moved to use manager class:
31   - data_preset_importer
32   - data_preset_existing_importer
33   - data_preset_upload_importer
34 * import_setting_mappings() function has been deprecated. Use importing_preset() instead.
35 * $fieldselect single_select type parameter has been deprecated for fields_action_bar class constructor, and a new action_menu
36   type parameter has been added.
37 * The $urlselect, $saveaspresetbutton and $exportpresetbutton parameters in the constructor of the fields_action_bar class
38 have been deprecated too and are not used anymore.
39 * The $saveaspresetbutton and $exportpresetbutton parameters in the constructor of the templates_action_bar class
40 have been deprecated and are not used anymore. Besides, a new parameter, $actionsselect, has been added to the
41 constructor of this class.
42 * A new parameter, $actionsselect, has been added to the presets_action_bar constructor.
43 * A new parameter, $mode, has been added to the view_action_bar constructor.
44 * The $hassaveaspreset and $haveexportpreset parameters in the get_fields_action_bar() action_bar class have been deprecated and
45 are not used anymore.
47 === 3.7 ===
48 * External functions get_entries, get_entry and search_entries now return an additional field "tags" containing the entry tags.
50 === 3.4 ===
51 * External function mod_data_external::search_entries() now returns the maxcount field: Total count of records that the user could
52     see in the database (if all the search criterias were removed).
53 * External function get_entry now returns an additional field "ratinginfo" containing the entry rating information.
55 === 3.3.2 ===
56 * data_refresh_events() Now takes two additional parameters to refine the update to a specific instance. This function
57   now optionally takes the module instance object or ID, and the course module object or ID. Please try to send the full
58   objects instead of the ids to save DB calls.
60 === 3.3 ===
62 * External function get_databases_by_courses now return more fields for users with mod/data:viewentry capability enabled:
63     maxentries, rssarticles, singletemplate, listtemplate, listtemplateheader, listtemplatefooter, addtemplate,
64     rsstemplate, rsstitletemplate, csstemplate, jstemplate, asearchtemplate, approval, defaultsort, defaultsortdir, manageapproved.
65 * Data field classes extending data_field_base should implement the get_config_for_external method.
66     This method is used for returning the field settings for external functions.
67     You should check the user capabilities of the current user before returning any field setting value.
68     This is intended to protect field settings like private keys for external systems.
69 * Required entries has been added to the Activity completion setting of mod_form. Entries required for completion
70     (in the entries section) is no longer displayed for new instances and will be deprecated in a future release
71     in favour of the new completion setting.
73 === 3.2 ===
75 * New hook - update_content_import - Can be implemented by field subplugins data_field_* class
76     This can be used to pre-process data from a csv file before it is inserted into the database.