Bugzilla – Attachment 66128 Details for
Bug 14385
Extend OpacHiddenItems to allow specifying exempt borrower categories
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 14385: Refactor EmbedItemsInMarcBiblio parameters to hashref
Bug-14385-Refactor-EmbedItemsInMarcBiblio-paramete.patch (text/plain), 8.12 KB, created by
Mark Tompsett
on 2017-08-16 15:51:08 UTC
(
hide
)
Description:
Bug 14385: Refactor EmbedItemsInMarcBiblio parameters to hashref
Filename:
MIME Type:
Creator:
Mark Tompsett
Created:
2017-08-16 15:51:08 UTC
Size:
8.12 KB
patch
obsolete
>From 8b51503a2c93d6c293e3807911e90b30b5f56259 Mon Sep 17 00:00:00 2001 >From: Mark Tompsett <mtompset@hotmail.com> >Date: Tue, 1 Aug 2017 14:28:34 -0400 >Subject: [PATCH] Bug 14385: Refactor EmbedItemsInMarcBiblio parameters to > hashref > >--- > C4/Biblio.pm | 18 +++++++++++++++--- > C4/Record.pm | 5 ++++- > Koha/BiblioUtils/Iterator.pm | 4 +++- > Koha/Exporter/Record.pm | 5 ++++- > cataloguing/additem.pl | 4 +++- > misc/migration_tools/build_oai_sets.pl | 4 +++- > t/db_dependent/Items.t | 31 +++++++++++++++++++++++-------- > 7 files changed, 55 insertions(+), 16 deletions(-) > >diff --git a/C4/Biblio.pm b/C4/Biblio.pm >index 26acb4c..c71b454 100644 >--- a/C4/Biblio.pm >+++ b/C4/Biblio.pm >@@ -1191,7 +1191,10 @@ sub GetMarcBiblio { > > C4::Biblio::_koha_marc_update_bib_ids( $record, $frameworkcode, $biblionumber, > $biblioitemnumber ); >- C4::Biblio::EmbedItemsInMarcBiblio( $record, $biblionumber, undef, $opac ) >+ C4::Biblio::EmbedItemsInMarcBiblio({ >+ marc_record => $record, >+ biblionumber => $biblionumber, >+ opac => $opac }) > if ($embeditems); > > return $record; >@@ -2868,7 +2871,11 @@ sub ModZebra { > > =head2 EmbedItemsInMarcBiblio > >- EmbedItemsInMarcBiblio($marc, $biblionumber, $itemnumbers, $opac); >+ EmbedItemsInMarcBiblio({ >+ marc_record => $marc, >+ biblionumber => $biblionumber, >+ item_numbers => $itemnumbers, >+ opac => $opac }); > > Given a MARC::Record object containing a bib record, > modify it to include the items attached to it as 9XX >@@ -2880,11 +2887,16 @@ If $opac is true, then opac-relevant suppressions are included. > =cut > > sub EmbedItemsInMarcBiblio { >- my ($marc, $biblionumber, $itemnumbers, $opac) = @_; >+ my ($params) = @_; >+ my ($marc, $biblionumber, $itemnumbers, $opac); >+ $marc = $params->{marc_record}; > if ( !$marc ) { > carp 'EmbedItemsInMarcBiblio: No MARC record passed'; > return; > } >+ $biblionumber = $params->{biblionumber}; >+ $itemnumbers = $params->{item_numbers}; >+ $opac = $params->{opac}; > > $itemnumbers = [] unless defined $itemnumbers; > >diff --git a/C4/Record.pm b/C4/Record.pm >index e36e035..02ab748 100644 >--- a/C4/Record.pm >+++ b/C4/Record.pm >@@ -473,7 +473,10 @@ sub marcrecord2csv { > # Getting the record > my $record = GetMarcBiblio($biblio); > return unless $record; >- C4::Biblio::EmbedItemsInMarcBiblio( $record, $biblio, $itemnumbers ); >+ C4::Biblio::EmbedItemsInMarcBiblio({ >+ marc_record => $record, >+ biblionumber => $biblio, >+ item_numbers => $itemnumbers }); > # Getting the framework > my $frameworkcode = GetFrameworkCode($biblio); > >diff --git a/Koha/BiblioUtils/Iterator.pm b/Koha/BiblioUtils/Iterator.pm >index 0e71966..ff60871 100644 >--- a/Koha/BiblioUtils/Iterator.pm >+++ b/Koha/BiblioUtils/Iterator.pm >@@ -108,7 +108,9 @@ sub next { > if ( !defined($bibnum) ); > > # TODO this should really be in Koha::BiblioUtils or something similar. >- C4::Biblio::EmbedItemsInMarcBiblio( $marc, $bibnum ); >+ C4::Biblio::EmbedItemsInMarcBiblio({ >+ marc_record => $marc, >+ biblionumber => $bibnum }); > } > > if (wantarray) { >diff --git a/Koha/Exporter/Record.pm b/Koha/Exporter/Record.pm >index 193f87e..1ffcab0 100644 >--- a/Koha/Exporter/Record.pm >+++ b/Koha/Exporter/Record.pm >@@ -70,7 +70,10 @@ sub _get_biblio_for_export { > return if $@ or not defined $record; > > if ($export_items) { >- C4::Biblio::EmbedItemsInMarcBiblio( $record, $biblionumber, $itemnumbers ); >+ C4::Biblio::EmbedItemsInMarcBiblio({ >+ marc_record => $record, >+ biblionumber => $biblionumber, >+ item_numbers => $itemnumbers }); > if ($only_export_items_for_branch) { > my ( $homebranchfield, $homebranchsubfield ) = GetMarcFromKohaField( 'items.homebranch', '' ); # Should be GetFrameworkCode( $biblionumber )? > >diff --git a/cataloguing/additem.pl b/cataloguing/additem.pl >index 9387072..584cec6 100755 >--- a/cataloguing/additem.pl >+++ b/cataloguing/additem.pl >@@ -733,7 +733,9 @@ my @big_array; > #---- finds where items.itemnumber is stored > my ( $itemtagfield, $itemtagsubfield) = &GetMarcFromKohaField("items.itemnumber", $frameworkcode); > my ($branchtagfield, $branchtagsubfield) = &GetMarcFromKohaField("items.homebranch", $frameworkcode); >-C4::Biblio::EmbedItemsInMarcBiblio($temp, $biblionumber); >+C4::Biblio::EmbedItemsInMarcBiblio({ >+ marc_record => $temp, >+ biblionumber => $biblionumber }); > my @fields = $temp->fields(); > > >diff --git a/misc/migration_tools/build_oai_sets.pl b/misc/migration_tools/build_oai_sets.pl >index 926b1db..50b8d1f 100755 >--- a/misc/migration_tools/build_oai_sets.pl >+++ b/misc/migration_tools/build_oai_sets.pl >@@ -127,7 +127,9 @@ foreach my $res (@$results) { > next; > } > if($embed_items) { >- C4::Biblio::EmbedItemsInMarcBiblio($record, $biblionumber); >+ C4::Biblio::EmbedItemsInMarcBiblio({ >+ marc_record => $record, >+ biblionumber => $biblionumber }); > } > > my @biblio_sets = CalcOAISetsBiblio($record, $mappings); >diff --git a/t/db_dependent/Items.t b/t/db_dependent/Items.t >index 1852225..2167e71 100755 >--- a/t/db_dependent/Items.t >+++ b/t/db_dependent/Items.t >@@ -567,18 +567,25 @@ subtest 'C4::Biblio::EmbedItemsInMarcBiblio' => sub { > my $record = C4::Biblio::GetMarcBiblio($biblionumber); > warning_is { C4::Biblio::EmbedItemsInMarcBiblio() } > { carped => 'EmbedItemsInMarcBiblio: No MARC record passed' }, >- 'Should crap is no record passed.'; >+ 'Should carp no record is passed.'; > >- C4::Biblio::EmbedItemsInMarcBiblio( $record, $biblionumber ); >+ C4::Biblio::EmbedItemsInMarcBiblio({ >+ marc_record => $record, >+ biblionumber => $biblionumber }); > my @items = $record->field($itemfield); > is( scalar @items, $number_of_items, 'Should return all items' ); > >- C4::Biblio::EmbedItemsInMarcBiblio( $record, $biblionumber, >- [ $itemnumbers[1], $itemnumbers[3] ] ); >+ C4::Biblio::EmbedItemsInMarcBiblio({ >+ marc_record => $record, >+ biblionumber => $biblionumber, >+ item_numbers => [ $itemnumbers[1], $itemnumbers[3] ] }); > @items = $record->field($itemfield); > is( scalar @items, 2, 'Should return all items present in the list' ); > >- C4::Biblio::EmbedItemsInMarcBiblio( $record, $biblionumber, undef, 1 ); >+ C4::Biblio::EmbedItemsInMarcBiblio({ >+ marc_record => $record, >+ biblionumber => $biblionumber, >+ opac => 1 }); > @items = $record->field($itemfield); > is( scalar @items, $number_of_items, 'Should return all items for opac' ); > >@@ -586,13 +593,18 @@ subtest 'C4::Biblio::EmbedItemsInMarcBiblio' => sub { > homebranch: ['$library1->{branchcode}']"; > t::lib::Mocks::mock_preference( 'OpacHiddenItems', $opachiddenitems ); > >- C4::Biblio::EmbedItemsInMarcBiblio( $record, $biblionumber ); >+ C4::Biblio::EmbedItemsInMarcBiblio({ >+ marc_record => $record, >+ biblionumber => $biblionumber }); > @items = $record->field($itemfield); > is( scalar @items, > $number_of_items, > 'Even with OpacHiddenItems set, all items should have been embedded' ); > >- C4::Biblio::EmbedItemsInMarcBiblio( $record, $biblionumber, undef, 1 ); >+ C4::Biblio::EmbedItemsInMarcBiblio({ >+ marc_record => $record, >+ biblionumber => $biblionumber, >+ opac => 1 }); > @items = $record->field($itemfield); > is( > scalar @items, >@@ -603,7 +615,10 @@ subtest 'C4::Biblio::EmbedItemsInMarcBiblio' => sub { > $opachiddenitems = " > homebranch: ['$library1->{branchcode}', '$library2->{branchcode}']"; > t::lib::Mocks::mock_preference( 'OpacHiddenItems', $opachiddenitems ); >- C4::Biblio::EmbedItemsInMarcBiblio( $record, $biblionumber, undef, 1 ); >+ C4::Biblio::EmbedItemsInMarcBiblio({ >+ marc_record => $record, >+ biblionumber => $biblionumber, >+ opac => 1 }); > @items = $record->field($itemfield); > is( > scalar @items, >-- >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 14385
:
40158
|
53483
|
53494
|
53505
|
53506
|
53507
|
55593
|
64688
|
64689
|
64690
|
64691
|
64692
|
64693
|
65322
|
65323
|
65324
|
65325
|
65376
|
65377
|
65378
|
65379
|
65380
|
65381
|
65382
|
65383
|
65384
|
65385
|
65386
|
65387
|
65388
|
65389
|
65408
|
65409
|
65410
|
65411
|
66103
|
66104
|
66105
|
66106
|
66107
|
66108
|
66109
|
66110
|
66111
|
66112
|
66113
|
66114
|
66115
|
66116
|
66117
|
66118
|
66125
|
66126
|
66127
|
66128
|
66129
|
66130
|
66131
|
66132
|
66192
|
66193
|
66194
|
66195
|
66196
|
66197
|
66198
|
66199
|
66200
|
66201
|
66202
|
66203
|
66204
|
66205
|
66206
|
66207
|
66208
|
66209
|
66210
|
66302
|
66303
|
66347
|
66361
|
66372
|
66401
|
66403
|
66520
|
66521
|
66522
|
66523
|
66524
|
66525
|
66526
|
66527
|
66528
|
66529
|
66530
|
66531
|
66532
|
66533
|
66534
|
66535
|
66536
|
66537
|
66538
|
66539
|
66540
|
66541
|
66542
|
66543
|
66544
|
66545
|
70256
|
70257
|
70258
|
70259
|
72445
|
72446
|
72447
|
72448
|
72449
|
72450
|
72451
|
72452
|
72453
|
72454
|
74001
|
78654
|
78655
|
78656
|
78657
|
78825
|
78826
|
78827
|
78828
|
80411
|
80463
|
80464
|
80465
|
80466
|
80467
|
89963
|
90038