| Server IP : 213.186.33.4 / Your IP : 216.73.216.193 Web Server : Apache System : Linux webm006.cluster103.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64 User : awebpaca ( 35430) PHP Version : 8.5.0 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/a/w/e/awebpaca/piwik/plugins/TagManager/Template/Trigger/ |
Upload File : |
(function () {
return function (parameters, TagManager) {
function isMatchingEvent(value) {
var eventName = parameters.get('eventName');
return eventName && TagManager.utils.isObject(value) && 'event' in value && value.event === eventName;
}
// we are catching all events that have been triggered before the container has been set up
// ie events that are directly triggered before the tag manager has been loaded etc
var missedEvents = [];
var index = parameters.container.dataLayer.on(function (value) {
if (isMatchingEvent(value)) {
missedEvents.push(value.event);
}
});
this.setUp = function (triggerEvent) {
// no longer listen to previous events, we will now trigger events directly when they occur
parameters.container.dataLayer.off(index);
// replay missed events
for (var i = 0; i < missedEvents.length; i++) {
triggerEvent({event: 'mtm.CustomEvent', 'mtm.customEventMatch': missedEvents[i]});
}
parameters.container.dataLayer.on(function (value) {
if (isMatchingEvent(value)) {
triggerEvent({event: 'mtm.CustomEvent', 'mtm.customEventMatch': value.event});
}
});
};
};
})();