Bug 9762: (Alternative) Handle renewals
Signed-off-by: Martin Renvoize <martin.renvoize@openfifth.co.uk> Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
This commit is contained in:
parent
5350a9276e
commit
255c0897f2
|
|
@ -3488,6 +3488,8 @@ sub AddRenewal {
|
|||
my $seen = $params->{seen};
|
||||
my $automatic = $params->{automatic};
|
||||
my $skip_record_index = $params->{skip_record_index};
|
||||
my $confirmations = $params->{confirmations};
|
||||
my $forced = $params->{forced};
|
||||
|
||||
# Fallback on a 'seen' renewal
|
||||
$seen = defined $seen && $seen == 0 ? 0 : 1;
|
||||
|
|
@ -3561,10 +3563,12 @@ sub AddRenewal {
|
|||
);
|
||||
if ( !$seen && $rule && looks_like_number( $rule->rule_value ) ) {
|
||||
$unseen_renewals++;
|
||||
push @{$confirmations}, 'UNSEEN';
|
||||
} else {
|
||||
|
||||
# If the renewal is seen, unseen should revert to 0
|
||||
$unseen_renewals = 0;
|
||||
push @{$confirmations}, 'SEEN';
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -3677,8 +3681,24 @@ sub AddRenewal {
|
|||
};
|
||||
|
||||
#Log the renewal
|
||||
logaction( "CIRCULATION", "RENEWAL", $borrowernumber, $itemnumber )
|
||||
if C4::Context->preference("RenewalLog");
|
||||
if ( C4::Context->preference("RenewalLog") ) {
|
||||
my $info = $itemnumber;
|
||||
if ( defined($confirmations) || defined($forced) ) {
|
||||
$info = to_json(
|
||||
{
|
||||
issue => $issue->issue_id,
|
||||
itemnumber => $itemnumber,
|
||||
confirmations => $confirmations,
|
||||
forced => $forced
|
||||
},
|
||||
{
|
||||
pretty => 1,
|
||||
cononical => 1
|
||||
}
|
||||
);
|
||||
}
|
||||
logaction( "CIRCULATION", "RENEWAL", $borrowernumber, $info );
|
||||
}
|
||||
|
||||
Koha::Plugins->call(
|
||||
'after_circ_action',
|
||||
|
|
|
|||
|
|
@ -71,9 +71,11 @@ if ( $op eq 'cud-renew' && $barcode ) {
|
|||
my @message;
|
||||
|
||||
if ( ( $patron->is_debarred || q{} ) lt dt_from_string()->ymd() ) {
|
||||
my $confirmations;
|
||||
my $can_renew;
|
||||
my $info;
|
||||
( $can_renew, $error, $info ) = CanBookBeRenewed( $patron, $checkout, $override_limit );
|
||||
push @{$confirmations}, $override_limit if $override_limit;
|
||||
|
||||
if ( $error && ( $error eq 'on_reserve' ) ) {
|
||||
if ($override_holds) {
|
||||
|
|
@ -123,10 +125,11 @@ if ( $op eq 'cud-renew' && $barcode ) {
|
|||
|
||||
$date_due = AddRenewal(
|
||||
{
|
||||
itemnumber => $item->itemnumber(),
|
||||
branch => $branchcode,
|
||||
datedue => $date_due,
|
||||
seen => !$unseen
|
||||
itemnumber => $item->itemnumber(),
|
||||
branch => $branchcode,
|
||||
datedue => $date_due,
|
||||
seen => !$unseen,
|
||||
confirmations => $confirmations
|
||||
}
|
||||
);
|
||||
$template->param( date_due => $date_due );
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@
|
|||
<form method="post" action="/cgi-bin/koha/circ/renew.pl">
|
||||
[% INCLUDE 'csrf-token.inc' %]
|
||||
<input type="hidden" name="barcode" value="[% item.barcode | html %]" />
|
||||
<input type="hidden" name="override_limit" value="1" />
|
||||
<input type="hidden" name="override_limit" value="RENEWAL_LIMIT" />
|
||||
<input type="hidden" name="op" value="cud-renew" />
|
||||
<input type="hidden" name="hard_due_date" value="[% hard_due_date | html %]" />
|
||||
<button type="submit" class="btn btn-default approve"><i class="fa fa-check"></i> Override limit and renew</button>
|
||||
|
|
@ -72,7 +72,7 @@
|
|||
<form method="post" action="/cgi-bin/koha/circ/renew.pl">
|
||||
[% INCLUDE 'csrf-token.inc' %]
|
||||
<input type="hidden" name="barcode" value="[% item.barcode | html %]" />
|
||||
<input type="hidden" name="override_limit" value="1" />
|
||||
<input type="hidden" name="override_limit" value="UNSEEN_LIMIT" />
|
||||
<input type="hidden" name="op" value="cud-renew" />
|
||||
<button type="submit" class="btn btn-default approve"><i class="fa fa-check"></i> Override limit and renew</button>
|
||||
</form>
|
||||
|
|
@ -84,7 +84,7 @@
|
|||
<form method="post" action="/cgi-bin/koha/circ/renew.pl">
|
||||
[% INCLUDE 'csrf-token.inc' %]
|
||||
<input type="hidden" name="barcode" value="[% item.barcode | html %]" />
|
||||
<input type="hidden" name="override_limit" value="1" />
|
||||
<input type="hidden" name="override_limit" value="TOO_SOON" />
|
||||
<input type="hidden" name="op" value="cud-renew" />
|
||||
<button type="submit" class="btn btn-default approve"><i class="fa fa-check"></i> Override and renew</button>
|
||||
</form>
|
||||
|
|
@ -96,7 +96,7 @@
|
|||
<form method="post" action="/cgi-bin/koha/circ/renew.pl">
|
||||
[% INCLUDE 'csrf-token.inc' %]
|
||||
<input type="hidden" name="barcode" value="[% item.barcode | html %]" />
|
||||
<input type="hidden" name="override_limit" value="1" />
|
||||
<input type="hidden" name="override_limit" value="AUTO_TOO_SOON" />
|
||||
<input type="hidden" name="op" value="cud-renew" />
|
||||
<button type="submit" class="btn btn-default approve"><i class="fa fa-check"></i> Override and renew</button>
|
||||
</form>
|
||||
|
|
@ -108,7 +108,7 @@
|
|||
<form method="post" action="/cgi-bin/koha/circ/renew.pl">
|
||||
[% INCLUDE 'csrf-token.inc' %]
|
||||
<input type="hidden" name="barcode" value="[% item.barcode | html %]" />
|
||||
<input type="hidden" name="override_limit" value="1" />
|
||||
<input type="hidden" name="override_limit" value="AUTO_TOO_LATE" />
|
||||
<input type="hidden" name="op" value="cud-renew" />
|
||||
<input type="submit" class="btn btn-default approve" value="Override and renew" />
|
||||
</form>
|
||||
|
|
@ -120,19 +120,20 @@
|
|||
<form method="post" action="/cgi-bin/koha/circ/renew.pl">
|
||||
[% INCLUDE 'csrf-token.inc' %]
|
||||
<input type="hidden" name="barcode" value="[% item.barcode | html %]" />
|
||||
<input type="hidden" name="override_limit" value="1" />
|
||||
<input type="hidden" name="override_limit" value="ACCOUNT_EXPIRED" />
|
||||
<input type="hidden" name="op" value="cud-renew" />
|
||||
<input type="submit" class="btn btn-default approve" value="Override and renew" />
|
||||
</form>
|
||||
[% END %]
|
||||
[% ELSIF error == "auto_renew" or error == "auto_too_much_oweing" %]
|
||||
<p>[% INCLUDE 'biblio-title.inc' biblio=item.biblio link = 1 %] ( [% item.barcode | html %] ) has been scheduled for automatic renewal. </p>
|
||||
[% SET override_limit = error == "auto_renew" ? "AUTO_RENEW" : "TOO_MUCH" %]
|
||||
|
||||
[% IF Koha.Preference('AllowRenewalLimitOverride') %]
|
||||
<form method="post" action="/cgi-bin/koha/circ/renew.pl">
|
||||
[% INCLUDE 'csrf-token.inc' %]
|
||||
<input type="hidden" name="barcode" value="[% item.barcode | html %]" />
|
||||
<input type="hidden" name="override_limit" value="1" />
|
||||
<input type="hidden" name="override_limit" value="[% override_limit | html %]" />
|
||||
<input type="hidden" name="op" value="cud-renew" />
|
||||
<button type="submit" class="btn btn-default approve"><i class="fa fa-check"></i> Override limit and renew</button>
|
||||
</form>
|
||||
|
|
@ -143,7 +144,7 @@
|
|||
<form method="post" action="/cgi-bin/koha/circ/renew.pl">
|
||||
[% INCLUDE 'csrf-token.inc' %]
|
||||
<input type="hidden" name="barcode" value="[% item.barcode | html %]" />
|
||||
<input type="hidden" name="override_limit" value="1" />
|
||||
<input type="hidden" name="override_limit" value="ON_RESERVE" />
|
||||
<input type="hidden" name="override_holds" value="1" />
|
||||
<div>
|
||||
<label for="renewonholdduedate">Renewal due date:</label>
|
||||
|
|
|
|||
Loading…
Reference in New Issue