new
improved
fixed
Core
Free
Interactive Video V1.0.3
Added
- Two URL parameters to control the player appearance: dmfor dark mode anddffor distraction-free mode. Example:https://yourmoodlesite.com/mod/interactivevideo/view.php?id=1&dm=1&df=1;
- Allow extension plugins to include js methods on the mod_form. To enable this, the plugin must add an element on the mod_form with the class '.requirejs' and the data attribute data-pluginvalue as the amd module name. Example:<div class="requirejs" data-plugin="local_ivanalytics/main"></div>. The plugin must implement the methodmformto add the required JS code.
- convertHMSToSecondsin the base class to convert HH:MM:SS/MM:SS/SS to seconds.
- Ability to lock the top navigation when watching the video on a modal on the course page.
- checkautoplayto pre-check if the browser allows autoplay video on mute. Useplayer.allowAutoplayto check.
- New events: interactionrefresh(after the refresh button is clicked),iv:autoplayBlocked(as soon as the player methodloadruns.)
- activeclass to#messageelement of the current/visible interaction.
Fixed
- Player didn't fire ivplayerReadyevent if the browser blocked autoplay.
- Share-moment link included embed=1if the link was created from the modal.
- onPausedmethod was not implemented onbeforeunloadevent, resulting in the watched time not being saved.
Updated
- Spotify player sometimes shows the preview version of the music tracks depending on the browser and user login. In this case, the interactions might be cut off. So, when the player is in preview mode, users will now get an error message before the player is destroyed.
- Kill all client-side background processes and event listeners if the video is invisible and paused for 30 minutes on the view page and 10 minutes on the interactions page. If the video already ends, the processes will be killed after 5 minutes of inactivity.
- Get processed data from the server only once for each interaction. Processed data will be saved to this.cache object with the annotation id. When the interaction is relaunched in the same session, the cached version will be used; therefore, releasing some burden from the server. This applies to the view page only. On the interaction page, new data is fetched every time the interaction is launched.
- Notify users if the browser blocks autoplay and encourage them to allow it on the current site.
- Kill the interactive video if autoplay is blocked on the Brave browser. (We'll re-enable it in the future when the Brave browser stops overly blocking the playmethod.)
- Improve the ability for other plugins to extend the mod_form and completion conditions/states, and more importantly, make sure removing or disabling the related plugins does not cause any completion issues.
- Improve accuracy in calculating the time spent on interaction. For instance, resume counting when the interaction is relaunched and pause counting when the interaction is no longer active (e.g. activity closed or video playing).
- Right-click on the timestamp on the interaction list to quick-edit the interaction's timestamp. Right-click on the input to set the value to the current time.
- Minor accessibility/UI/UX improvements