Bug 21989: JS error in "Add orders from MARC file" - addorderiso2709.pl
authorOwen Leonard <oleonard@myacpl.org>
Mon, 14 Jan 2019 14:17:23 +0000 (14:17 +0000)
committerMartin Renvoize <martin.renvoize@ptfs-europe.com>
Fri, 1 Feb 2019 11:53:17 +0000 (11:53 +0000)
This patch undoes the changes to addorderiso2709.tt introduced by Bug
19753. The item information tab can include embedded JavaScript for
cataloging plugins, and these don't currently work with JS in the
footer.

To test, apply the patch and test the JavaScript driven features of the
"Add to basket from a staged file" page:

  - Acquisitions -> Vendor -> Basket -> Add to basket from a staged file
    - MARC and Card previews, select all/clear all
    - Item information tab: Cataloging plugins for fields like date
      acquired, barcode
    - Default accounting details tab: Show inactive control

Signed-off-by: Maryse Simard <maryse.simard@inlibro.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 5ab46bc24573165e540a1a287ea3438637c938e3)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

koha-tmpl/intranet-tmpl/prog/en/modules/acqui/addorderiso2709.tt

index b98175a..bdfeb15 100644 (file)
@@ -2,7 +2,6 @@
 [% USE Asset %]
 [% USE KohaDates %]
 [% USE Branches %]
-[% SET footerjs = 1 %]
 [% INCLUDE 'doc-head-open.inc' %]
 <title>Koha &rsaquo; Acquisitions &rsaquo; Order staged MARC records
 [% IF ( batch_details ) %]
 [% END %]
 </title>
 [% Asset.css("css/datatables.css") | $raw %]
