From 4fcccad131cbbffb60407aabe6043f9b0626524f Mon Sep 17 00:00:00 2001 From: Ere Maijala Date: Thu, 22 Feb 2018 15:37:25 +0200 Subject: [PATCH] Bug 14716: URI-encode URLs in xsl templates. https://bugs.koha-community.org/show_bug.cgi?id=14176 Test plan: 1. Catalog a record with series name "Series & more" 2. Find the record 3. Make sure clicking the "Series & more" link works and the ampersand is properly encoded in the URL. 4. Also try the attached test records and make sure their links work. --- .../prog/en/xslt/MARC21slim2intranetDetail.xsl | 48 ++++++++++++++-------- .../prog/en/xslt/MARC21slim2intranetResults.xsl | 7 ++-- .../intranet-tmpl/prog/en/xslt/MARC21slimUtils.xsl | 21 ++++++++-- .../prog/en/xslt/NORMARCslim2intranetDetail.xsl | 23 ++++++----- .../prog/en/xslt/NORMARCslim2intranetResults.xsl | 13 +++--- .../prog/en/xslt/NORMARCslimUtils.xsl | 8 +++- .../prog/en/xslt/UNIMARCslimUtils.xsl | 7 ++-- .../bootstrap/en/xslt/MARC21slim2OPACDetail.xsl | 40 +++++++++++------- .../bootstrap/en/xslt/MARC21slimUtils.xsl | 5 ++- .../bootstrap/en/xslt/NORMARCslim2OPACDetail.xsl | 20 +++++---- .../bootstrap/en/xslt/NORMARCslim2OPACResults.xsl | 4 +- .../bootstrap/en/xslt/NORMARCslimUtils.xsl | 8 +++- .../bootstrap/en/xslt/UNIMARCslimUtils.xsl | 11 ++--- 13 files changed, 134 insertions(+), 81 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl index cf39ec4..a30b1f9 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl +++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetDetail.xsl @@ -8,7 +8,8 @@ xmlns:marc="http://www.loc.gov/MARC21/slim" xmlns:items="http://www.koha-community.org/items" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - exclude-result-prefixes="marc items"> + xmlns:str="http://exslt.org/strings" + exclude-result-prefixes="marc items str"> @@ -189,7 +190,7 @@ Series: - /cgi-bin/koha/catalogue/search.pl?q=se,phr:"" + /cgi-bin/koha/catalogue/search.pl?q=se,phr:"" @@ -204,7 +205,7 @@ - /cgi-bin/koha/catalogue/search.pl?q=se,phr:"" + /cgi-bin/koha/catalogue/search.pl?q=se,phr:"" @@ -221,7 +222,7 @@ - + /cgi-bin/koha/catalogue/search.pl?q=rcn: @@ -232,7 +233,7 @@ - /cgi-bin/koha/catalogue/search.pl?q=se,phr:"" + /cgi-bin/koha/catalogue/search.pl?q=se,phr:"" @@ -262,7 +263,7 @@ /cgi-bin/koha/catalogue/search.pl?q=rcn:+and+(bib-level:a+or+bib-level:b) - /cgi-bin/koha/catalogue/search.pl?q=Host-item: + /cgi-bin/koha/catalogue/search.pl?q=Host-item: Show analytics @@ -279,7 +280,7 @@ /cgi-bin/koha/catalogue/search.pl?q=rcn:+not+(bib-level:a+or+bib-level:b) - /cgi-bin/koha/catalogue/search.pl?q=ti,phr: + /cgi-bin/koha/catalogue/search.pl?q=ti,phr: Show volumes @@ -297,7 +298,7 @@ /cgi-bin/koha/catalogue/search.pl?q=Control-number: - /cgi-bin/koha/catalogue/search.pl?q=ti,phr: + /cgi-bin/koha/catalogue/search.pl?q=ti,phr: @@ -337,7 +338,8 @@ - + + /cgi-bin/koha/catalogue/search.pl?q=Provider:"" b @@ -694,13 +696,14 @@ AND (su: ) + 1 - /cgi-bin/koha/catalogue/search.pl?q=su: + /cgi-bin/koha/catalogue/search.pl?q=su: @@ -752,6 +755,7 @@ AND (su: ) + 1 @@ -857,7 +861,7 @@ Online resources: - + 100 @@ -1000,7 +1004,7 @@ - /cgi-bin/koha/catalogue/search.pl?q=ti,phr: + /cgi-bin/koha/catalogue/search.pl?q=ti,phr: @@ -1061,7 +1065,7 @@ /cgi-bin/koha/catalogue/search.pl?q=Control-number: - /cgi-bin/koha/catalogue/search.pl?q=ti,phr: + /cgi-bin/koha/catalogue/search.pl?q=ti,phr: @@ -1120,7 +1124,7 @@ - /cgi-bin/koha/catalogue/search.pl?q=ti,phr: + /cgi-bin/koha/catalogue/search.pl?q=ti,phr: @@ -1182,7 +1186,7 @@ - /cgi-bin/koha/catalogue/search.pl?q=ti,phr: + /cgi-bin/koha/catalogue/search.pl?q=ti,phr: @@ -1291,10 +1295,10 @@ - /cgi-bin/koha/catalogue/search.pl?q=an: + /cgi-bin/koha/catalogue/search.pl?q=an: - /cgi-bin/koha/catalogue/search.pl?q=au:"" + /cgi-bin/koha/catalogue/search.pl?q=au:"" @@ -1519,6 +1523,7 @@ + @@ -1529,7 +1534,14 @@ - + + + + + + + + diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl index 3e508c0..bf0deb3 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl +++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slim2intranetResults.xsl @@ -5,7 +5,8 @@ xmlns:marc="http://www.loc.gov/MARC21/slim" xmlns:items="http://www.koha-community.org/items" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - exclude-result-prefixes="marc items"> + xmlns:str="http://exslt.org/strings" + exclude-result-prefixes="marc items str"> @@ -355,7 +356,7 @@ /cgi-bin/koha/catalogue/search.pl?q=an: - /cgi-bin/koha/catalogue/search.pl?q=au:"" + /cgi-bin/koha/catalogue/search.pl?q=au:"" @@ -963,7 +964,7 @@ Online access: - + 100 diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slimUtils.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slimUtils.xsl index 192107b..95895d3 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slimUtils.xsl +++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/MARC21slimUtils.xsl @@ -1,6 +1,10 @@ ]> - + @@ -27,6 +31,7 @@ + @@ -37,7 +42,14 @@ - + + + + + + + + @@ -197,7 +209,7 @@ - /cgi-bin/koha/catalogue/search.pl?q=: + /cgi-bin/koha/catalogue/search.pl?q=: @@ -271,7 +283,8 @@ - + + /cgi-bin/koha/catalogue/search.pl?q=Provider: b diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/NORMARCslim2intranetDetail.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/NORMARCslim2intranetDetail.xsl index bf4af4b..dd2cc77 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/xslt/NORMARCslim2intranetDetail.xsl +++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/NORMARCslim2intranetDetail.xsl @@ -7,7 +7,8 @@ xmlns:marc="http://www.loc.gov/MARC21/slim" xmlns:items="http://www.koha-community.org/items" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - exclude-result-prefixes="marc items"> + xmlns:str="http://exslt.org/strings" + exclude-result-prefixes="marc items str"> @@ -108,7 +109,7 @@ /cgi-bin/koha/catalogue/search.pl?q=an: - /cgi-bin/koha/catalogue/search.pl?q=au: + /cgi-bin/koha/catalogue/search.pl?q=au: @@ -123,7 +124,7 @@ /cgi-bin/koha/catalogue/search.pl?q=an: - /cgi-bin/koha/catalogue/search.pl?q=au: + /cgi-bin/koha/catalogue/search.pl?q=au: @@ -137,7 +138,7 @@ /cgi-bin/koha/catalogue/search.pl?q=an: - /cgi-bin/koha/catalogue/search.pl?q=au: + /cgi-bin/koha/catalogue/search.pl?q=au: @@ -170,7 +171,8 @@ Series: - + + /cgi-bin/koha/catalogue/search.pl?q=se: @@ -184,7 +186,8 @@ - + + /cgi-bin/koha/catalogue/search.pl?q=se: @@ -208,7 +211,7 @@ /cgi-bin/koha/catalogue/search.pl?q=rcn:+and+(bib-level:a+or+bib-level:b) - /cgi-bin/koha/catalogue/search.pl?q=Host-item: + /cgi-bin/koha/catalogue/search.pl?q=Host-item: Show analytics @@ -250,7 +253,7 @@ - /cgi-bin/koha/catalogue/search.pl?q=ti,phr: + /cgi-bin/koha/catalogue/search.pl?q=ti,phr: @@ -537,7 +540,7 @@ a_t - /cgi-bin/koha/catalogue/search.pl?q= + /cgi-bin/koha/catalogue/search.pl?q= @@ -588,7 +591,7 @@ - /cgi-bin/koha/catalogue/search.pl?q= + /cgi-bin/koha/catalogue/search.pl?q= diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/NORMARCslim2intranetResults.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/NORMARCslim2intranetResults.xsl index 3bcdd8b..5d5de10 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/xslt/NORMARCslim2intranetResults.xsl +++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/NORMARCslim2intranetResults.xsl @@ -5,7 +5,8 @@ xmlns:marc="http://www.loc.gov/MARC21/slim" xmlns:items="http://www.koha-community.org/items" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - exclude-result-prefixes="marc items"> + xmlns:str="http://exslt.org/strings" + exclude-result-prefixes="marc items str"> @@ -308,7 +309,7 @@ /cgi-bin/koha/catalogue/search.pl?q=an: - /cgi-bin/koha/catalogue/search.pl?q=au:"" + /cgi-bin/koha/catalogue/search.pl?q=au:"" @@ -323,7 +324,7 @@ /cgi-bin/koha/catalogue/search.pl?q=an: - /cgi-bin/koha/catalogue/search.pl?q=au:"" + /cgi-bin/koha/catalogue/search.pl?q=au:"" @@ -345,7 +346,7 @@ /cgi-bin/koha/catalogue/search.pl?q=an: - /cgi-bin/koha/catalogue/search.pl?q=au:"" + /cgi-bin/koha/catalogue/search.pl?q=au:"" @@ -410,7 +411,7 @@ /cgi-bin/koha/opac-search.pl?q=rcn:+and+(bib-level:a+or+bib-level:b) - /cgi-bin/koha/opac-search.pl?q=Host-item: + /cgi-bin/koha/opac-search.pl?q=Host-item: Show analytics @@ -452,7 +453,7 @@ - /cgi-bin/koha/catalogue/search.pl?q=ti,phr: + /cgi-bin/koha/catalogue/search.pl?q=ti,phr: diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/NORMARCslimUtils.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/NORMARCslimUtils.xsl index 7d1400a..9b70843 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/xslt/NORMARCslimUtils.xsl +++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/NORMARCslimUtils.xsl @@ -2,7 +2,11 @@ ]> - + @@ -227,7 +231,7 @@ - /cgi-bin/koha/opac-search.pl?q=: + /cgi-bin/koha/opac-search.pl?q=: diff --git a/koha-tmpl/intranet-tmpl/prog/en/xslt/UNIMARCslimUtils.xsl b/koha-tmpl/intranet-tmpl/prog/en/xslt/UNIMARCslimUtils.xsl index 65ec306..e78e8d7 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/xslt/UNIMARCslimUtils.xsl +++ b/koha-tmpl/intranet-tmpl/prog/en/xslt/UNIMARCslimUtils.xsl @@ -6,7 +6,8 @@ xmlns:marc="http://www.loc.gov/MARC21/slim" xmlns:items="http://www.koha-community.org/items" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - exclude-result-prefixes="marc items"> + xmlns:str="http://exslt.org/strings" + exclude-result-prefixes="marc items str"> @@ -252,7 +253,7 @@ /cgi-bin/koha/catalogue/search.pl?q=an: - /cgi-bin/koha/catalogue/search.pl?q=su: + /cgi-bin/koha/catalogue/search.pl?q=su: @@ -289,7 +290,7 @@ /cgi-bin/koha/catalogue/search.pl?q=an: - /cgi-bin/koha/catalogue/search.pl?q=au: + /cgi-bin/koha/catalogue/search.pl?q=au: diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl index f31b1be..4c48d3d 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl +++ b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slim2OPACDetail.xsl @@ -7,7 +7,7 @@ xmlns:items="http://www.koha-community.org/items" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:str="http://exslt.org/strings" - exclude-result-prefixes="marc items"> + exclude-result-prefixes="marc items str"> @@ -206,7 +206,7 @@ Series: - /cgi-bin/koha/opac-search.pl?q=se,phr:"" + /cgi-bin/koha/opac-search.pl?q=se,phr:"" @@ -221,7 +221,7 @@ - /cgi-bin/koha/opac-search.pl?q=se,phr:"" + /cgi-bin/koha/opac-search.pl?q=se,phr:"" @@ -238,7 +238,7 @@ - + /cgi-bin/koha/opac-search.pl?q=rcn: @@ -249,7 +249,7 @@ - /cgi-bin/koha/opac-search.pl?q=se,phr:"" + /cgi-bin/koha/opac-search.pl?q=se,phr:"" @@ -275,10 +275,10 @@ - /cgi-bin/koha/opac-search.pl?q=rcn:+and+(bib-level:a+or+bib-level:b) + /cgi-bin/koha/opac-search.pl?q=rcn:+and+(bib-level:a+or+bib-level:b) - /cgi-bin/koha/opac-search.pl?q=Host-item: + /cgi-bin/koha/opac-search.pl?q=Host-item: Show analytics @@ -292,10 +292,10 @@ - /cgi-bin/koha/opac-search.pl?q=rcn:+not+(bib-level:a+or+bib-level:b) + /cgi-bin/koha/opac-search.pl?q=rcn:+not+(bib-level:a+or+bib-level:b) - /cgi-bin/koha/opac-search.pl?q=ti,phr: + /cgi-bin/koha/opac-search.pl?q=ti,phr: Show volumes @@ -313,7 +313,7 @@ /cgi-bin/koha/opac-search.pl?q=Control-number: - /cgi-bin/koha/opac-search.pl?q=ti,phr: + /cgi-bin/koha/opac-search.pl?q=ti,phr: @@ -356,7 +356,7 @@ - + /cgi-bin/koha/opac-search.pl?q=Provider: b @@ -733,12 +733,13 @@ AND (su: ) + 1 - /cgi-bin/koha/opac-search.pl?q=su: + /cgi-bin/koha/opac-search.pl?q=su: @@ -787,11 +788,12 @@ AND (su: ) + 1 - /cgi-bin/koha/opac-search.pl?q=su: + /cgi-bin/koha/opac-search.pl?q=su: @@ -836,7 +838,7 @@ /cgi-bin/koha/opac-search.pl?q=control-number: - + @@ -1660,6 +1662,7 @@ + @@ -1670,6 +1673,13 @@ - + + + + + + + + diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slimUtils.xsl b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slimUtils.xsl index 596bddf..e1636fa 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slimUtils.xsl +++ b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/MARC21slimUtils.xsl @@ -194,7 +194,7 @@ - /cgi-bin/koha/opac-search.pl?q=: + /cgi-bin/koha/opac-search.pl?q=: @@ -269,7 +269,8 @@ - + + /cgi-bin/koha/opac-search.pl?q=Provider:" b diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/NORMARCslim2OPACDetail.xsl b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/NORMARCslim2OPACDetail.xsl index 1f1e26c..3ebb6fd 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/NORMARCslim2OPACDetail.xsl +++ b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/NORMARCslim2OPACDetail.xsl @@ -104,7 +104,7 @@ /cgi-bin/koha/opac-search.pl?q=an: - /cgi-bin/koha/opac-search.pl?q=au: + /cgi-bin/koha/opac-search.pl?q=au: @@ -130,7 +130,7 @@ /cgi-bin/koha/opac-search.pl?q=an: - /cgi-bin/koha/opac-search.pl?q=au: + /cgi-bin/koha/opac-search.pl?q=au: @@ -155,7 +155,7 @@ /cgi-bin/koha/opac-search.pl?q=an: - /cgi-bin/koha/opac-search.pl?q=au: + /cgi-bin/koha/opac-search.pl?q=au: @@ -200,7 +200,8 @@ Series: - + + /cgi-bin/koha/opac-search.pl?q=se: @@ -214,7 +215,8 @@ - + + /cgi-bin/koha/opac-search.pl?q=se: @@ -238,7 +240,7 @@ /cgi-bin/koha/opac-search.pl?q=rcn:+and+(bib-level:a+or+bib-level:b) - /cgi-bin/koha/opac-search.pl?q=Host-item: + /cgi-bin/koha/opac-search.pl?q=Host-item: Show analytics @@ -280,7 +282,7 @@ - /cgi-bin/koha/opac-search.pl?q=ti,phr: + /cgi-bin/koha/opac-search.pl?q=ti,phr: @@ -600,7 +602,7 @@ a_t - /cgi-bin/koha/opac-search.pl?q= + /cgi-bin/koha/opac-search.pl?q= @@ -651,7 +653,7 @@ - /cgi-bin/koha/opac-search.pl?q= + /cgi-bin/koha/opac-search.pl?q= diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/NORMARCslim2OPACResults.xsl b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/NORMARCslim2OPACResults.xsl index 3cdcd0e..4890b8e 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/NORMARCslim2OPACResults.xsl +++ b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/NORMARCslim2OPACResults.xsl @@ -399,7 +399,7 @@ /cgi-bin/koha/opac-search.pl?q=rcn:+and+(bib-level:a+or+bib-level:b) - /cgi-bin/koha/opac-search.pl?q=Host-item: + /cgi-bin/koha/opac-search.pl?q=Host-item: Show analytics @@ -441,7 +441,7 @@ - /cgi-bin/koha/opac-search.pl?q=ti,phr: + /cgi-bin/koha/opac-search.pl?q=ti,phr: diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/NORMARCslimUtils.xsl b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/NORMARCslimUtils.xsl index cb7d18f..0f0b229 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/NORMARCslimUtils.xsl +++ b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/NORMARCslimUtils.xsl @@ -1,6 +1,10 @@ ]> - + @@ -223,7 +227,7 @@ - /cgi-bin/koha/opac-search.pl?q=: + /cgi-bin/koha/opac-search.pl?q=: diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/UNIMARCslimUtils.xsl b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/UNIMARCslimUtils.xsl index 97206aa..397fab8 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/xslt/UNIMARCslimUtils.xsl +++ b/koha-tmpl/opac-tmpl/bootstrap/en/xslt/UNIMARCslimUtils.xsl @@ -6,7 +6,8 @@ xmlns:marc="http://www.loc.gov/MARC21/slim" xmlns:items="http://www.koha-community.org/items" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - exclude-result-prefixes="marc items"> + xmlns:str="http://exslt.org/strings" + exclude-result-prefixes="marc items str"> @@ -291,7 +292,7 @@ /cgi-bin/koha/opac-search.pl?q=su: - + @@ -355,9 +356,9 @@ /cgi-bin/koha/opac-search.pl?q=au: - - - + + %20 + -- 2.7.4