* Rebase and resolve conflicts from initial patch.
* Reorganise contentitem and contentitem_return pages.
* Add capability checks for contentitem and contentitem_return pages.
* Move the building of Content-Item selection request to a local
lib function.
* Move contentitem_return processing logic to a local lib function.
* Fix type settings update. Content-item checkbox does not get
checked/unchecked on load.
* Fix tool settings update. Disabled content-item checkbox gets unchecked when
tool settings form is submitted.
* Add "Select content" button on load which launches the content item
selection dialogue.
* Move hardcoded HTML and JS to mustache templates and AMD modules.
* Use standard YUI dialog for displaying the Content-Item selection page.
* Added processing for the following Content-Item properties:
- text
- icon
* On ContentItem selection, fill out form with the configuration data retrieved,
instead of automatically saving the tool and redirecting to the course page.
* Removed section- and sectionreturn-related code since we're not automatically
adding the tool on ContentItem selection.
* On mod_lti_mod_form, enable configuration fields if they support ContentItem
selection.
* New form-field module for setting fields using JS
* Change types_config table's 'value' column from char(255) to text
This patch adds support for time-based locking of discussions.
Discussions are automatically locked after a user-definable period of
inactivity. After this time, only those with the the relevant capability
are able to add replies.
This has been designed to add support for other types of discussion locking
at a later date with relative ease.
Some templates can legitimately contain invalid HTML (e.g. mismatched tags)
because the templates operate in pairs.
In these instances we should not use an editor because the nature of the
editor (content editable) means that the browser automatically corrects all
HTML supplied to it, thus breaking the template entirely.
Therefore we need to disable HTML editors for some templates, and do so in
a way tied to the instance of the activity, rather than to a specific user.
This patch adds a new 'config' field, with matching setters and getters, to
allow such per-instance values to be stored.
There was a bug with serving the files from the areas instructauthors,
instructreviewers and conclusion. These three areas should not use the
itemid in the plugininfo URLs. But they did use 0 as the itemid which
broke the file previews when browsing via server files repository.
The first part of the patch fixes all relevant calls to
file_rewrite_pluginfile_urls() so that null is now properly used instead
of zero.
The second part of the fix is that we no longer delete the first $args
element in the workshop_pluginfile() function - the itemid is not
supposed to appear there now.
The last part of the patch is that instead of repeating the same code
block copy&pasted for each file area in workshop_pluginfile(), we now
have a single block covering them all.