-<style type="text/css">#dataPreview { width : 80%; } @media (max-width: 767px) { #dataPreview { margin: 0; width : auto; } }</style>
+<style>@media (max-width: 767px) { #dataPreview { margin: 0; width : auto; } }</style>
 [% INCLUDE 'doc-head-close.inc' %]
+    [% Asset.js("js/acquisitions-menu.js") | $raw %]
+    [% INCLUDE 'datatables.inc' %]
+    [% Asset.js("lib/jquery/plugins/jquery.checkboxes.min.js") | $raw %]
+    [% Asset.js("js/acq.js") | $raw %]
+    [% Asset.js("js/funds_sorts.js") | $raw %]
+    <script>
+        $(document).ready(function() {
+            $("#files").dataTable($.extend(true, {}, dataTablesDefaults, {
+                "aoColumnDefs": [
+                    { "bSortable": false, "bSearchable": false, 'aTargets': [ 'NoSort' ] },
+                    { "sType": "anti-the", "aTargets" : [ "anti-the" ] },
+                    { "sType": "title-string", "aTargets" : [ "title-string" ] }
+                ],
+                "sPaginationType": "four_button",
+                "aaSorting": []
+            } ) );
+
+            $("#records_to_import fieldset.rows div").hide();
+            $('input:checkbox[name="import_record_id"]').change(function(){
+                var container = $(this).parents("fieldset");
+                if ( $(this).is(':checked') ) {
+                    $(container).addClass("selected");
+                    $(container).removeClass("unselected");
+                    $(container).find("div").toggle(true);
+                } else {
+                    $(container).addClass("unselected");
+                    $(container).removeClass("selected");
+                    $(container).find("div").toggle(false);
+                }
+            } );
+
+            $("input:checkbox").prop("checked", false);
+            $("div.biblio.unselected select").prop('disabled', false);
+            $("div.biblio.unselected input").prop('disabled', false);
+
+            $("#checkAll").click(function(){
+                $("#Aform").checkCheckboxes();
+                $("input:checkbox[name='import_record_id']").change();
+                return false;
+            });
+            $("#unCheckAll").click(function(){
+                $("#Aform").unCheckCheckboxes();
+                $("input:checkbox[name='import_record_id']").change();
+                return false;
+            });
+
+            $("#Aform").on("submit", function(){
+                if ( $("input:checkbox[name='import_record_id']:checked").length < 1 ) {
+                    alert(_("There is no record selected"));
+                    return false;
+                }
+
+                var error = 0;
+                $("input:checkbox[name='import_record_id']:checked").parents('fieldset').find('input[name="quantity"]').each(function(){
+                    if ( $(this).val().length < 1 || isNaN( $(this).val() ) ) {
+                        error++;
+                    }
+                });
+                if ( error > 0 ) {
+                    alert(error + " " + _("quantity values are not filled in or are not numbers"));
+                    return false;
+
+                }
+
+                return disableUnchecked($(this));
+            });
+            $('#tabs').tabs();
+            $(".previewData").on("click", function(e){
+                e.preventDefault();
+                var ltitle = $(this).text();
+                var page = $(this).attr("href");
+                $("#dataPreviewLabel").text(ltitle);
+                $("#dataPreview .modal-body").load(page + " div");
+                $('#dataPreview').modal({show:true});
+            });
+            $("#dataPreview").on("hidden.bs.modal", function(){
+                $("#dataPreviewLabel").html("");
+                $("#dataPreview .modal-body").html("<div id=\"loading\"><img src=\"[% interface | html %]/[% theme | html %]/img/spinner-small.gif\" alt=\"\" /> "+_("Loading")+"</div>");
+            });
+        });
+
+        function disableUnchecked(form){
+            $("fieldset.biblio.unselected").each(function(){
+                $(this).remove();
+            });
+            return 1;
+        }
+    </script>
 </head>
 
 <body id="acq_addorderiso2709" class="acq">
             </div> [% # /div.col-sm-6 %]
        </div> [% # /div.row %]
 
-[% MACRO jsinclude BLOCK %]
-    [% Asset.js("js/acquisitions-menu.js") | $raw %]
-[% INCLUDE 'datatables.inc' %]
-    [% Asset.js("lib/jquery/plugins/jquery.checkboxes.min.js") | $raw %]
-    [% Asset.js("js/acq.js") | $raw %]
-    [% Asset.js("js/funds_sorts.js") | $raw %]
-    <script type="text/JavaScript">
-        $(document).ready(function() {
-            $("#files").dataTable($.extend(true, {}, dataTablesDefaults, {
-                "aoColumnDefs": [
-                    { "bSortable": false, "bSearchable": false, 'aTargets': [ 'NoSort' ] },
-                    { "sType": "anti-the", "aTargets" : [ "anti-the" ] },
-                    { "sType": "title-string", "aTargets" : [ "title-string" ] }
-                ],
-                "sPaginationType": "four_button",
-                "aaSorting": []
-            } ) );
-
-            $("#records_to_import fieldset.rows div").hide();
-            $('input:checkbox[name="import_record_id"]').change(function(){
-                var container = $(this).parents("fieldset");
-                if ( $(this).is(':checked') ) {
-                    $(container).addClass("selected");
-                    $(container).removeClass("unselected");
-                    $(container).find("div").toggle(true);
-                } else {
-                    $(container).addClass("unselected");
-                    $(container).removeClass("selected");
-                    $(container).find("div").toggle(false);
-                }
-            } );
-
-            $("input:checkbox").prop("checked", false);
-            $("div.biblio.unselected select").prop('disabled', false);
-            $("div.biblio.unselected input").prop('disabled', false);
-
-            $("#checkAll").click(function(){
-                $("#Aform").checkCheckboxes();
-                $("input:checkbox[name='import_record_id']").change();
-                return false;
-            });
-            $("#unCheckAll").click(function(){
-                $("#Aform").unCheckCheckboxes();
-                $("input:checkbox[name='import_record_id']").change();
-                return false;
-            });
-
-            $("#Aform").on("submit", function(){
-                if ( $("input:checkbox[name='import_record_id']:checked").length < 1 ) {
-                    alert(_("There is no record selected"));
-                    return false;
-                }
-
-                var error = 0;
-                $("input:checkbox[name='import_record_id']:checked").parents('fieldset').find('input[name="quantity"]').each(function(){
-                    if ( $(this).val().length < 1 || isNaN( $(this).val() ) ) {
-                        error++;
-                    }
-                });
-                if ( error > 0 ) {
-                    alert(error + " " + _("quantity values are not filled in or are not numbers"));
-                    return false;
-
-                }
-
-                return disableUnchecked($(this));
-            });
-            $('#tabs').tabs();
-            $(".previewData").on("click", function(e){
-                e.preventDefault();
-                var ltitle = $(this).text();
-                var page = $(this).attr("href");
-                $("#dataPreviewLabel").text(ltitle);
-                $("#dataPreview .modal-body").load(page + " div");
-                $('#dataPreview').modal({show:true});
-            });
-            $("#dataPreview").on("hidden.bs.modal", function(){
-                $("#dataPreviewLabel").html("");
-                $("#dataPreview .modal-body").html("<div id=\"loading\"><img src=\"[% interface | html %]/[% theme | html %]/img/spinner-small.gif\" alt=\"\" /> "+_("Loading")+"</div>");
-            });
-        });
-
-        function disableUnchecked(form){
-            $("fieldset.biblio.unselected").each(function(){
-                $(this).remove();
-            });
-            return 1;
-        }
-    </script>
-[% END %]
-
 [% INCLUDE 'intranet-bottom.inc' %]