From 11d62b6cd48db2353da370ce777ad0e6af9dce76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9CSebastian?= <64795732+slegarraga@users.noreply.github.com> Date: Fri, 22 May 2026 10:04:29 -0400 Subject: [PATCH] fix(a11y): focus modals on open and update privatebin.js SRI - Load-confirm modal: focus primary action on show - Email-confirm modal: focus UTC button on show (safer default) - Update SRI for js/privatebin.js in Configuration.php Fixes #1801 --- js/privatebin.js | 8 ++++++++ lib/Configuration.php | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/js/privatebin.js b/js/privatebin.js index de750e97..17c45b94 100644 --- a/js/privatebin.js +++ b/js/privatebin.js @@ -2317,6 +2317,10 @@ jQuery.PrivateBin = (function($) { $loadconfirmClose.off('click.close'); $loadconfirmClose.on('click.close', Controller.newPaste); + $loadconfirmmodal.on('shown.bs.modal', () => { + $loadconfirmOpenNow.trigger('focus'); + }); + if (typeof bootstrap !== 'undefined' && bootstrap.Tooltip.VERSION) { (new bootstrap.Modal($loadconfirmmodal[0])).show(); } else { @@ -4193,6 +4197,10 @@ jQuery.PrivateBin = (function($) { triggerEmailSend(emailBody); } + $emailconfirmmodal.on('shown.bs.modal', () => { + $emailconfirmTimezoneUtc.trigger('focus'); + }); + $emailconfirmTimezoneCurrent.off('click.sendEmailCurrentTimezone'); $emailconfirmTimezoneCurrent.on('click.sendEmailCurrentTimezone', sendEmailAndHideModal); $emailconfirmTimezoneUtc.off('click.sendEmailUtcTimezone'); diff --git a/lib/Configuration.php b/lib/Configuration.php index ca979f24..92095561 100644 --- a/lib/Configuration.php +++ b/lib/Configuration.php @@ -122,7 +122,7 @@ class Configuration 'js/kjua-0.10.0.js' => 'sha512-BYj4xggowR7QD150VLSTRlzH62YPfhpIM+b/1EUEr7RQpdWAGKulxWnOvjFx1FUlba4m6ihpNYuQab51H6XlYg==', 'js/legacy.js' => 'sha512-RQEo1hxpNc37i+jz/D9/JiAZhG8GFx3+SNxjYnI7jUgirDIqrCSj6QPAAZeaidditcWzsJ3jxfEj5lVm7ZwTRQ==', 'js/prettify.js' => 'sha512-puO0Ogy++IoA2Pb9IjSxV1n4+kQkKXYAEUtVzfZpQepyDPyXk8hokiYDS7ybMogYlyyEIwMLpZqVhCkARQWLMg==', - 'js/privatebin.js' => 'sha512-/IEJKCrmYXO6DJF1/vjiwl/bJTykFJQvYy7FlAJRwf3vhaeI6C0T60w8gIDBBYsfDK54PSKSU3zDN6fU33flPg==', + 'js/privatebin.js' => 'sha512-U52jFm7xsPJsJ7M/sFF6GoEBLTQ4pcvNDN5z3JcH0P2xHokiV3YrhfSi6XgTnBANdnjAXmg9GfJf3Bs2yKAiug==', 'js/purify-3.4.1.js' => 'sha512-280a/Vb6fVFsYaeRrkuDp4EDmdYlt2XS+dlDEO/U9qljPrAraA2bIzHTNmP+9dpwPDDwTML+RS+h5iaagPwTzA==', 'js/showdown-2.1.0.js' => 'sha512-WYXZgkTR0u/Y9SVIA4nTTOih0kXMEd8RRV6MLFdL6YU8ymhR528NLlYQt1nlJQbYz4EW+ZsS0fx1awhiQJme1Q==', 'js/zlib-1.3.2.js' => 'sha512-RAhJgxg9siMIA8ky4c10Rc2zUgnK80olHB8Tt1IOYWY4Eh1WmrviQkDn+sgBlb38ZHq3tzufGC41kP360gmosQ==',