1. Implement core_course_get_contents web service
2. Implement callbacks in folder, resource, page and url modules
3. Implement download script for web service
The recent change completely removed support for general URIs and enforced strict URL validation which was breaking backwards compatibility and was not user friendly at all.
This patch finally adds full URI support with basic validation and fixes some older xhtml strict issues.
Please note we do not try to explain the difference between URL and URI to our users. Also keep in mind that mod/url has XSS risk and does not do any security validation of the data.
For modules that still used the 'old' generic object return from _get_coursemodule_info instead of returning a cached_cm_info object, I changed them to use the new format as part of this. This made a few areas of code regarding onclick links slightly nicer.
* 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.
Bug fixes:
* fixed broken flash resizing via URL
* upgraded Flowplayer
* fixed invalid context in format_text()
* all media related CSS moved from themes to filter and resources
* fixed automatic pdf resizing in resources
Changes:
* reworked filter_mediaplugin system settings - grouped by player type instead of individual extensions, added more information
* improved regex url matching
* removed old unused players, Eolas fix and UFO embedding
* image embedding moved to filter_urltolink
* new Flowplayer embedding API
* accessibility and compatibility tweaks in Flowplayer
* SWF embedding now works only in trusted texts, it is now enabled by default (works everywhere if "Allow EMBED and OBJECT tags" enabled)
* new default video width and height
New features:
* automatic Flash video resizing using information from video metadata
* Flash HD video support (*.f4v)
* Flash video embedding with HTML5 fallback - compatible with iOS and other mobile devices
* Vimeo embedding
* no-cookie YouTube site supported
* HTML 5 audio and video with multiple source URLs and QuickTime fallback
* more video and audio extensions in filelib.php
* MP3 player colours customisable via CSS in themes
* nomediaplugin class in a tag prevents media embedding