From dc42a6f0b2b3ca9b12592f47096a94357441699b Mon Sep 17 00:00:00 2001 From: Fridolin Somers Date: Thu, 19 Jun 2014 10:17:53 +0200 Subject: [PATCH] Bug 12451 - circulation rule cant be edited if itemtype contains a space character When an itemtype description contains a space character like " Book" (often used to set this itemtype as first in sorted lists), the edition of an existing circulation rule does not work, it selects the default itemtype. Same for patron category. It's because the JavaScript code performs a trim on value existing in table itm = itm.replace(/^\s*|\s*$/g,''); This patch adds trim on select options in editing line. Test plan : - Create an itemtype with a leading or trailling space in description : ie " Book" - Go to cgi-bin/koha/admin/smart-rules.pl - Create a rule with this itemtype, Unit=hours and Hard due date=Exactly on 31/12/2015 (any date) - Click on Edit on this rule line => Without this patch, the default itemtype is selected in edition line => With this patch, the correct itemtype is selected in edition line Check others selects are ok : - Create a rule with Unit=hours and Hard due date=Exactly on 31/12/2015 (any date) - Click on Edit on this rule line => The correct options are selected Same tests with a patron category containing a leading or trailling space in description --- koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt index a7fe76e..1b8b21a 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/smart-rules.tt @@ -42,7 +42,9 @@ $(document).ready(function() { $(current_column).find("input[type='text']").val(itm); // select the corresponding option $(current_column).find("select option").each(function(){ - if ( $(this).text().toLowerCase() == itm.toLowerCase() ) { + opt = $(this).text().toLowerCase(); + opt = opt.replace(/^\s*|\s*$/g,''); + if ( opt == itm.toLowerCase() ) { $(this).attr('selected', 'selected'); } }); -- 1.9.1