From 946996e2819f5002582eb923a7ec45d8be9b621b Mon Sep 17 00:00:00 2001 From: Thomas Fradet <t.fradet8@gmail.com> Date: Thu, 21 Feb 2019 11:20:46 +0100 Subject: [PATCH] close iframe on close modale --- CHANGELOG.md | 4 ++++ filter.php | 2 +- js/iena.js | 7 +++++-- version.php | 2 +- 4 files changed, 11 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a2d08c4..3ede23f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,3 +11,7 @@ L'affichage du contenu de l'iframe sans les menus de nativation et le footer est L'affichage du contenu de l'iframe sans les menus de nativation et le footer est optimisé pour MOODLE 3.5.4+. L'affichage du contenu de l'iframe sans les menus de nativation et le footer fait l'objet d'un paramètre du plugin (case à cochée). Il est activé par défaut. + +# 21/02/19 + +Lors de la fermeture de la fenêtre modale, le contenu de l'iframe est déchargé afin d'éviter qu'un média affiché à l'intérieur (vidéo) continue de fonctionner et en plus consomme de la ressource. L'ergonomie et la performance sont améliorées. diff --git a/filter.php b/filter.php index 69ae966..ce7fe46 100644 --- a/filter.php +++ b/filter.php @@ -138,7 +138,7 @@ function filter($text, array $options = array()) $this->color_btn_txt = $CFG->color_btn_txt; } - //$PAGE->requires->js('/filter/iena/js/jquery-3.3.1.min.js'); + $PAGE->requires->js('/filter/iena/js/jquery-3.3.1.min.js'); $PAGE->requires->js('/filter/iena/js/iena.js'); //We hide the menus and block if the iframe parameter is a true if (isset($CFG->iena_filter_iframe)) { diff --git a/js/iena.js b/js/iena.js index 473859a..226c572 100644 --- a/js/iena.js +++ b/js/iena.js @@ -1,11 +1,14 @@ -;(function () { +;(function ($) { var btns = document.querySelectorAll('.iena-filter-modal-btn'); for (var i = 0; i < btns.length; i++) { btns[i].onclick = function (e) { document.querySelector(e.target.dataset.target + " iframe").setAttribute('src', e.target.dataset.iframe); } } -})() + $('.iena-filter-modal').on('hide.bs.modal', function (e) { + e.target.querySelector('iframe').src = ""; + }); +})(jQuery); // ;(function ($) { // $('iframe').load(function () { // $('iframe').contents().find("body") diff --git a/version.php b/version.php index 0f5e0b2..31bdba3 100644 --- a/version.php +++ b/version.php @@ -29,7 +29,7 @@ defined('MOODLE_INTERNAL') || die(); - $plugin->version = 2019021903; // The current plugin version (Date: YYYYMMDDXX) + $plugin->version = 2019022101; // The current plugin version (Date: YYYYMMDDXX) $plugin->requires = 2011120500; // Requires this Moodle version $plugin->component = 'filter_iena'; // Full name of the plugin (used for diagnostics) $plugin->release = "1.0"; -- GitLab