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