Koha-clms/C4
Fridolin Somers 7494cea82f Bug 23542: Fix SRU import encoding
When importing records from a SRU server, the diacritics have bad encoding.
I reproduce with BNF server so it may be a UNIMARC issue.

Tests show that difference between Z39.50 server and SRU is that leader contains 'a' at postion 9.
Looking at MARC::Record->encoding() shows that encoding depends on leader even for UNIMARC.
So this patch adds a call to MARC::Record->encoding('UTF-8') in case of a SRU server in C4::Breeding.

Same use exists in Koha::MetadataRecord::Authority::get_from_breeding().

In case of import via Z3950, MarcToUTF8Record() is called,
 which calls SetMarcUnicodeFlag(),
 which calls MARC::Record->encoding('UTF-8')

Test plan :
1) Use a UNIMARC database
2) Configure a connexion to a UNIMARC SRU, for example BNF,
   see https://doc.biblibre.com/koha/autour_de_koha/serveurs_z3950_sru#serveur_de_la_bnf
3) Go to cataloguing module
4) Click on 'New from Z39.50/SRU'
5) Choose only the SRU target
6) Search for ISBN 2266072889
7) Confirm you see good encoding : diacritic on 'a' of title 'Strate-a-gemmes'
8) Click on 'Marc preview'
9) Confirm you see good encoding
10) Click import
11) Confirm you see good encoding
12) Check also Authorities import via SRU
13) Check also SRU imports on a MARC21 database

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Amended: Removed change to new_from_xml call. We should respect syntax.
But the added MARC::Record encoding does the tric! Which is implicit
for Z3950 targets where MarcToUTF8Record does the same.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
(cherry picked from commit 19d9ba176d)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
(cherry picked from commit 79855e9f5b)

