Today's update (9e9d0c2) brings with it the following changes:
Performance improvements
- Improve web server buffering, which should improve latency when a lot of users are requesting large multimedia content, or lots of users with low bandwidth are using the site.
New features
- It is now possible to give time-limited access to a course, similar to a traditional classroom exam. The exam is automatically delivered after the time limit and supervisors are automatically assigned so that they can assess the exam once it's done. Supervisors are notified using the internal messaging system that a new exam is available for assessment. While the exam is active an infobar is added at the top of the page informing you how far you've come and how much time is left. When the exam is started, current_course and current_institution is set. When the exam is delivered (either manually or automatically) all exam documents are automatically delivered.
- A new template function, human_duration, was added, making it easy to convert a duration instance into something easily understandable for end-users.
- The template function, current_exam_participant, was added and is used by the template
element_exam_status
.
Enhancements
- Extend filesystem template function to allow skipping of containers and objects based on a custom_init flag.
- The container
get_child_objects()
and get_child_containers()
methods were also extended to support this new filesystem behavior.
- Finally the filesystem and read_container request handlers got the
skip_custom_init
query parameter and behavior.
- Improve backend search script so it can match against multiple regular expressions like a filter chain.
- Population of instances in model classes has been vastly improved and refactored to be simpler.
Bugfixes
- When results for a course was deleted, progress was not reset to first document in course. This has now been fixed.
- The width of the comment field when assessing assignments was too narrow. This has now been fixed.