From 883b6efd091ced42646d2d1573cfcc5dd33b1de3 Mon Sep 17 00:00:00 2001
From: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Date: Mon, 7 Nov 2022 16:44:29 +0000
Subject: [PATCH] Bug 32125: Select correct tab on return

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
---
 .../opac-tmpl/bootstrap/en/modules/opac-detail.tt      | 10 +++++++++-
 koha-tmpl/opac-tmpl/bootstrap/js/global.js             |  9 ++++++++-
 2 files changed, 17 insertions(+), 2 deletions(-)

diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-detail.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-detail.tt
index 85979b934c..361b58a250 100644
--- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-detail.tt
+++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-detail.tt
@@ -880,7 +880,7 @@
                                         [% END %]
                                     [% ELSE %]
                                         <div id="addcomment">
-                                            <a class="login-link loginModal-trigger" role="button" data-toggle="modal" data-return="true" href="/cgi-bin/koha/opac-user.pl">Log in to your account</a> to post a comment.
+                                            <a class="login-link loginModal-trigger" role="button" data-toggle="modal" data-return="true" data-tab="comment" href="/cgi-bin/koha/opac-user.pl">Log in to your account</a> to post a comment.
                                         </div>
                                     [% END # / IF loggedinusername %]
                                 </div> <!-- / #comments -->
@@ -1705,6 +1705,14 @@
                 showBsTab("bibliodescriptions", "holdings");
             [% END -%]
 
+            let urlParams = new URLSearchParams(window.location.search);
+            if ( urlParams.has('tab') ) {
+                let tab = urlParams.get('tab');
+                if ( tab == 'comment' ) {
+                    showBsTab("bibliodescriptions", "comments");
+                }
+            }
+
             [% IF ( Koha.Preference('OpacBrowseResults') && busc ) %]
                 $(".l_Results").show();
                 $("#a_listResults").on("click", function(e){
diff --git a/koha-tmpl/opac-tmpl/bootstrap/js/global.js b/koha-tmpl/opac-tmpl/bootstrap/js/global.js
index ce5d4f64b6..b9ea0b6edf 100644
--- a/koha-tmpl/opac-tmpl/bootstrap/js/global.js
+++ b/koha-tmpl/opac-tmpl/bootstrap/js/global.js
@@ -228,7 +228,14 @@ $(document).ready(function(){
         var button = $(this);
         var context = button.data('return');
         if ( context ) {
-            $('#modalAuth').append('<input type="hidden" name="return" value="'+window.location.pathname+window.location.search+'" />');
+            let return_url = window.location.pathname;
+            let params = window.location.search;
+            var tab = button.data('tab');
+            if ( tab ) {
+                params = params ? params + '&tab=' + tab : '?tab=' + tab;
+            }
+            return_url += params;
+            $('#modalAuth').append('<input type="hidden" name="return" value="'+return_url+'" />');
         }
         $("#loginModal").modal("show");
     });
-- 
2.20.1