From b7c5327eaea2c9b9b90a2d48fade5345654ec295 Mon Sep 17 00:00:00 2001 From: Zeno Tajoli Date: Sat, 3 May 2014 11:09:25 +0200 Subject: [PATCH] [SIGNED-OFF] Bug 12174 - Zotero connection with Koha: problem with UTF-8 This patch solves the bug for UTF-8 output. MARC-8 works only if you save it as a file. In fact the standard Internet stack (browser, web server, etc.) doesn't know anything about MARC-8 or it's ISO base (ISO 2022). To test the bug: -- without the patch use Zotero on a recent Koha install with Apache. You can use PTFS sandboxes. You can't use Biblibre sandboxes, they use Ngix. -- Test a record with special chars. -- Install the patch -- Catch (using Zotero) the same record. -- Test all directly download from Opac. -- To check MARC-8, use a tool that support it. For example MarcEdit. http://bugs.koha-community.org/show_bug.cgi?id=12174 Signed-off-by: Bernardo Gonzalez Kriegel Work as described Tested with zotero add-on for firefox. Before patch bad diacritics, after patch ok Record exported as MARC-8, transformed using yaz-iconv -f marc8 -t utf-8 bib.marc8 > bib.utf8 yaz-marcdump -i marc -o line bib.utf8, checking accents, also comparing with direct utf-8 export No koha-qa errors --- opac/opac-export.pl | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/opac/opac-export.pl b/opac/opac-export.pl index 002c88e..8d76a1c 100755 --- a/opac/opac-export.pl +++ b/opac/opac-export.pl @@ -91,8 +91,15 @@ if ($error){ print $query->end_html(); } else { - print $query->header( - -type => 'application/octet-stream', - -attachment=>"bib-$biblionumber.$format"); - print $marc; + if ($format eq 'marc8'){ + print $query->header( + -type => 'application/marc', + -charset=>'ISO-2022', + -attachment=>"bib-$biblionumber.$format"); + }else{ + print $query->header( + -type => 'application/octet-stream', + -charset=>'utf-8', + -attachment=>"bib-$biblionumber.$format"); + } } -- 1.9.1