* Stripped out the form for the inpage on the discussion list page.
* Tweaked the 'Advanced' redirect to take into account a nosubmit button
which populates the subject, message and any files used within it.
This patch adds new capabilities:
'mod/forum:postprivatereply' - whether a user is able to post private replies; and
'mod/forum:readprivatereplies' - whether a user is able to read private replies.
Private replies are only visible to the intended recipient (the author of
the parent post), the author of the private reply, and those with the
ability to read private replies.
If a post is private then it cannot be replied to further.
This introduces a new "controlled link" file type where the file is not
stored in Moodle - but Moodle will control the access permissions on the file.
Plugins can "freeze" a filearea which means Moodle will take ownership of all the remote
files of this type.
When accessing a file, if the "filebrowser" infomation indicates the current user can write to the file, they
will be granted temporary write access.
Part of MDL-58220
The ability to view the group dropdown was too closely related to the
movediscussions capability when posting, or editing a forum post.
The movedicussions capability should only be considered for some parts of
this logic. Users should be able to select the group to post to when
writing message, as long as they have access to that group.
If the user has posted in the forum before, follow their previous
discussion preference.
If the user has not posted before, but is subscribed to the forum, follow
their forum preference.
Otherwise, follow their user-preference.
This has the result that if a user has unsubscribed from a forum and writes
their first response; the user preference will be followed. This may
override the forum subscription.
This commit also changes from a dropdown to a checkbox in the post form.
In order to post to all groups in a forum, you must have the
moodle/site:accessallgroups capability.
Thanks to Jakob Ackermann <jackermann@onlineschool.ca> for part of the fix
on this one.