@@ -, +, @@
circulation.pl
---
circ/circulation.pl | 13 ++++++++
.../prog/en/modules/circ/circulation.tt | 14 ++++++--
.../circ/circulation_batch_checkouts.tt | 32 ++++++++++++-------
3 files changed, 44 insertions(+), 15 deletions(-)
--- a/circ/circulation.pl
+++ a/circ/circulation.pl
@@ -494,6 +494,19 @@ if ( $patron ) {
);
}
+ # Check the debt of this patrons guarantors *and* the guarantees of those guarantors
+ my $no_issues_charge_guarantors = C4::Context->preference("NoIssuesChargeGuarantorsWithGuarantees");
+ if ( $no_issues_charge_guarantors ) {
+ my $guarantors_non_issues_charges += $patron->relationships_debt({ include_guarantors => 1, only_this_guaranor => 0, include_this_patron => 1 });
+
+ if ( $guarantors_non_issues_charges > $no_issues_charge_guarantors ) {
+ $template->param(
+ charges_guarantors_guarantees => $guarantors_non_issues_charges
+ );
+ $noissues = 1 unless C4::Context->preference("allowfineoverride");
+ }
+ }
+
my $no_issues_charge_guarantees = C4::Context->preference("NoIssuesChargeGuarantees");
$no_issues_charge_guarantees = undef unless looks_like_number( $no_issues_charge_guarantees );
if ( defined $no_issues_charge_guarantees ) {
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt
+++ a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tt
@@ -770,14 +770,22 @@
Return claims: Patron has [% return_claims.count | html %] RETURN CLAIMS.
[% END %]
- [% IF ( charges ) %]
- [% INCLUDE 'blocked-fines.inc' fines = chargesamount %]
- [% END %]
[% IF age_limitations %]
[% INCLUDE 'category-out-of-age-limit.inc' %]
[% END %]
+ [% IF ( charges ) %]
+ [% INCLUDE 'blocked-fines.inc' fines = chargesamount %]
+ [% END %]
+ [% IF ( charges_guarantors_guarantees ) %]
+
+ Charges: Patron's guarantors and their other guarantees collectively owe [% charges_guarantors_guarantees | $Price %].
+ [% IF noissues %]
+ Checkouts are BLOCKED because fine balance is OVER THE LIMIT.
+ [% END %]
+
+ [% END %]
[% IF ( charges_guarantees ) %]
Charges: Patron's guarantees collectively owe [% chargesamount_guarantees | $Price %].
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation_batch_checkouts.tt
+++ a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation_batch_checkouts.tt
@@ -46,18 +46,26 @@
You are not allowed to use batch checkout for this patron
[% ELSIF patron and noissues and not checkout_infos %]
- Cannot check out!
- [% IF charges %]
- Checkouts are BLOCKED because fine balance is OVER THE LIMIT.
- [% END %]
- [% IF charges_guarantees %]
-
- Charges: Patron's guarantees collectively owe [% chargesamount_guarantees | $Price %].
-
-
- Checkouts are BLOCKED because fine balance is OVER THE LIMIT.
-
- [% END %]
+ Cannot check out!
+ [% IF ( charges ) %]
+ [% INCLUDE 'blocked-fines.inc' fines = chargesamount %]
+ [% END %]
+ [% IF ( charges_guarantors_guarantees ) %]
+
+ Charges: Patron's guarantors and their other guarantees collectively owe [% charges_guarantors_guarantees | $Price %].
+ [% IF noissues %]
+ Checkouts are BLOCKED because fine balance is OVER THE LIMIT.
+ [% END %]
+
+ [% END %]
+ [% IF ( charges_guarantees ) %]
+
+ Charges: Patron's guarantees collectively owe [% chargesamount_guarantees | $Price %].
+ [% IF noissues %]
+ Checkouts are BLOCKED because fine balance is OVER THE LIMIT.
+ [% END %]
+
+ [% END %]
[% ELSIF patron and not checkout_infos %]