From 829800ff058bb7ddcc2b3e8d3f7139a25f1f61e9 Mon Sep 17 00:00:00 2001 From: Owen Leonard Date: Wed, 8 Feb 2023 17:46:16 +0000 Subject: [PATCH] Bug 32914: Use template wrapper for batch record deletion and modification templates This patch updates the batch record modification and batch record deletion templates to replace tab markup with the use of WRAPPERs. This patch adds a "clearfix" snippet of CSS to _mixins.scss copied from Bootstrap. Applied to the active tab pane, this helps in situations where Bootstrap tabs follow a floated element. The patch also wraps tab label strings in to ensure they can be translated. Unrelated: The patch removes an extra from the batch record modification template. To test you should have at least one list and at least one MARC modification template defined. - Apply the patch and go to Cataloging -> Batch record modification - You should see three tabs, "Upload a file," "Select a list of records," and "Enter a list of record numbers." - The tabs should look correct and work correctly. - Checking the "Authorities" radio button should hide the lists tab. - Test that submissions from each form work correctly. - Go to Cataloging -> Batch record deletion and perform the same tests. --- .../intranet-tmpl/prog/css/src/_mixins.scss | 9 ++ .../prog/css/src/staff-global.scss | 6 + .../en/modules/tools/batch_delete_records.tt | 117 ++++++++---------- .../tools/batch_record_modification.tt | 51 +++----- 4 files changed, 89 insertions(+), 94 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/css/src/_mixins.scss b/koha-tmpl/intranet-tmpl/prog/css/src/_mixins.scss index d5924acd0b..68354bd282 100644 --- a/koha-tmpl/intranet-tmpl/prog/css/src/_mixins.scss +++ b/koha-tmpl/intranet-tmpl/prog/css/src/_mixins.scss @@ -76,3 +76,12 @@ $nav-menu-bullet: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/s background-color: white; } } + +/* Copied from Bootstrap 5 */ +@mixin clearfix() { + &::after { + clear: both; + content: ""; + display: block; + } +} diff --git a/koha-tmpl/intranet-tmpl/prog/css/src/staff-global.scss b/koha-tmpl/intranet-tmpl/prog/css/src/staff-global.scss index ab0a8f9e3e..06c2a9b2fb 100644 --- a/koha-tmpl/intranet-tmpl/prog/css/src/staff-global.scss +++ b/koha-tmpl/intranet-tmpl/prog/css/src/staff-global.scss @@ -4307,6 +4307,12 @@ div .suggestion_note { margin: .5em; } +.tab-pane { + &.active { + @include clearfix(); + } +} + @import "header"; @import "toolbar"; @import "forms"; diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batch_delete_records.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batch_delete_records.tt index 8a522832ca..ceb981d359 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batch_delete_records.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batch_delete_records.tt @@ -69,65 +69,55 @@ -
- + [% WRAPPER tabs id= "batch_del_form" %] + [% WRAPPER tabs_nav %] + [% WRAPPER tab_item tabname= "uploadfile_tab" bt_active= 1 %] Upload a file [% END %] + [% IF lists.count %] + [% WRAPPER tab_item tabname= "shelves_tab" %] Select a list of records [% END %] + [% END %] + [% WRAPPER tab_item tabname= "enterlist_tab" %] Enter a list of record numbers [% END %] + [% END # /WRAPPER tabs_nav %] -
-
-
-
    -
  1. -
-
-   -
+ [% WRAPPER tab_panels %] + [% WRAPPER tab_panel tabname="uploadfile_tab" bt_active= 1 %] +
+
    +
  1. +
+
+ [% END # /WRAPPER tab_panel %] - [% IF lists.count %] -
-
-
    -
  1. - - -
  2. -
-
-   -
- [% END %] + [% IF lists.count %] + [% WRAPPER tab_panel tabname="shelves_tab" %] +
+
    +
  1. + + +
  2. +
+
+ [% END # /WRAPPER tab_panel %] + [% END # /IF lists.count %] -
-
-
    -
  1. - - -
    Enter a list of biblionumbers or authority IDs, one per line.
    -
  2. -
-
-   -
- -
-
+ [% WRAPPER tab_panel tabname="enterlist_tab" %] +
+
    +
  1. + + +
    Enter a list of biblionumbers or authority IDs, one per line.
    +
  2. +
+
+ [% END # /WRAPPER tab_panel %] + [% END # /WRAPPER tab_panels %] + [% END # /WRAPPER tabs %]
@@ -238,13 +228,14 @@ var MSG_CANNOT_BE_DELETED = _("This record cannot be deleted, at least one item is currently checked out."); $(document).ready(function() { - $("input[type='radio']").click(function(){ - if ($(this).attr('id') == 'authority_type') { - $("#show_list_option").hide(); - } else if ($(this).attr('id') == 'biblio_type') { - $("#show_list_option").show(); - } - }); + $("input[type='radio']").click(function() { + if ($(this).attr('id') == 'authority_type') { + $("a[href='#shelves_tab_panel']").parent().hide(); + } else if ($(this).attr('id') == 'biblio_type') { + $("a[href='#shelves_tab_panel']").parent().show(); + } + }); + $("#selectall").click(function(e){ e.preventDefault(); $(".records input[type='checkbox']:not(:disabled)").each(function(){ diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batch_record_modification.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batch_record_modification.tt index f7935a0944..35dbaf92ea 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batch_record_modification.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batch_record_modification.tt @@ -86,33 +86,26 @@

-
- - -
-
+ [% WRAPPER tab_item tabname= "enterlist_tab" %] Enter a list of record numbers [% END %] + [% END # /WRAPPER tabs_nav %] + [% WRAPPER tab_panels %] + [% WRAPPER tab_panel tabname="uploadfile_tab" bt_active= 1 %]
-   -
+ [% END # /tab_panel %] [% IF lists.count %] -
+ [% WRAPPER tab_panel tabname="shelves_tab" %]
  1. @@ -122,16 +115,13 @@ [% FOREACH list IN lists %] [% END %] -
-   -
+ [% END # /tab_panel %] [% END %] - -
+ [% WRAPPER tab_panel tabname="enterlist_tab" %]
  1. @@ -141,10 +131,9 @@
-   -
-
-
+ [% END # /tab_panel %] + [% END # /WRAPPER tab_panels %] + [% END # /WRAPPER tabs %]
MARC modification template @@ -306,9 +295,9 @@ $("input[type='radio']").click(function() { if ($(this).attr('id') == 'authority_type') { - $("#show_list_option").hide(); + $("a[href='#shelves_tab_panel']").parent().hide(); } else if ($(this).attr('id') == 'biblio_type') { - $("#show_list_option").show(); + $("a[href='#shelves_tab_panel']").parent().show(); } }); @@ -362,10 +351,10 @@ $("#record_ids_selection").on("submit", function(e) { var tab = $(this).find('#batch_mod_form li.active:first a').attr('href'); - if (tab == '#uploadfile_tab') { + if (tab == '#uploadfile_tab_panel') { $("#shelf_number").empty(''); $("#recordnumber_list").val(''); - } else if (tab == '#shelves_tab') { + } else if (tab == '#shelves_tab_panel') { $("#uploadfile").val('') $("#recordnumber_list").val(''); } else { // enterlist -- 2.30.2