Note that this is a very basic conversion without doing any refactoring
to split the tasks up better. That will come in MDL-44734, this is about
being a safe backportable change to give admins better control over the
running of the forum cron task.
Conflicts:
mod/forum/version.php
The forum subscription function is called in some cases on forum creation
(specifically the case of an automatically subscribed forum).
Since the forum subscription requires both the course_module instance, and
the context these must both be present when subscribing users to the forum,
however these are not fully set up until after the forum has been created.
By moving the subscription to a subscriber, we are able to hook into the
module creation event after the course_module and context have been linked
to the forum instance.
The 'mod/forum:initialsubscriptions' was introduced in 1.7 as a workaround for missing enrolment info - the mod_form forum help was not even updated to mention this capability. Now that we have reliable enrolment info we can significantly improve both enrol and unenrol performance. Hopefully majority of users will not miss this capability...
* Added the component and ratingarea fields and implemented it throughout
the rating API as mandatory fields
* Cleanup rating indexes
* Upgrade forum/data/glossary ratings
* Moved the logic in the render_rating method to methods of the rating object.
* Added new callback for checking ratingareas
* Cleaned comments here and there
* Mark the xxx_get_participants methods as deprecated
* Refactor rate_ajax and ratingsuser_can_view_aggregate methods
* Cleaned up rating/index.php to use html_table object and moved inline styles to CSS.
* Added missing properties of the rating object that were being set throughout the rating
API.
* handlers can be defined as internal or external
* external handlers are not called instantly when inside DB transaction
* code cleanup
* more robust detection of broken handlers
* refixed unit tests
* removing all pending events from 1.9 - these can not be processed due to encoding changes
* finally using real 'component' in handlers table