Signed-off-by: Aleisha Amohia <aleishaamohia@hotmail.com>
2020-08-17 21:53:46 +12:00
..
AuthoritiesMarc
…
Barcodes Bug 21937: Syspref autoBarcode annual doesn't increment properly barcode 2019-04-19 14:32:36 +00:00
ClassSortRoutine
…
ClassSplitRoutine Bug 15836: Add the ability to defined custom methods to split call number in labels 2018-11-13 15:18:22 +00:00
Creators Bug 25852: Improve C4::Creators::Lib reliability under plack 2020-08-17 08:37:59 +12:00
External Bug 22010: Check preferences for ebook integration 2019-04-30 11:42:51 +00:00
Form
…
Heading Bug 24269: Adjust C4::Heading to generate headings from auth tags 2020-03-13 00:39:55 +00:00
ILSDI Bug 17247: (follow-up) Terminology fix: Use Restricted instead of debarred 2019-10-15 14:11:03 +01:00
Installer Bug 24642: Make Cache::Memcached::Fast::Safe required 2020-03-05 23:51:03 +00:00
Labels Bug 23514: Split Call Numbers for all layout types 2020-05-04 20:48:21 +00:00
Linker Bug 24269: Adjust C4::Heading to generate headings from auth tags 2020-03-13 00:39:55 +00:00
Members Bug 20444: Remove sub GetAttributes 2018-05-03 13:26:49 -03:00
OAI Bug 18601: OAI/Sets.t mangles data due to truncate in ModOAISetsBiblios 2017-06-13 16:18:59 -03:00
Output
…
Patroncards Bug 23488: Line wrapping doesn't always respect word order in Patron card creator 2020-04-01 20:41:25 +00:00
Reports Bug 25000: SQL report not updated 2020-04-03 23:04:04 +00:00
SIP Bug 25805: Return empty strings instead of undef in C4::SIP::ILS::Item::hold_patron_name 2020-07-16 16:04:21 +12:00
Search Bug 17323: Column search_history.time cannot be null 2016-11-18 13:51:37 +00:00
Serials Bug 20144: [sql_modes] Add default value for subscription_numberpatterns.description in tests 2018-02-13 13:58:53 -03:00
Utils Bug 25875: Move check for module_bit and code to the JOIN 2020-07-16 16:36:45 +12:00
Accounts.pm Bug 23049: Capitalise type passed to add_debit for lost_item 2019-10-24 17:24:33 +01:00
Acquisition.pm Bug 24294: Add default value support for control fields in ACQ framework 2020-03-31 22:23:09 +00:00
Auth.pm Bug 22943: Renames the in_ipset function to in_iprange in C4::Auth 2020-04-03 17:30:15 +00:00
Auth_cas_servers.yaml.sample Bug 17065 - Rename C4/Auth_cas_servers.yaml.orig 2016-08-08 13:16:36 +00:00
Auth_with_cas.pm Bug 19160: Add POD 2018-03-23 11:45:38 -03:00
Auth_with_ldap.pm Bug 16719: (QA follow-up) Remove tabs 2020-03-05 00:30:03 +00:00
Auth_with_shibboleth.pm Bug 24199: (bug 23042 follow-up) Prevent t/Auth_with_shibboleth.t to fail randomly 2019-12-16 21:38:45 +00:00
AuthoritiesMarc.pm Bug 22437: (follow-up) Move deletion of merge requests to DelAuthority 2020-05-13 16:13:06 +00:00
BackgroundJob.pm
…
Barcodes.pm
…
Biblio.pm Bug 25709: Rename systempreference to NotesToHide 2020-07-31 03:38:54 +12:00
Bookseller.pm Bug 24002: Incorrect DATE value: '' in C4/Bookseller.pm 2019-11-12 13:50:06 +00:00
Boolean.pm
…
Breeding.pm Bug 23542: Fix SRU import encoding 2020-08-17 21:53:46 +12:00
Budgets.pm Bug 10577: (QA follow-up) Remove tab chars 2019-03-28 12:46:14 +00:00
Calendar.pm Bug 19475: Don't copy holiday if it already exists in target calendar 2020-04-28 20:20:43 +00:00
Charset.pm Bug 22721: Remove frameworkcode parameter in GetMarcFromKohaField calls 2019-07-15 11:28:08 +01:00
Circulation.pm Bug 25724: Do not call ModReserveStatus when completing transfer 2020-07-31 03:14:49 +12:00
ClassSortRoutine.pm
…
ClassSource.pm Bug 15836: Remove deprecated subroutines 2018-11-13 18:56:18 +00:00
ClassSplitRoutine.pm Bug 15836: Add the ability to defined custom methods to split call number in labels 2018-11-13 15:18:22 +00:00
Context.pm Bug 24719: Remove use of CGI object in C4::Context::set_remote_address() 2020-04-01 22:16:47 +00:00
Contract.pm
…
CourseReserves.pm Revert "Bug 23727: Editing course reserve items is broken" 2020-05-19 23:46:46 +00:00
Creators.pm
…
Debug.pm
…
HTML5Media.pm Bug 21742: Fix YouTube variable propagation 2018-11-01 18:59:33 +00:00
Heading.pm Bug 24269: Adjust C4::Heading to generate headings from auth tags 2020-03-13 00:39:55 +00:00
HoldsQueue.pm Bug 23934: Item level holds not checked for LocalHoldsPriority in Holds Queue 2020-01-31 00:12:23 +00:00
Images.pm Revert "Bug 21987: Do not generate true color thumbnails if not needed" 2019-11-04 13:21:53 +00:00
ImportBatch.pm Bug 24827: Specify UTF-8 as encoding in new_from_xml() 2020-04-03 18:14:07 +00:00
ImportExportFramework.pm Bug 18143: Silence ods MARC framework export flood 2019-02-19 13:52:15 +00:00
InstallAuth.pm Bug 25491: Fix for "Use of uninitialized value" in InstallAuth.pm 2020-07-16 16:27:16 +12:00
Installer.pm Bug 24872: Set languages prefererences after install 2020-04-03 21:35:48 +00:00
ItemCirculationAlertPreference.pm Bug 15407: Koha::Patron::Categories - replace C4::Category->all 2016-09-08 13:29:03 +00:00
Items.pm Bug 23081: [19.11.x] Set items.issues to 0 if not provided (AddItem) 2020-05-11 19:12:03 +00:00
Koha.pm Bug 22302: Make ITEMTYPECAT descriptions fallback to lib description if no opac description 2020-02-11 00:12:49 +00:00
Labels.pm
…
Languages.pm Bug 18213: Add Template plugin and fix for C4/Languages 2019-03-28 15:57:32 +00:00
Letters.pm Bug 24612: Use the reserve_id to identify a reserve when building a notice 2020-06-11 05:03:13 +00:00
Linker.pm
…
Log.pm Bug 23896: logaction should pass the correct interface to Koha::Logger 2020-02-10 23:19:01 +00:00
MarcModificationTemplates.pm Bug 24840: [19.11.x] Replace DateTime->now with dt_from_string 2020-05-07 17:17:12 +00:00
Matcher.pm Bug 24348: Pass marc record to _passes_required_checks 2020-02-10 22:37:22 +00:00
Members.pm Bug 14570: Make it possible to add multiple guarantors to a record 2019-08-20 16:04:48 +01:00
Message.pm Bug 21206: Replace C4::Items::GetItem 2019-02-26 13:24:07 +00:00
NewsChannels.pm Bug 24002: Incorrect DATE value: '00-00-0000' in NewsChannels.pm 2019-11-12 13:49:58 +00:00
Output.pm Bug 11994: OpenSearch plugins needs to be delivered with Content-Type application/opensearchdescription+xml 2020-07-13 14:19:15 +12:00
Overdues.pm Bug 25127: Use Koha::Number::Price->round for comparison 2020-05-08 22:53:56 +00:00
Patroncards.pm
…
Print.pm
…
Record.pm Bug 14385: Squash of a lot of patches rebased 2018-11-02 10:33:12 +00:00
Reports.pm
…
Reserves.pm Bug 25566: Add option to ignore found holds and use it when checking high holds 2020-07-31 01:15:53 +12:00
Ris.pm Bug 10306: Core module changes for multiple mappings 2017-12-07 14:44:15 -03:00
RotatingCollections.pm
…
SMS.pm Bug 19134: C4::SMS falils on long driver name 2017-08-25 10:51:24 -03:00
Scheduler.pm
…
Scrubber.pm
…
Search.pm Bug 23086: Search for collection is broken 2020-07-31 03:19:22 +12:00
Serials.pm Bug 24903: Special characters like parentheses in numbering pattern cause duplication in recievedlist 2020-05-04 21:31:05 +00:00
Service.pm Bug 7550: [QA Follow-up] Resolve param warning from sco-patron-image 2017-05-08 09:00:26 -04:00
ShelfBrowser.pm Bug 22445: Custom cover images - opac shelfbrowser 2019-10-22 15:02:48 +01:00
SocialData.pm
…
Stats.pm Bug 21683: Remove accountlines.accountno 2019-03-21 18:19:22 +00:00
Suggestions.pm Bug 22778: Suggestions with no "suggester" can cause errors 2020-05-04 20:50:55 +00:00
TTParser.pm Bug 25257: Preserve prolog on translated XML files 2020-05-08 20:33:57 +00:00
Tags.pm
…
Templates.pm Bug 20538: Remove the need of writing [% KOHA_VERSION %] everywhere 2018-04-13 11:49:44 -03:00
TmplToken.pm
…
TmplTokenType.pm
…
UsageStats.pm Bug 23233: AllowItemsOnHoldCheckout is misnamed and does not indicate it is for SIP-based checkouts only 2020-01-15 00:02:18 +00:00
XISBN.pm Bug 12537: Don't retrieve XISBN results for the same biblionumber 2019-07-15 11:27:59 +01:00
XSLT.pm Bug 7611: (follow-up) separate positive and negative statuses as in the past 2020-04-21 18:58:31 +00:00