Bug 26063: Use Koha::Plugins->call for circulation hooks

This patch gets rid of a helper method used for calling the plugin
hooks.

To test:
1. Run:
   $ kshell
  k$ prove t/db_dependent/Koha/Plugins/Circulation_hooks.t
=> SUCCESS: Tests pass!
2. Apply this patch
3. Repeat 1
=> SUCCESS: Tests still pass!
4. Sign off :-D

Sponsored-by: ByWater Solutions

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This commit is contained in:
Tomás Cohen Arazi 2020-07-24 16:00:52 -03:00 committed by Jonathan Druart
parent 67c54c2c23
commit db74e67bc5

View file

@ -1548,15 +1548,13 @@ sub AddIssue {
$item_object->itemnumber,
) if C4::Context->preference("IssueLog");
_after_circ_actions(
{
action => 'checkout',
payload => {
type => ( $onsite_checkout ? 'onsite_checkout' : 'issue' ),
checkout => $issue->get_from_storage
}
Koha::Plugins->call('after_circ_action', {
action => 'checkout',
payload => {
type => ( $onsite_checkout ? 'onsite_checkout' : 'issue' ),
checkout => $issue->get_from_storage
}
) if C4::Context->config("enable_plugins");
});
}
}
return $issue;
@ -2210,14 +2208,12 @@ sub AddReturn {
my $checkin = Koha::Old::Checkouts->find($issue->id);
_after_circ_actions(
{
action => 'checkin',
payload => {
checkout=> $checkin
}
Koha::Plugins->call('after_circ_action', {
action => 'checkin',
payload => {
checkout=> $checkin
}
) if C4::Context->config("enable_plugins");
});
return ( $doreturn, $messages, $issue, ( $patron ? $patron->unblessed : {} ));
}
@ -3134,14 +3130,12 @@ sub AddRenewal {
#Log the renewal
logaction("CIRCULATION", "RENEWAL", $borrowernumber, $itemnumber) if C4::Context->preference("RenewalLog");
_after_circ_actions(
{
action => 'renewal',
payload => {
checkout => $issue->get_from_storage
}
Koha::Plugins->call('after_circ_action', {
action => 'renewal',
payload => {
checkout => $issue->get_from_storage
}
) if C4::Context->config("enable_plugins");
});
});
return $datedue;
@ -4352,30 +4346,6 @@ sub _item_denied_renewal {
return 0;
}
=head3 _after_circ_actions
Internal method that calls the after_circ_action plugin hook on configured
plugins.
=cut
sub _after_circ_actions {
my ($params) = @_;
my @plugins = Koha::Plugins->new->GetPlugins({
method => 'after_circ_action',
});
foreach my $plugin ( @plugins ) {
try {
$plugin->after_circ_action( $params );
}
catch {
warn "$_";
};
}
}
1;
__END__