Bugzilla – Attachment 91961 Details for
Bug 18936
Move issuingrules into circulation_rules
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 18936: (follow-up) Fix tests, replace old get_onshelfholds_policy method
Bug-18936-follow-up-Fix-tests-replace-old-getonshe.patch (text/plain), 10.46 KB, created by
Jonathan Druart
on 2019-08-04 20:09:57 UTC
(
hide
)
Description:
Bug 18936: (follow-up) Fix tests, replace old get_onshelfholds_policy method
Filename:
MIME Type:
Creator:
Jonathan Druart
Created:
2019-08-04 20:09:57 UTC
Size:
10.46 KB
patch
obsolete
>From 9b2e1685bfe92cb4031d1dd97da6a2b8ab69bd06 Mon Sep 17 00:00:00 2001 >From: Jesse Weaver <pianohacker@gmail.com> >Date: Mon, 26 Feb 2018 12:17:16 -0700 >Subject: [PATCH] Bug 18936: (follow-up) Fix tests, replace old > get_onshelfholds_policy method > >--- > Koha/CirculationRules.pm | 21 +++++++++++++++++++++ > installer/onboarding.pl | 18 +++++++++--------- > opac/opac-ISBDdetail.pl | 5 +++-- > opac/opac-MARCdetail.pl | 4 ++-- > opac/opac-detail.pl | 4 ++-- > opac/opac-reserve.pl | 4 ++-- > opac/opac-shelves.pl | 4 ++-- > reserve/request.pl | 4 ++-- > t/db_dependent/Holds/DisallowHoldIfItemsAvailable.t | 16 ++++++++-------- > t/db_dependent/Reserves.t | 13 ------------- > 10 files changed, 51 insertions(+), 42 deletions(-) > >diff --git a/Koha/CirculationRules.pm b/Koha/CirculationRules.pm >index 7f8d36e762..86d1582990 100644 >--- a/Koha/CirculationRules.pm >+++ b/Koha/CirculationRules.pm >@@ -342,7 +342,28 @@ sub delete { > while ( my $rule = $self->next ){ > $rule->delete; > } >+} >+ >+=head3 get_onshelfholds_policy >+ >+ my $on_shelf_holds = Koha::CirculationRules->get_onshelfholds_policy({ item => $item, patron => $patron }); >+ >+=cut > >+sub get_onshelfholds_policy { >+ my ( $class, $params ) = @_; >+ my $item = $params->{item}; >+ my $itemtype = $item->effective_itemtype; >+ my $patron = $params->{patron}; >+ my $rule = Koha::CirculationRules->get_effective_rule( >+ { >+ categorycode => ( $patron ? $patron->categorycode : undef ), >+ itemtype => $itemtype, >+ branchcode => $item->holdingbranch, >+ rule_name => 'onshelfholds', >+ } >+ ); >+ return $rule ? $rule->rule_value : undef; > } > > =head3 type >diff --git a/installer/onboarding.pl b/installer/onboarding.pl >index 77aa12018a..8951530a26 100755 >--- a/installer/onboarding.pl >+++ b/installer/onboarding.pl >@@ -30,7 +30,6 @@ use Koha::DateUtils; > use Koha::Patrons; > use Koha::Patron::Categories; > use Koha::ItemTypes; >-use Koha::IssuingRules; > > #Setting variables > my $input = new CGI; >@@ -251,15 +250,16 @@ if ( $step == 5 ) { > branchcode => $branchcode, > categorycode => $categorycode, > itemtype => $itemtype, >- renewalsallowed => $renewalsallowed, >- renewalperiod => $renewalperiod, >- issuelength => $issuelength, >- lengthunit => $lengthunit, >- onshelfholds => $onshelfholds, >+ rules => { >+ renewalsallowed => $renewalsallowed, >+ renewalperiod => $renewalperiod, >+ issuelength => $issuelength, >+ lengthunit => $lengthunit, >+ onshelfholds => $onshelfholds, >+ } > }; > >- my $issuingrule = Koha::IssuingRule->new($params); >- eval { $issuingrule->store; }; >+ eval { Koha::CirculationRules->set_rules( $params ) }; > > if ($@) { > push @messages, { code => 'error_on_insert_circ_rule' }; >@@ -287,7 +287,7 @@ if ( $step == 5 ) { > } > } > >- $step++ if Koha::IssuingRules->count; >+ $step++ if Koha::CirculationRules->count; > } > > my $libraries = Koha::Libraries->search( {}, { order_by => ['branchcode'] }, ); >diff --git a/opac/opac-ISBDdetail.pl b/opac/opac-ISBDdetail.pl >index c79167cd31..1a67bbad8d 100755 >--- a/opac/opac-ISBDdetail.pl >+++ b/opac/opac-ISBDdetail.pl >@@ -51,7 +51,8 @@ use C4::Reserves; > use C4::Acquisition; > use C4::Serials; # uses getsubscriptionfrom biblionumber > use C4::Koha; >-use Koha::IssuingRules; >+use Koha::CirculationRules; >+use Koha::Items; > use Koha::ItemTypes; > use Koha::Patrons; > use Koha::RecordProcessor; >@@ -178,7 +179,7 @@ while ( my $item = $items->next ) { > && !Koha::ItemTypes->find($item->effective_itemtype)->notforloan > && $item->itemnumber; > >- $allow_onshelf_holds = Koha::IssuingRules->get_onshelfholds_policy( { item => $item, patron => $patron } ) >+ $allow_onshelf_holds = Koha::CirculationRules->get_onshelfholds_policy( { item => $item, patron => $patron } ) > unless $allow_onshelf_holds; > } > >diff --git a/opac/opac-MARCdetail.pl b/opac/opac-MARCdetail.pl >index 8fb0c4ebbb..4bc9294b50 100755 >--- a/opac/opac-MARCdetail.pl >+++ b/opac/opac-MARCdetail.pl >@@ -58,7 +58,7 @@ use C4::Acquisition; > use C4::Koha; > use List::MoreUtils qw( any uniq ); > use Koha::Biblios; >-use Koha::IssuingRules; >+use Koha::CirculationRules; > use Koha::Items; > use Koha::ItemTypes; > use Koha::Patrons; >@@ -138,7 +138,7 @@ $template->param( > my $allow_onshelf_holds; > for my $itm (@all_items) { > my $item = Koha::Items->find( $itm->{itemnumber} ); >- $allow_onshelf_holds = Koha::IssuingRules->get_onshelfholds_policy( { item => $item, patron => $patron } ); >+ $allow_onshelf_holds = Koha::CirculationRules->get_onshelfholds_policy( { item => $item, patron => $patron } ); > last if $allow_onshelf_holds; > } > >diff --git a/opac/opac-detail.pl b/opac/opac-detail.pl >index 8f044f5c1a..5b235b042a 100755 >--- a/opac/opac-detail.pl >+++ b/opac/opac-detail.pl >@@ -52,7 +52,7 @@ use C4::CourseReserves qw(GetItemCourseReservesInfo); > use Koha::Biblios; > use Koha::RecordProcessor; > use Koha::AuthorisedValues; >-use Koha::IssuingRules; >+use Koha::CirculationRules; > use Koha::Items; > use Koha::ItemTypes; > use Koha::Acquisition::Orders; >@@ -687,7 +687,7 @@ if ( not $viewallitems and @items > $max_items_to_display ) { > && !$itemtypes->{$itm->{'itype'}}->{notforloan} > && $itm->{'itemnumber'}; > >- $allow_onshelf_holds = Koha::IssuingRules->get_onshelfholds_policy( { item => $item, patron => $patron } ) >+ $allow_onshelf_holds = Koha::CirculationRules->get_onshelfholds_policy( { item => $item, patron => $patron } ) > unless $allow_onshelf_holds; > > # get collection code description, too >diff --git a/opac/opac-reserve.pl b/opac/opac-reserve.pl >index 472d0f5519..6f2a48e638 100755 >--- a/opac/opac-reserve.pl >+++ b/opac/opac-reserve.pl >@@ -36,7 +36,7 @@ use C4::Debug; > use Koha::AuthorisedValues; > use Koha::Biblios; > use Koha::DateUtils; >-use Koha::IssuingRules; >+use Koha::CirculationRules; > use Koha::Items; > use Koha::ItemTypes; > use Koha::Checkouts; >@@ -541,7 +541,7 @@ foreach my $biblioNum (@biblionumbers) { > CanItemBeReserved( $borrowernumber, $itemNum )->{status} eq 'OK'; > > if ($policy_holdallowed) { >- my $opac_hold_policy = Koha::IssuingRules->get_opacitemholds_policy( { item => $item, patron => $patron } ); >+ my $opac_hold_policy = Koha::CirculationRules->get_opacitemholds_policy( { item => $item, patron => $patron } ); > if ( $opac_hold_policy ne 'N' ) { # If Y or F > $itemLoopIter->{available} = 1; > $numCopiesOPACAvailable++; >diff --git a/opac/opac-shelves.pl b/opac/opac-shelves.pl >index cca12f2bb2..c87b1f76aa 100755 >--- a/opac/opac-shelves.pl >+++ b/opac/opac-shelves.pl >@@ -31,7 +31,7 @@ use C4::XSLT; > > use Koha::Biblios; > use Koha::Biblioitems; >-use Koha::IssuingRules; >+use Koha::CirculationRules; > use Koha::Items; > use Koha::ItemTypes; > use Koha::Patrons; >@@ -320,7 +320,7 @@ if ( $op eq 'view' ) { > > my $items = $biblio->items; > while ( my $item = $items->next ) { >- $this_item->{allow_onshelf_holds} = Koha::IssuingRules->get_onshelfholds_policy( { item => $item, patron => $patron } ); >+ $this_item->{allow_onshelf_holds} = Koha::CirculationRules->get_onshelfholds_policy( { item => $item, patron => $patron } ); > last if $this_item->{allow_onshelf_holds}; > } > >diff --git a/reserve/request.pl b/reserve/request.pl >index 89368086cc..e67865b1b6 100755 >--- a/reserve/request.pl >+++ b/reserve/request.pl >@@ -48,7 +48,7 @@ use Koha::Biblios; > use Koha::DateUtils; > use Koha::Checkouts; > use Koha::Holds; >-use Koha::IssuingRules; >+use Koha::CirculationRules; > use Koha::Items; > use Koha::ItemTypes; > use Koha::Libraries; >@@ -480,7 +480,7 @@ foreach my $biblionumber (@biblionumbers) { > my $can_item_be_reserved = CanItemBeReserved( $patron->borrowernumber, $itemnumber, $pickup ); > $item->{not_holdable} = $can_item_be_reserved->{status} unless ( $can_item_be_reserved->{status} eq 'OK' ); > >- $item->{item_level_holds} = Koha::IssuingRules->get_opacitemholds_policy( { item => $item_object, patron => $patron } ); >+ $item->{item_level_holds} = Koha::CirculationRules->get_opacitemholds_policy( { item => $item_object, patron => $patron } ); > > if ( > !$item->{cantreserve} >diff --git a/t/db_dependent/Holds/DisallowHoldIfItemsAvailable.t b/t/db_dependent/Holds/DisallowHoldIfItemsAvailable.t >index fdc8f81f64..f49aa107a9 100755 >--- a/t/db_dependent/Holds/DisallowHoldIfItemsAvailable.t >+++ b/t/db_dependent/Holds/DisallowHoldIfItemsAvailable.t >@@ -216,17 +216,17 @@ my $hold = $builder->build({ > } > }); > >-Koha::IssuingRule->new( >+Koha::CirculationRules->set_rules( > { >- categorycode => '*', >+ categorycode => undef, > itemtype => $itemtype2, >- branchcode => '*', >- issuelength => 7, >- lengthunit => 8, >- reservesallowed => 99, >- onshelfholds => 0, >+ branchcode => undef, >+ rules => { >+ maxissueqty => 99, >+ onshelfholds => 2, >+ } > } >-)->store(); >+); > > $is = IsAvailableForItemLevelRequest( $item3, $patron1); > is( $is, 1, "Item can be held, items in transit are not available" ); >diff --git a/t/db_dependent/Reserves.t b/t/db_dependent/Reserves.t >index b1f815fe75..019857f16d 100755 >--- a/t/db_dependent/Reserves.t >+++ b/t/db_dependent/Reserves.t >@@ -563,19 +563,6 @@ Koha::CirculationRules->set_rules( > } > ); > >-ok( C4::Reserves::OnShelfHoldsAllowed($item, $borrower), "OnShelfHoldsAllowed() allowed" ); >-Koha::CirculationRules->set_rules( >- { >- categorycode => $categorycode, >- itemtype => $itype, >- branchcode => $holdingbranch, >- rules => { >- onshelfholds => 0, >- } >- } >-); >-ok( !C4::Reserves::OnShelfHoldsAllowed($item, $borrower), "OnShelfHoldsAllowed() disallowed" ); >- > # tests for MoveReserve in relation to ConfirmFutureHolds (BZ 14526) > # hold from A pos 1, today, no fut holds: MoveReserve should fill it > $dbh->do('DELETE FROM reserves', undef, ($bibnum)); >-- >2.11.0
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 18936
:
65247
|
65248
|
65249
|
67629
|
67758
|
68236
|
71034
|
71035
|
71036
|
71037
|
71038
|
71039
|
71040
|
71041
|
72230
|
72231
|
72232
|
72233
|
72234
|
72235
|
72236
|
72237
|
72238
|
91953
|
91954
|
91955
|
91956
|
91957
|
91958
|
91959
|
91960
|
91961
|
91962
|
91963
|
91964
|
91965
|
91966
|
91967
|
91968
|
91969
|
91970
|
91971
|
91972
|
91973
|
91974
|
91975
|
94179
|
94180
|
94181
|
94182
|
94183
|
94184
|
94185
|
94186
|
94187
|
94188
|
94189
|
94190
|
94191
|
94192
|
94193
|
94194
|
94195
|
94196
|
94197
|
94198
|
94199
|
94200
|
98299
|
98300
|
98301
|
98302
|
98303
|
98304
|
98305
|
98306
|
98307
|
98308
|
98309
|
98310
|
98311
|
98312
|
98313
|
98314
|
98315
|
98316
|
98317
|
98318
|
98319
|
98320
|
98321
|
98322
|
98323
|
98324
|
98325
|
98326
|
98327
|
98328
|
98329
|
98330
|
98331
|
98332
|
98333
|
98334
|
98335
|
98336
|
98337
|
98338
|
98339
|
98340
|
98341
|
98342
|
98343
|
98344
|
98345
|
98346
|
98347
|
98407
|
98408