lib MDL-25981 Improved modinfo
authorsam marshall <s.marshall@open.ac.uk>
Wed, 26 Jan 2011 10:29:16 +0000 (10:29 +0000)
committersam marshall <s.marshall@open.ac.uk>
Wed, 26 Jan 2011 10:29:16 +0000 (10:29 +0000)
commit0d8b6a69cedaea6eb269e65252f9b7fc48932965
tree0c252acd4e379b673233f2ae7a7b091345dd41e4
parent8cdc85ac625da854e91b1eaf76a917ea17ba4c32
lib MDL-25981 Improved modinfo

This commit:
a) moves modinfo code into new library modinfolib.php
b) uses classes instead of stdClass objects, allowing a huge amount of documentation (and IDE completion)
c) adds hooks so that plugins other than forum can display messages like forum's 'unread', and plugins other than label can display html (apart from/as well as their view.php link) on the course view page
d) removes current hacks for forum and label (mainly in print_section but also across the code), replacing with new 'content' and similar variables [this is the reason for the changes in blocks, etc]
e) reduces size of modinfo in database (only when rebuilt) by excluding empty fields

The change is intended to be backward compatible and does not affect the format of modinfo in database.
14 files changed:
blocks/activity_modules/block_activity_modules.php
blocks/site_main_menu/block_site_main_menu.php
blocks/social_activities/block_social_activities.php
course/lib.php
course/report/outline/index.php
course/report/participation/index.php
course/resources.php
lib/modinfolib.php [new file with mode: 0644]
lib/moodlelib.php
lib/navigationlib.php
lib/setup.php
lib/weblib.php
mod/forum/lib.php
mod/label/lib.php