From 6fb78e0bbb4fd4748ff1e9dd45bea44c878ae850 Mon Sep 17 00:00:00 2001 From: Esteban Date: Thu, 2 Jul 2026 15:42:52 +0200 Subject: [PATCH] =?UTF-8?q?Corrige=20le=20double=20s=C3=A9lecteur=20de=20f?= =?UTF-8?q?ichier=20sur=20les=20zones=20de=20drop=20PDF=20(panel=20admin)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit L'input file étant imbriqué dans la zone cliquable, input.click() déclenchait un évènement click qui remontait (bubble) jusqu'à la zone et relançait input.click() une seconde fois. Ajout d'un garde-fou sur e.target. Co-Authored-By: Claude Sonnet 5 --- pages/admin.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pages/admin.php b/pages/admin.php index bc59f91..2ac2b32 100644 --- a/pages/admin.php +++ b/pages/admin.php @@ -426,7 +426,11 @@ $noticeEnabled = recupererSetting('site_notice_enabled') ?? '1'; } // Clic sur la zone = ouvre le sélecteur de fichier - zone.addEventListener('click', function () { + // Garde-fou : input.click() déclenche lui-même un évènement "click" qui remonte + // (bubble) jusqu'à la zone puisque l'input est à l'intérieur de celle-ci. Sans ce + // test, ce clic remonté relance input.click() une seconde fois => double sélecteur. + zone.addEventListener('click', function (e) { + if (e.target === input) return; input.click(); });