Error messages should be prominent to screen readers as well as visual users,
adding the role alert is recommended way to achieve it for screen readers and this is
also what we do for ->notification apis
* Removed the div with the class 'form-group' that's enclosing the
select element and friends. It's not needed since the urlselect template
is an inline form.
* Also, for completeness, I added the helpicon data for the template's
context.
Firstly - the list of roles to filter needs to be a combination of the assignable roles and the existing roles in the course.
Secondly - the auto-complete behat step needs to search for entire strings, not substrings.
When searching for non-empty children first retrieve list of all non-empty
fileareas in modules and then check access for each of them. This will be
much faster than checking access for each module and then look for files
and areas inside this module.
Do the same with course file areas
- Store cm_info in file_info_context_module instead of object
- Use correct API calls to component_callback_exists
- Use human readable name of module type
- Preload contexts of subcategories and courses when retrieving their lists
- When there are enrolled courses in hidden subcategories retrieve them together with direct children courses
- Do not call browser->get_file_info - it retrieves the coursecat/course again, instead initialise the instance
of file_info_context_coursecat or file_info_context_course
We have a way to determine a valid zindex when adding things to a page. Find all the moodle-has-zindex things and
choose a value bigger all of them. This needs doing in javascript whenever a thing is opened. It's not possible to
fix generically in CSS (remember the historic z-index wars).
Every time a file is updated, the mimetype is re-processed.
But, some mimetypes can only be detected if the file is present
on local disk. With external file systems, this could cause
the file to be downloaded unnecessarily. Instead, only update
the mimetype when the file content or the file name has changed.
Improve mimetype detection for remote files that
have no file extension. The mimetype detection
that makes use of the file, only works with local
files, so do not use the remote path which can be
a URL or stream.