From a0dae8bf92f8a1815b497a4c44a07e22b67f86f7 Mon Sep 17 00:00:00 2001 From: Fridolyn SOMERS Date: Wed, 26 Jun 2013 17:52:40 +0200 Subject: [PATCH] Bug 9113 - batch modification removes + If you're using the batch modification tool and entering a call number like "E+ 123 ABC", the tool removes the + and puts a space in it's place "E 123 ABC" This is because form is posted via Ajax by background-job-progressbar.js. Values are URI-encoded using escape() javascript but this method does not escape some caracters : * @ - _ + . / And a + is considered as a space in a URI. This patch replaces escape() by encodeURIComponent() which encodes every character. Test plan : Perform an items batch modification by setting '* @ - _ + . /' in a field (notes for example) and see that all caracters are well saved. Signed-off-by: Chris Cormack --- koha-tmpl/intranet-tmpl/prog/en/js/background-job-progressbar.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/js/background-job-progressbar.js b/koha-tmpl/intranet-tmpl/prog/en/js/background-job-progressbar.js index 2804182..f8640c9 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/js/background-job-progressbar.js +++ b/koha-tmpl/intranet-tmpl/prog/en/js/background-job-progressbar.js @@ -45,12 +45,12 @@ function submitBackgroundJob(f) { $(':input', f).each(function() { if (this.type == 'radio' || this.type == 'checkbox') { if (this.checked) { - inputs.push(this.name + '=' + escape(this.value)); + inputs.push(this.name + '=' + encodeURIComponent(this.value)); } } else if (this.type == 'button') { ; // do nothing } else { - inputs.push(this.name + '=' + escape(this.value)); + inputs.push(this.name + '=' + encodeURIComponent(this.value)); } }); -- 1.7.10.4