Dispatch JS events at crucial display steps

FR : Ajout d'évènements JS à différents moments du cycle de vie de tarteaucitron. Permet d'ajouter de la logique métier personnalisée à différentes étapes.

EN : Add JS events to many moments of tarteaucitron life cycle. Allow to add personalized business logic to different steps.
This commit is contained in:
Jason Benedetti 2019-08-22 14:49:16 +02:00 committed by GitHub
parent 1030a8305c
commit affafafe37
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 14 additions and 0 deletions

View File

@ -417,6 +417,9 @@ var tarteaucitron = {
body.appendChild(div, body);
div.innerHTML = html;
var tacRootAvailableEvent = new Event("tac.root_available");
window.dispatchEvent(tacRootAvailableEvent);
if (tarteaucitron.job !== undefined) {
tarteaucitron.job = tarteaucitron.cleanArray(tarteaucitron.job);
for (index = 0; index < tarteaucitron.job.length; index += 1) {
@ -762,6 +765,9 @@ var tarteaucitron = {
document.getElementsByTagName('body')[0].classList.add('modal-open');
tarteaucitron.userInterface.focusTrap();
tarteaucitron.userInterface.jsSizing('main');
var tacOpenPanelEvent = new Event("tac.open_panel");
window.dispatchEvent(tacOpenPanelEvent);
},
"closePanel": function () {
"use strict";
@ -787,6 +793,8 @@ var tarteaucitron = {
//document.getElementById('contentWrapper').setAttribute("aria-hidden", "false");
document.getElementsByTagName('body')[0].classList.remove('modal-open');
var tacClosePanelEvent = new Event("tac.close_panel");
window.dispatchEvent(tacClosePanelEvent);
},
"focusTrap": function() {
"use strict";
@ -834,6 +842,9 @@ var tarteaucitron = {
tarteaucitron.userInterface.css(c + 'Percentage', 'display', 'block');
tarteaucitron.userInterface.css(c + 'AlertSmall', 'display', 'none');
tarteaucitron.userInterface.css(c + 'AlertBig', 'display', 'block');
var tacOpenAlertEvent = new Event("tac.open_alert");
window.dispatchEvent(tacOpenAlertEvent);
},
"closeAlert": function () {
"use strict";
@ -842,6 +853,9 @@ var tarteaucitron = {
tarteaucitron.userInterface.css(c + 'AlertSmall', 'display', 'block');
tarteaucitron.userInterface.css(c + 'AlertBig', 'display', 'none');
tarteaucitron.userInterface.jsSizing('box');
var tacCloseAlertEvent = new Event("tac.close_alert");
window.dispatchEvent(tacCloseAlertEvent);
},
"toggleCookiesList": function () {
"use strict";