Bug 23680: Incorrect conversion of Perl boolean to js
authorDavid Gustafsson <david.gustafsson@ub.gu.se>
Thu, 26 Sep 2019 09:50:14 +0000 (11:50 +0200)
committerMartin Renvoize <martin.renvoize@ptfs-europe.com>
Mon, 7 Oct 2019 13:09:11 +0000 (14:09 +0100)
A Perl boolean value is on the server side converted
to a JS string (resulting in the values '0' or '1).
Since the string '0' is a truthy value in JS this
incorrectly triggers window.close() on the client
in many instances, for example when adding a new item.

To test:

1. Go to a bibliographic record in the staff client.
2. Expand the "New" menu and open "New item" in new tab.
3. The new tab will immediately close.
4. Apply the patch.
5. Perform steps 1-2 again.
6. The tab should now remain open.

Sponsored-by: Gothenburg University Library
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
koha-tmpl/intranet-tmpl/prog/en/includes/str/cataloging_additem.inc

index 97cadb9..57e389e 100644 (file)
@@ -3,7 +3,11 @@
     var searchid = '[% searchid | html %]';
     var biblionumber = '[% biblionumber | html %]';
     var frameworkcode = '[% frameworkcode | html %]';
-    var popup = '[% popup | html %]';
+    [% IF popup %]
+      var popup = true;
+    [% ELSE %]
+      var popup = false;
+    [% END %]
     var op = '[% op | html %]';
     var LABEL_EDIT_ITEM = _("Edit item");
     var LABEL_DELETE_ITEM = _("Delete item");