From 3bdf1695fd6f4148f6e3edacf50348e20b7f3695 Mon Sep 17 00:00:00 2001 From: Samir Boulahtit Date: Wed, 4 Feb 2026 22:26:05 +0100 Subject: [PATCH] fix: move init guard to prevent race conditions in email-templates The initialization guard was placed after the await I18n.loadModule() call, which could cause race conditions if Alpine calls init() multiple times before the guard is set. This aligns with the pattern used by other pages. Co-Authored-By: Claude Opus 4.5 --- app/modules/messaging/static/admin/js/email-templates.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/app/modules/messaging/static/admin/js/email-templates.js b/app/modules/messaging/static/admin/js/email-templates.js index 42f01b8a..6c7d7c3d 100644 --- a/app/modules/messaging/static/admin/js/email-templates.js +++ b/app/modules/messaging/static/admin/js/email-templates.js @@ -57,12 +57,13 @@ function emailTemplatesPage() { // Lifecycle async init() { - // Load i18n translations - await I18n.loadModule('messaging'); - + // Guard against duplicate initialization if (window._adminEmailTemplatesInitialized) return; window._adminEmailTemplatesInitialized = true; + // Load i18n translations + await I18n.loadModule('messaging'); + await this.loadData(); },