From 84dc71ab2316f57f497ad9f25b99287a3e9a74e9 Mon Sep 17 00:00:00 2001
From: enured <enis.nuredini@uzh.ch>
Date: Fri, 31 Mar 2023 00:04:17 +0200
Subject: [PATCH] S15813: Fixed delete subrecord row behaviour after pressing
 'Enter'. refs #15813

---
 extension/Classes/Core/Report/Link.php | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/extension/Classes/Core/Report/Link.php b/extension/Classes/Core/Report/Link.php
index 869c08518..1339568d4 100644
--- a/extension/Classes/Core/Report/Link.php
+++ b/extension/Classes/Core/Report/Link.php
@@ -1442,9 +1442,11 @@ class Link {
         $timeout = ($arr[QUESTION_INDEX_TIMEOUT] === '') ? '0' : $arr[QUESTION_INDEX_TIMEOUT] * 1000;
         $flagModalStatus = ($arr[QUESTION_INDEX_FLAG_MODAL] === '') ? '1' : $arr[QUESTION_INDEX_FLAG_MODAL];
         $flagModal = ($flagModalStatus === "1") ? 'true' : 'false';
+        // Check if affected button has class 'record-delete' and prevent it being triggered with enter press
+        $preventScript = ($vars[NAME_LINK_CLASS] === 'record-delete') ? 'if (event.detail === 0) { event.preventDefault(); return false; }' : '';
 
         $js = <<<EOF
-var alert = new QfqNS.Alert({ message: '$text', type: '$level', modal: $flagModal, timeout: $timeout, buttons: [
+$preventScript var alert = new QfqNS.Alert({ message: '$text', type: '$level', modal: $flagModal, timeout: $timeout, buttons: [
     { label: '$ok', eventName: 'ok' }
     $cancel
 ] } );
-- 
GitLab