1 This files describes API changes in /availability/*.
3 The information here is intended only for developers.
6 * The `availability_info templatable` no longer exports 'showmore' information, and any component rendering avaialable_info
7 should handle showmore/showless behaviour by itself.
8 That means that 'showmorelink', 'hidden' and 'abbreviate' won't be exported for template in the root element neither its child items,
9 and `core_availability/availability_more` module has beed deprecated
13 * The form for editing availability conditions now supports "private" conditions, that should not be shown
14 to users. If a "private" condition is selected (as determined by the condition plugin), the whole ruleset
15 will be forcibly set to "Hidden entirely if student doesn't meet the conditions".
16 * The group condition plugin will now treat any rule containing a group with a visibility setting other than
17 `visibility:ALL` as private.
21 * Method render_core_availability_multiple_messages() is deprecated. Please use core_availability\\output\\multiple_messages
22 The new rendereable will produce output with a 'more' link when there is lots of availability information.
23 * There were existing restrictions on what condition plugins can do in the get_description
24 method (for example they mustn't call format_string), which were not well documented.
25 New functions description_cm_name(), description_format_string(), description_callback()
26 can be used so that condition plugins to behave correctly in all situations.
30 * Condition plugins must replace the CSS selector "#fitem_id_availabilityconditionsjson" with ".availability-field".
31 This selector is often used in your plugin's yui/src/form/js/form.js file.
35 * Condition plugins can now implement a new include_after_restore function to
36 indicate that they should be removed during the restore process. (This is
37 implemented so that group and grouping conditions are removed if groups are
42 * There is a new API function in the info_module/info_section objects (and
43 related functions in internal API): get_user_list_sql. This returns SQL code
44 that does roughly the same as filter_user_list to return a list of users who
45 should be shown as having access to the module or section.
47 * Any third-party availability plugins which return true to
48 is_applied_to_user_lists (and therefore previously implemented
49 filter_user_list) should now also implement get_user_list_sql. If not
50 implemented, a debugging warning will occur when anybody calls
51 get_user_list_sql if the affected plugin is in use, and that user list will
52 not be filtered by the plugin.