From c684ac0f9b87e46a1ad0f83c7ce567c3655b6f44 Mon Sep 17 00:00:00 2001 From: Owen Leonard <oleonard@myacpl.org> Date: Wed, 30 Aug 2023 16:00:15 +0000 Subject: [PATCH] Bug 34566: Update MARC21 cataloging plugins with consistent footers This patch updates MARC21 cataloging plugin templates so that submit and cancel controls are consistently displayed in a fixed footer. To test, apply the patch and go to Cataloging. - Create or edit a bibliographic record - Test the cataloging plugins for these fields: - 000 (Leader) - 006 - 007 - 008 - In each case, confirm that the correct popup window is shown when you click the plugin link. - Confirm that clicking the "Cancel" button closes the window without copying any data to the field in the MARC editor. * Note that if the plugin is also triggered by cursor focus in the input field, some data may be automatically filled anyway. - Confirm that filing in data and clicking "Submit" will copy the correct information into the field. - Go to Authorities and create or edit an authority record. - Test the plugin for these fields: - 000 (Leader) - 008 - Perform the same tests as above. I don't think the marc21_field_008_classifications is used at all, but the template has been updated anyway. To test, edit your authority record to use the plugin: - Administration -> Authority types -> Default -> MARC structure -> 008 -> Subfields -> Edit. - Under Advanced constraints -> Plugin, select "marc21_field_008_classifcations.pl" - Re-test the behavior of the authority editor's tag 008 plugin to confirm that this plugin is used and works correctly. --- .../cataloguing/value_builder/EXAMPLE.tt | 15 +- .../value_builder/marc21_field_006.tt | 10 +- .../value_builder/marc21_field_007.tt | 9 +- .../value_builder/marc21_field_008.tt | 9 + .../marc21_field_008_authorities.tt | 9 +- .../marc21_field_008_classifications.tt | 395 +++++++++--------- .../value_builder/marc21_leader.tt | 9 +- .../marc21_leader_authorities.tt | 10 +- .../intranet-tmpl/prog/js/staff-global.js | 5 +- 9 files changed, 269 insertions(+), 202 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/EXAMPLE.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/EXAMPLE.tt index 78b2222ff5..7ffc11fefc 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/EXAMPLE.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/EXAMPLE.tt @@ -12,11 +12,18 @@ <input type="text" id="received" value="[% result | html %]" disabled /> <p>I will pass back what you type here, if you press OK.</p> + <input type="text" id="return" value="[% result | html %]" /> -<p> - <input type="button" value="OK" onclick="submitMyForm();" /> - <a href="#" class="cancel close">Cancel</a> -</p> + +<nav class="navbar navbar-default navbar-fixed-bottom"> + <div class="container-fluid"> + <fieldset class="action"> + <input type="button" class="btn btn-primary" value="OK" onclick="submitMyForm();" /> + <button class="btn btn-default close_window">Cancel</button> + </fieldset> + </div> +</nav> + </form> <script> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_006.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_006.tt index ea3ca885b8..73ddd2d782 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_006.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_006.tt @@ -31,7 +31,15 @@ </td> </tr> </table> - <fieldset class="action"><input type="submit" class="btn btn-primary" value="OK" /> <a href="#" class="cancel close">Cancel</a></fieldset> + + <nav class="navbar navbar-default navbar-fixed-bottom"> + <div class="container-fluid"> + <fieldset class="action"> + <input type="submit" class="btn btn-primary" value="Save" /> + <button class="btn btn-default close_window">Cancel</button> + </fieldset> + </div> + </nav> </form> </div> <!-- /.page-section --> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_007.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_007.tt index e9b856a2d6..4b91d79d73 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_007.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_007.tt @@ -93,7 +93,14 @@ <div id="choices"> </div> - <fieldset class="action"><input type="submit" class="btn btn-primary" value="OK" /> <a href="#" class="cancel close">Cancel</a></fieldset> + <nav class="navbar navbar-default navbar-fixed-bottom"> + <div class="container-fluid"> + <fieldset class="action"> + <input type="submit" class="btn btn-primary" value="Save" /> + <button class="btn btn-default close_window">Cancel</button> + </fieldset> + </div> + </nav> </form> </div> <!-- /.page-section --> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008.tt index 2d8aba4814..34ffcb3ba0 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008.tt @@ -44,6 +44,15 @@ </tr> </table> </div> <!-- /.page-section --> + + <nav class="navbar navbar-default navbar-fixed-bottom"> + <div class="container-fluid"> + <fieldset class="action"> + <input type="submit" class="btn btn-primary" value="Save" /> + <button class="btn btn-default close_window">Cancel</button> + </fieldset> + </div> + </nav> </form> [% MACRO jsinclude BLOCK %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008_authorities.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008_authorities.tt index 75d8129a8c..d590bad442 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008_authorities.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008_authorities.tt @@ -716,7 +716,14 @@ </td> </tr> </table> - <fieldset class="action"><input type="submit" class="btn btn-primary" value="OK" /> <a href="#" class="cancel close">Cancel</a></fieldset> + <nav class="navbar navbar-default navbar-fixed-bottom"> + <div class="container-fluid"> + <fieldset class="action"> + <input type="submit" class="btn btn-primary" value="Save" /> + <button class="btn btn-default close_window">Cancel</button> + </fieldset> + </div> + </nav> </div> <!-- /.page-section --> </form> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008_classifications.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008_classifications.tt index 18d85c90d7..929a106c09 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008_classifications.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_field_008_classifications.tt @@ -6,198 +6,209 @@ <body id="cat_marc21_field_008_classifications" class="cat value_builder"> <h1> 008 Fixed-length data elements</h1> -<form name="f_pop" onsubmit="report()" action=""> -<input type="hidden" name="plugin_name" value="marc21_field_008_classifications.pl" /> -<input name="f1" value="[% f1 | html %]" type="hidden" /> -<table> - <tr> - <td>00-05- Date entered on file</td> - <td>[% f1 | html %]</td> - </tr> - <tr> - <td><label for="f6">06- Kind of record</label></td> - <td> - <select name="f6" id="f6"> - [% IF ( f6a ) %] - <option value="a" selected="selected">a- Schedule record</option> - [% ELSE %] - <option value="a">a- Schedule record</option> - [% END %] - [% IF ( f6b ) %] - <option value="b" selected="selected">b- Table record</option> - [% ELSE %] - <option value="b">b- Table record</option> - [% END %] - [% IF ( f6c ) %] - <option value="c" selected="selected">c- Index term record</option> - [% ELSE %] - <option value="c">c- Index term record</option> - [% END %] - </select> - </td> - </tr> - <tr> - <td><label for="f7">07- Type of number</label></td> - <td> - <select name="f7" id="f7"> - [% IF ( f7a ) %] - <option value="a" selected="selected">a- Single number</option> - [% ELSE %] - <option value="a">a- Single number</option> - [% END %] - [% IF ( f7b ) %] - <option value="b" selected="selected">b- Defined number span</option> - [% ELSE %] - <option value="b">b- Defined number span</option> - [% END %] - [% IF ( f7c ) %] - <option value="c" selected="selected">c- Summary number span</option> - [% ELSE %] - <option value="c">c- Summary number span</option> - [% END %] - [% IF ( f7n ) %] - <option value="n" selected="selected">n- Not applicable</option> - [% ELSE %] - <option value="n">n - Not applicable</option> - [% END %] - </select> - </td> - </tr> - <tr> - <td><label for="f8">08- Classification validity</label></td> - <td> - <select name="f8" id="f8"> - [% IF ( f8a ) %] - <option value="a" selected="selected">a- Valid</option> - [% ELSE %] - <option value="a">a- Valid</option> - [% END %] - [% IF ( f8b ) %] - <option value="b" selected="selected">b- First number of span invalid</option> - [% ELSE %] - <option value="b">b- First number of span invalid</option> - [% END %] - [% IF ( f8c ) %] - <option value="c" selected="selected">c- Last number of span invalid</option> - [% ELSE %] - <option value="c">c- Last number of span invalid</option> - [% END %] - [% IF ( f8d ) %] - <option value="d" selected="selected">d- Completely invalid</option> - [% ELSE %] - <option value="d">d- Completely invalid</option> - [% END %] - [% IF ( f8e ) %] - <option value="e" selected="selected">e- Obsolete</option> - [% ELSE %] - <option value="e">e- Obsolete</option> - [% END %] - [% IF ( f8n ) %] - <option value="n" selected="selected">n- Not applicable</option> - [% ELSE %] - <option value="n">n - Not applicable</option> - [% END %] - </select> - </td> - </tr> - <tr> - <td><label for="f9">09- Standard or optional designation</label></td> - <td> - <select name="f9" id="f9"> - [% IF ( f9a ) %] - <option value="a" selected="selected">a- Standard</option> - [% ELSE %] - <option value="a">a- Standard</option> - [% END %] - [% IF ( f9b ) %] - <option value="b" selected="selected">b- Optional</option> - [% ELSE %] - <option value="b">b- Optional</option> - [% END %] - [% IF ( f9n ) %] - <option value="n" selected="selected">n- Not applicable</option> - [% ELSE %] - <option value="n">n - Not applicable</option> - [% END %] - </select> - </td> - </tr> - <tr> - <td><label for="f10">10- Record update in process</label></td> - <td> - <select name="f10" id="f10"> - [% IF ( f10a ) %] - <option value="a" selected="selected">a- Record can be used</option> - [% ELSE %] - <option value="a">a- Record can be used</option> - [% END %] - [% IF ( f10b ) %] - <option value="b" selected="selected">b- Record is being updated</option> - [% ELSE %] - <option value="b">b- Record is being updated</option> - [% END %] - </select> - </td> - </tr> - <tr> - <td><label for="f11">11- Level of establishment</label></td> - <td> - <select name="f11" id="f11"> - [% IF ( f11a ) %] - <option value="a" selected="selected">a- Fully established</option> - [% ELSE %] - <option value="a">a- Fully established</option> - [% END %] - [% IF ( f11c ) %] - <option value="c" selected="selected">c- Provisional</option> - [% ELSE %] - <option value="c">c- Provisional</option> - [% END %] - </select> - </td> - </tr> - <tr> - <td><label for="f12">12- Synthesized number indication</label></td> - <td> - <select name="f12" id="f12"> - [% IF ( f12a ) %] - <option value="a" selected="selected">a- Not synthesized</option> - [% ELSE %] - <option value="a">a- Not synthesized</option> - [% END %] - [% IF ( f12b ) %] - <option value="b" selected="selected">b- Synthesized</option> - [% ELSE %] - <option value="b">b- Synthesized</option> - [% END %] - [% IF ( f12n ) %] - <option value="n" selected="selected">n- Not applicable</option> - [% ELSE %] - <option value="n">n - Not applicable</option> - [% END %] - </select> - </td> - </tr> - <tr> - <td><label for="f13">13- Display controller</label></td> - <td> - <select name="f13" id="f13"> - [% IF ( f13a ) %] - <option value="a" selected="selected">a- Displayed in standard schedules or tables</option> - [% ELSE %] - <option value="a">a- Displayed in standard schedules or tables</option> - [% END %] - [% IF ( f13b ) %] - <option value="b" selected="selected">b- Extended display</option> - [% ELSE %] - <option value="b">b- Extended display</option> - [% END %] - </select> - </td> - </tr> -</table> -<fieldset class="action"><input type="submit" class="btn btn-primary" value="OK" /> <a href="#" class="cancel close">Cancel</a></fieldset> -</form> + +<div class="page-section"> + <form name="f_pop" onsubmit="report()" action=""> + <input type="hidden" name="plugin_name" value="marc21_field_008_classifications.pl" /> + <input name="f1" value="[% f1 | html %]" type="hidden" /> + <table> + <tr> + <td>00-05- Date entered on file</td> + <td>[% f1 | html %]</td> + </tr> + <tr> + <td><label for="f6">06- Kind of record</label></td> + <td> + <select name="f6" id="f6"> + [% IF ( f6a ) %] + <option value="a" selected="selected">a- Schedule record</option> + [% ELSE %] + <option value="a">a- Schedule record</option> + [% END %] + [% IF ( f6b ) %] + <option value="b" selected="selected">b- Table record</option> + [% ELSE %] + <option value="b">b- Table record</option> + [% END %] + [% IF ( f6c ) %] + <option value="c" selected="selected">c- Index term record</option> + [% ELSE %] + <option value="c">c- Index term record</option> + [% END %] + </select> + </td> + </tr> + <tr> + <td><label for="f7">07- Type of number</label></td> + <td> + <select name="f7" id="f7"> + [% IF ( f7a ) %] + <option value="a" selected="selected">a- Single number</option> + [% ELSE %] + <option value="a">a- Single number</option> + [% END %] + [% IF ( f7b ) %] + <option value="b" selected="selected">b- Defined number span</option> + [% ELSE %] + <option value="b">b- Defined number span</option> + [% END %] + [% IF ( f7c ) %] + <option value="c" selected="selected">c- Summary number span</option> + [% ELSE %] + <option value="c">c- Summary number span</option> + [% END %] + [% IF ( f7n ) %] + <option value="n" selected="selected">n- Not applicable</option> + [% ELSE %] + <option value="n">n - Not applicable</option> + [% END %] + </select> + </td> + </tr> + <tr> + <td><label for="f8">08- Classification validity</label></td> + <td> + <select name="f8" id="f8"> + [% IF ( f8a ) %] + <option value="a" selected="selected">a- Valid</option> + [% ELSE %] + <option value="a">a- Valid</option> + [% END %] + [% IF ( f8b ) %] + <option value="b" selected="selected">b- First number of span invalid</option> + [% ELSE %] + <option value="b">b- First number of span invalid</option> + [% END %] + [% IF ( f8c ) %] + <option value="c" selected="selected">c- Last number of span invalid</option> + [% ELSE %] + <option value="c">c- Last number of span invalid</option> + [% END %] + [% IF ( f8d ) %] + <option value="d" selected="selected">d- Completely invalid</option> + [% ELSE %] + <option value="d">d- Completely invalid</option> + [% END %] + [% IF ( f8e ) %] + <option value="e" selected="selected">e- Obsolete</option> + [% ELSE %] + <option value="e">e- Obsolete</option> + [% END %] + [% IF ( f8n ) %] + <option value="n" selected="selected">n- Not applicable</option> + [% ELSE %] + <option value="n">n - Not applicable</option> + [% END %] + </select> + </td> + </tr> + <tr> + <td><label for="f9">09- Standard or optional designation</label></td> + <td> + <select name="f9" id="f9"> + [% IF ( f9a ) %] + <option value="a" selected="selected">a- Standard</option> + [% ELSE %] + <option value="a">a- Standard</option> + [% END %] + [% IF ( f9b ) %] + <option value="b" selected="selected">b- Optional</option> + [% ELSE %] + <option value="b">b- Optional</option> + [% END %] + [% IF ( f9n ) %] + <option value="n" selected="selected">n- Not applicable</option> + [% ELSE %] + <option value="n">n - Not applicable</option> + [% END %] + </select> + </td> + </tr> + <tr> + <td><label for="f10">10- Record update in process</label></td> + <td> + <select name="f10" id="f10"> + [% IF ( f10a ) %] + <option value="a" selected="selected">a- Record can be used</option> + [% ELSE %] + <option value="a">a- Record can be used</option> + [% END %] + [% IF ( f10b ) %] + <option value="b" selected="selected">b- Record is being updated</option> + [% ELSE %] + <option value="b">b- Record is being updated</option> + [% END %] + </select> + </td> + </tr> + <tr> + <td><label for="f11">11- Level of establishment</label></td> + <td> + <select name="f11" id="f11"> + [% IF ( f11a ) %] + <option value="a" selected="selected">a- Fully established</option> + [% ELSE %] + <option value="a">a- Fully established</option> + [% END %] + [% IF ( f11c ) %] + <option value="c" selected="selected">c- Provisional</option> + [% ELSE %] + <option value="c">c- Provisional</option> + [% END %] + </select> + </td> + </tr> + <tr> + <td><label for="f12">12- Synthesized number indication</label></td> + <td> + <select name="f12" id="f12"> + [% IF ( f12a ) %] + <option value="a" selected="selected">a- Not synthesized</option> + [% ELSE %] + <option value="a">a- Not synthesized</option> + [% END %] + [% IF ( f12b ) %] + <option value="b" selected="selected">b- Synthesized</option> + [% ELSE %] + <option value="b">b- Synthesized</option> + [% END %] + [% IF ( f12n ) %] + <option value="n" selected="selected">n- Not applicable</option> + [% ELSE %] + <option value="n">n - Not applicable</option> + [% END %] + </select> + </td> + </tr> + <tr> + <td><label for="f13">13- Display controller</label></td> + <td> + <select name="f13" id="f13"> + [% IF ( f13a ) %] + <option value="a" selected="selected">a- Displayed in standard schedules or tables</option> + [% ELSE %] + <option value="a">a- Displayed in standard schedules or tables</option> + [% END %] + [% IF ( f13b ) %] + <option value="b" selected="selected">b- Extended display</option> + [% ELSE %] + <option value="b">b- Extended display</option> + [% END %] + </select> + </td> + </tr> + </table> + + <nav class="navbar navbar-default navbar-fixed-bottom"> + <div class="container-fluid"> + <fieldset class="action"> + <input type="submit" class="btn btn-primary" value="Save" /> + <button class="btn btn-default close_window">Cancel</button> + </fieldset> + </div> + </nav> + </form> +</div> <!-- /.page-section --> [% MACRO jsinclude BLOCK %] <script> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader.tt index 5cbec22bb8..294334a24d 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader.tt @@ -346,7 +346,14 @@ </tr> </table> - <fieldset class="action"><input type="submit" class="btn btn-primary" value="OK" /> <a href="#" class="cancel close">Cancel</a></fieldset> + <nav class="navbar navbar-default navbar-fixed-bottom"> + <div class="container-fluid"> + <fieldset class="action"> + <input type="submit" class="btn btn-primary" value="Save" /> + <button class="btn btn-default close_window">Cancel</button> + </fieldset> + </div> + </nav> </div> <!-- /.page-section --> </form> diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_authorities.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_authorities.tt index ebde4ea6ef..e9ea65f511 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_authorities.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/value_builder/marc21_leader_authorities.tt @@ -120,7 +120,15 @@ </tr> </table> - <fieldset class="action"><input type="submit" class="btn btn-primary" value="OK" /> <a href="#" class="cancel close">Cancel</a></fieldset> + + <nav class="navbar navbar-default navbar-fixed-bottom"> + <div class="container-fluid"> + <fieldset class="action"> + <input type="submit" class="btn btn-primary" value="Save" /> + <button class="btn btn-default close_window">Cancel</button> + </fieldset> + </div> + </nav> </div> <!-- /.page-section --> </form> diff --git a/koha-tmpl/intranet-tmpl/prog/js/staff-global.js b/koha-tmpl/intranet-tmpl/prog/js/staff-global.js index e10ebdb9b8..ce6850b227 100644 --- a/koha-tmpl/intranet-tmpl/prog/js/staff-global.js +++ b/koha-tmpl/intranet-tmpl/prog/js/staff-global.js @@ -59,7 +59,10 @@ $(document).ready(function() { $( e.target.hash ).find("input:text:first").focus(); }); - $(".close, .close_window").click(function(){ window.close(); }); + $(".close, .close_window").on("click", function(e){ + e.preventDefault(); + window.close(); + }); $("#checkin_search form").preventDoubleFormSubmit(); -- 2.30.2