Bugzilla – Attachment 83195 Details for
Bug 21986
Quotation marks are wrongly escaped in several places
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 21986: Do not escape quotation marks when cataloguing
Bug-21986-Do-not-escape-quotation-marks-when-catal.patch (text/plain), 5.24 KB, created by
Marcel de Rooy
on 2018-12-14 07:19:09 UTC
(
hide
)
Description:
Bug 21986: Do not escape quotation marks when cataloguing
Filename:
MIME Type:
Creator:
Marcel de Rooy
Created:
2018-12-14 07:19:09 UTC
Size:
5.24 KB
patch
obsolete
>From ef6b82b8f34d325ece6ac4f3d6dd59361714bbaf Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@bugs.koha-community.org> >Date: Wed, 12 Dec 2018 11:05:19 -0300 >Subject: [PATCH] Bug 21986: Do not escape quotation marks when cataloguing >Content-Type: text/plain; charset=utf-8 > >In several places we escape quotation marks using > $value =~ s/"/"/g; >All the occurrences are wrong and must be removed. >Most of them are leftover of bug 11638 (Remove HTML from >addbiblio.pl), which removes the construction of html from pl scripts. > >The problem has been highlighted by bug 13618, I did not track down why >the issue did not exist before (?) > >Test plan: >0/ Use strings with quotation marks, like: >'Fiddle tune history : "bad" tunes' >You can also use other html characters to make the tests more complete, >like 'Fiddle tune history : <"bad" tunes>' >1/ authorities/authorities.pl >a. Edit an authority filling different fields with quotation marks >b. Edit it again >=> The display (inputs' values) is wrong, if you save the escaped quotes >will be inserted >2/ cataloguing/addbiblio.pl >Same editing a bibliographic record >3/ cataloguing/additem.pl >Same editing items >4/ members/memberentry.pl >Edit a patron's record and fill some fields with quotation marks >+ fields borrowernotes and opacnotes >=> The quotes are inserted directly in DB (escape is done before the >insert!) >5/ opac/opac-review.pl >For QA only: $js_ok_review is never used >6/ tools/batchMod.pl >For QA only: $value is always undefined at that point > >Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> > >Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> >--- > authorities/authorities.pl | 2 -- > cataloguing/addbiblio.pl | 2 -- > cataloguing/additem.pl | 6 ++---- > members/memberentry.pl | 1 - > opac/opac-review.pl | 3 --- > tools/batchMod.pl | 3 +-- > 6 files changed, 3 insertions(+), 14 deletions(-) > >diff --git a/authorities/authorities.pl b/authorities/authorities.pl >index 0340277..8fff429 100755 >--- a/authorities/authorities.pl >+++ b/authorities/authorities.pl >@@ -136,8 +136,6 @@ sub create_input { > > my $index_subfield = CreateKey(); # create a specifique key for each subfield > >- $value =~ s/"/"/g; >- > # determine maximum length; 9999 bytes per ISO 2709 except for leader and MARC21 008 > my $max_length = 9999; > if ($tag eq '000') { >diff --git a/cataloguing/addbiblio.pl b/cataloguing/addbiblio.pl >index 9018929..c4ed49d 100755 >--- a/cataloguing/addbiblio.pl >+++ b/cataloguing/addbiblio.pl >@@ -275,8 +275,6 @@ sub create_input { > > my $index_subfield = CreateKey(); # create a specifique key for each subfield > >- $value =~ s/"/"/g; >- > # if there is no value provided but a default value in parameters, get it > if ( $value eq '' ) { > $value = $tagslib->{$tag}->{$subfield}->{defaultvalue} // q{}; >diff --git a/cataloguing/additem.pl b/cataloguing/additem.pl >index 02d45dd..6bf4629 100755 >--- a/cataloguing/additem.pl >+++ b/cataloguing/additem.pl >@@ -143,12 +143,10 @@ sub generate_subfield_form { > my $username=(C4::Context->userenv?C4::Context->userenv->{'surname'}:"superlibrarian"); > $value=~s/<<USER>>/$username/g; > } >- } else { >- $value =~ s/"/"/g; > } >- >+ > $subfield_data{visibility} = "display:none;" if (($subfieldlib->{hidden} > 4) || ($subfieldlib->{hidden} <= -4)); >- >+ > my $pref_itemcallnumber = C4::Context->preference('itemcallnumber'); > if (!$value && $subfieldlib->{kohafield} eq 'items.itemcallnumber' && $pref_itemcallnumber) { > my $CNtag = substr($pref_itemcallnumber, 0, 3); >diff --git a/members/memberentry.pl b/members/memberentry.pl >index 731d4f9..600eff9 100755 >--- a/members/memberentry.pl >+++ b/members/memberentry.pl >@@ -178,7 +178,6 @@ if ( $op eq 'insert' || $op eq 'modify' || $op eq 'save' || $op eq 'duplicate' ) > foreach my $key (@names) { > if (defined $input->param($key)) { > $newdata{$key} = $input->param($key); >- $newdata{$key} =~ s/\"/"/g unless $key eq 'borrowernotes' or $key eq 'opacnote'; > } > } > >diff --git a/opac/opac-review.pl b/opac/opac-review.pl >index b4a26be..86a9848 100755 >--- a/opac/opac-review.pl >+++ b/opac/opac-review.pl >@@ -71,9 +71,6 @@ if( !@errors && defined $review ) { > if ($clean ne $review) { > push @errors, {scrubbed=>$clean}; > } >- my $js_ok_review = $clean; >- $js_ok_review =~ s/"/"/g; # probably redundant w/ TMPL ESCAPE=JS >- $template->param(clean_review=>$js_ok_review); > if ($savedreview) { > $savedreview->set( > { >diff --git a/tools/batchMod.pl b/tools/batchMod.pl >index 59d824b..1380d61 100755 >--- a/tools/batchMod.pl >+++ b/tools/batchMod.pl >@@ -331,8 +331,7 @@ foreach my $tag (sort keys %{$tagslib}) { > $subfield_data{mandatory} = $tagslib->{$tag}->{$subfield}->{mandatory}; > $subfield_data{repeatable} = $tagslib->{$tag}->{$subfield}->{repeatable}; > my ($x,$value); >- $value =~ s/"/"/g; >- if ( !$value && $use_default_values) { >+ if ( $use_default_values) { > $value = $tagslib->{$tag}->{$subfield}->{defaultvalue}; > # get today date & replace YYYY, MM, DD if provided in the default value > my $today = dt_from_string; >-- >2.1.4
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 21986
:
83120
|
83143
|
83179
| 83195