0eba55f6a055227224d57b26544fdb9180b59774
[moodle.git] / mod / forum / upgrade.txt
1 This files describes API changes in /mod/forum/*,
2 information provided here is intended especially for developers.
4 === 3.7 ===
5   * Changed the forum discussion rendering to use templates rather than print functions.
6   * Added new forum entities, factories, exporters, renderers, and vaults in the local namespace to better encapsulate the forum data.
7   * Deprecated all of the forum_print_* functions in lib.php.
8   * The forum_print_latest_discussions function has been deprecated and will not be replaced.
9   * The get_forum_discussion_posts web service has been deprecated in favour of get_discussion_posts.
10   * The forum_count_replies function has been deprecated in favour of get_reply_count_for_post_id_in_discussion_id in
11     the Post vault.
13 === 3.6 ===
15   * forum_print_post should be surrounded with calls to forum_print_post_start and forum_print_post_end to create the proper HTML structure for the post.
17 === 3.4 ===
18   * External function get_forum_discussion_posts now returns an additional field "ratinginfo" containing rating information.
20 === 3.3 ===
21   * External function get_forums_by_courses now returns and additional field "istracked" that indicates if the user
22    is tracking the related forum.
23   * The legacy forum.js file has been removed, this includes the js functions:
24     forum_produce_subscribe_link, forum_produce_tracking_link, lockoptions_timetoitems,
25     lockoptions_timefromitems, lockoptions, lockoption, unlockoption
26   * External function can_add_discussion now returns two additional fields:
27    "canpindiscussions" that indicates if the user can add pinned discussions.
28    "cancreateattachment" that indicates if the user can add attachments to the discussion.
30 === 3.2 ===
31  * The setting $CFG->forum_replytouser has been removed in favour of a centralized noreplyaddress setting.
32    Please use $CFG->noreplyaddress setting instead.
33  * The following functions have been finally deprecated and should no longer be used.
34   - forum_count_unrated_posts
35   - forum_tp_count_discussion_read_records
36   - forum_get_user_discussions
37   - forum_tp_count_forum_posts
38   - forum_tp_count_forum_read_records
39   - forum_get_open_modes
40   - forum_get_child_posts
41   - forum_get_discussion_posts
42   - forum_get_ratings
43   - forum_get_tracking_link
44   - forum_tp_count_discussion_unread_posts
45   - forum_convert_to_roles
46   - forum_tp_get_read_records
47   - forum_tp_get_discussion_read_records
48   - forum_user_enrolled
49   - forum_user_can_view_post
50   - forum_shorten_post
51   - forum_is_subscribed
52   - forum_subscribe
53   - forum_unsubscribe
54   - forum_subscribed_users
55   - forum_is_forcesubscribed
56   - forum_forcesubscribe
57   - forum_get_forcesubscribed
58   - forum_get_subscribed_forums
59   - forum_get_optional_subscribed_forums
60   - forum_get_potential_subscribers
61  * External functions that were returning file information now return the following file fields:
62    filename, filepath, mimetype, filesize, timemodified and fileurl.
63    Those fields are now marked as VALUE_OPTIONAL for backwards compatibility.
65 === 3.1 ===
66  * The inteface to forum_get_email_message_id() has changed and no longer needs the $host argument.
68 === 3.0 ===
69  * External function get_forums_by_courses now returns and additional field "cancreatediscussions" that indicates if the user
70    can create discussions in the forum.
71  * A new optional parameter (groupid) has been added to get_forum_discussions.
72    This parameter can override the automatically calculated current group.
73  * New constant FORUM_POSTS_ALL_USER_GROUPS, to be used as parameter in functions where we'd need to retrieve all the user posts.
75 === 2.8 ===
76  * The following functions have all been marked as deprecated. Many of
77    these have not been supported in many releases and should not be relied
78    upon:
79      forum_count_unrated_posts
80      forum_tp_count_discussion_read_records
81      forum_get_user_discussions
82      forum_tp_count_forum_posts
83      forum_tp_count_forum_read_records
84      forum_get_open_modes
85      forum_get_child_posts
86      forum_get_discussion_posts
87      forum_get_ratings
88      forum_get_tracking_link
89      forum_tp_count_discussion_unread_posts
90      forum_convert_to_roles
91      forum_tp_get_read_records
92      forum_tp_get_discussion_read_records
93      forum_user_enrolled
94      forum_user_can_view_post
95  * The following functions have been deprecated and replaced. Please see the phpdoc for each on the new function to use instead:
96    * forum_is_subscribed
97    * forum_subscribe
98    * forum_unsubscribe
99    * forum_subscribed_users
100    * forum_is_forcesubscribed
101    * forum_forcesubscribe
102    * forum_get_forcesubscribed
103    * forum_get_subscribed_forums
104    * forum_get_optional_subscribed_forums
105    * forum_get_potential_subscribers
106  * External function mod_forum_external::get_forum_discussions has been deprecated.
107    Use mod_forum_external::get_forum_discussions_paginated instead.
109 === 2.6 ===
111 * The file post_form.php should not be included, the class it contained has
112   been moved so that it can benefit from autoloading.
113 * The function forum_shorten_post() has been deprecated. It was doing a poor
114   job of shortening forum post text and the shorten_text() function does a
115   much better job.
116 * The constant FORUM_TRACKING_ON has been deprecated and replaced by
117   FORUM_TRACKING_FORCED. The value between them is maintained, so they are
118   interchangeable, but code should migrate to the new name.
120 === 2.5 ===
122 The function forum_check_throttling has been changed so that a warning object is returned when a user has reached the 'Post threshold for warning' or
123 'Post threshold for blocking' setting, rather than echoing this on screen. This allows the warning to be moved inside the post form as it can be added
124 as a HTML element, where it is more noticeable. False is returned if there is no need to warn, or restrict the user from posting - see MDL-39182.
126 === 2.3.5, 2.4.2 ===
128 * mod/forum:allowforcesubscribe capability will be forcefully assigned to frontpage role, as it was mistakenly missed off
129 when the capability was initially created. If you don't want users with frontpage role to get forum (with forcesubscribe) emails,
130 then please remove this capability for frontpage role.