From 8e85d4926ca9409a337c025d7f32bafbd519b3a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Demians?= Date: Wed, 11 Apr 2012 17:36:40 +0200 Subject: [PATCH] Bug 3087 Fix Z39.50 server to return the correct record syntax Content-Type: text/plain; charset="utf-8" Modify Makefile.PL and Zebra configuration files in order to parametrized biblio record type returned by Zebra Z39.50 server. How to test: - Test with a MARC21 and a UNIMARC DB - Do a new installation - Search from OPAC - Search from a Z39.50 client like yaz-client: syntax = MARC21/UNIMARC must be choosed - It was working for MARC21: it continues to work - It wasn't working for UNIMARC: it works now, both in OPAC and from a Z39.50 client Signed-off-by: Marcel de Rooy Works fine for MARC21. Frederic looked at UNIMARC. Magnus looked at NORMARC. GRS1 works okay for me. I still have issues with DOM, but they are not directly related to changes in this patch. A followup is still needed for packaging (debian/templates). --- C4/Context.pm | 2 + Makefile.PL | 1 + etc/koha-conf.xml | 46 +++++++++++++++--------------- etc/zebradb/etc/usmarc.mar | 4 +- etc/zebradb/retrieval-info-auth-dom.xml | 4 +- etc/zebradb/retrieval-info-auth-grs1.xml | 14 ++++---- etc/zebradb/retrieval-info-bib-dom.xml | 4 +- etc/zebradb/retrieval-info-bib-grs1.xml | 14 ++++---- 8 files changed, 46 insertions(+), 43 deletions(-) diff --git a/C4/Context.pm b/C4/Context.pm index a95c6b6..e785002 100644 --- a/C4/Context.pm +++ b/C4/Context.pm @@ -656,6 +656,8 @@ sub Zconn { $context->{"Zconn"}->{$server}->destroy() if defined($context->{"Zconn"}->{$server}); $context->{"Zconn"}->{$server} = &_new_Zconn($server,$async,$auth,$piggyback,$syntax); + $context->{ Zconn }->{ $server }->option( + preferredRecordSyntax => C4::Context->preference("marcflavour") ); return $context->{"Zconn"}->{$server}; } } diff --git a/Makefile.PL b/Makefile.PL index b6ca640..b677f6a 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -508,6 +508,7 @@ my $pl_files = { if ($config{'INSTALL_ZEBRA'} eq "yes") { push @{ $pl_files->{'rewrite-config.PL'} }, ( 'blib/ZEBRA_CONF_DIR/etc/passwd', + 'blib/ZEBRA_CONF_DIR/etc/usmarc.mar', 'blib/ZEBRA_CONF_DIR/zebra-biblios.cfg', 'blib/ZEBRA_CONF_DIR/zebra-biblios-dom.cfg', 'blib/ZEBRA_CONF_DIR/zebra-authorities.cfg', diff --git a/etc/koha-conf.xml b/etc/koha-conf.xml index a54c173..53d7ce8 100644 --- a/etc/koha-conf.xml +++ b/etc/koha-conf.xml @@ -44,47 +44,47 @@ __PAZPAR2_TOGGLE_XML_POST__ xmlns:xi="http://www.w3.org/2001/XInclude"> - - + + - + - + - + - + - + - + @@ -124,38 +124,38 @@ __PAZPAR2_TOGGLE_XML_POST__ xmlns:xi="http://www.w3.org/2001/XInclude"> - - + + - + - + - + - + - + @@ -193,47 +193,47 @@ __PAZPAR2_TOGGLE_XML_POST__ xmlns:xi="http://www.w3.org/2001/XInclude"> - - + + - + - + - + - + - + - + diff --git a/etc/zebradb/etc/usmarc.mar b/etc/zebradb/etc/usmarc.mar index 99920f9..a977ae5 100644 --- a/etc/zebradb/etc/usmarc.mar +++ b/etc/zebradb/etc/usmarc.mar @@ -1,3 +1,3 @@ # $Id: usmarc.mar,v 1.1 2002/10/22 12:51:09 adam Exp $ -name usmarc -reference USmarc +name __ZEBRA_MARC_FORMAT__ +reference __ZEBRA_MARC_FORMAT__ diff --git a/etc/zebradb/retrieval-info-auth-dom.xml b/etc/zebradb/retrieval-info-auth-dom.xml index 3093c72..f848012 100644 --- a/etc/zebradb/retrieval-info-auth-dom.xml +++ b/etc/zebradb/retrieval-info-auth-dom.xml @@ -1,13 +1,13 @@ - + - + - - + + - + - + - + - + - + diff --git a/etc/zebradb/retrieval-info-bib-dom.xml b/etc/zebradb/retrieval-info-bib-dom.xml index 3093c72..f848012 100644 --- a/etc/zebradb/retrieval-info-bib-dom.xml +++ b/etc/zebradb/retrieval-info-bib-dom.xml @@ -1,13 +1,13 @@ - + - + - - + + - + - + - + - + - + -- 1.7.7.6