@@ -, +, @@
---
circ/circulation.pl | 3 +
.../prog/en/includes/patron_messages.inc | 57 +++++++++++++++++++
members/moremember.pl | 5 ++
3 files changed, 65 insertions(+)
--- a/circ/circulation.pl
+++ a/circ/circulation.pl
@@ -453,10 +453,13 @@ if ($patron) {
holds_count => $holds->count(),
WaitingHolds => $waiting_holds,
);
+
if ( C4::Context->preference('UseRecalls') ) {
+ my $waiting_recalls = $patron->recalls->search({ status => 'waiting' });
$template->param(
recalls => $patron->recalls->filter_by_current->search({},{ order_by => { -asc => 'created_date' } }),
specific_patron => 1,
+ waiting_recalls => $waiting_recalls,
);
}
}
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/patron_messages.inc
+++ a/koha-tmpl/intranet-tmpl/prog/en/includes/patron_messages.inc
@@ -129,6 +129,63 @@
[% END # /F ( has_modifications || warndeparture... %]
+[% IF waiting_recalls.count %]
+
+ [% SET waiting_here = 0 %]
+ [% SET waiting_elsewhere = 0 %]
+ [% FOREACH w IN waiting_recalls %]
+ [% IF ( w.pickup_library_id == Branches.GetLoggedInBranchcode() ) %]
+ [% waiting_here = waiting_here + 1 %]
+ [% ELSE %]
+ [% waiting_elsewhere = waiting_elsewhere + 1 %]
+ [% END %]
+ [% END %]
+
+ [% IF ( waiting_here > 0 ) %]
+
Recalls waiting here ([% waiting_here | html %])
+
+ [% FOREACH w IN waiting_recalls %]
+ [% IF ( w.pickup_library_id == Branches.GetLoggedInBranchcode() ) %]
+ -
+ [% w.biblio.title | html %]
+ ([% ItemTypes.GetDescription( w.item.effective_itemtype ) | html %]),
+ [% IF ( w.biblio.author ) %] by [% w.biblio.author | html %] [% END %]
+ [% IF ( w.item.itemcallnumber ) %] [[% w.item.itemcallnumber | html %]] [% END %]
+ Recall placed on [% w.created_date | $KohaDates %].
+
+
+ [% SET expires_on = w.expiration_date %]
+ Waiting here [% IF expires_on %] until [% expires_on | $KohaDates %] [% END %]
+
+
+ [% END %]
+ [% END %]
+
+ [% END %]
+
+ [% IF ( waiting_elsewhere > 0 ) %]
+
Recalls waiting at other libraries ([% waiting_elsewhere | html %])
+
+ [% FOREACH w IN waiting_recalls %]
+ [% IF ( w.pickup_library_id != Branches.GetLoggedInBranchcode() ) %]
+ -
+ [% w.biblio.title | html %]
+ ([% ItemTypes.GetDescription( w.item.effective_itemtype ) | html %]),
+ [% IF ( w.biblio.author ) %] by [% w.biblio.author | html %] [% END %]
+ [% IF ( w.item.itemcallnumber ) %] [[% w.item.itemcallnumber | html %]] [% END %]
+ Recall placed on [% w.created_date | $KohaDates %].
+
+
+ [% SET expires_on = w.expiration_date %]
+ Waiting at [% Branches.GetName( w.pickup_library_id ) | html %] [% IF expires_on %] until [% expires_on | $KohaDates %] [% END %]
+
+
+ [% END %]
+ [% END %]
+
+ [% END %]
+
+[% END # /IF waiting_recalls.count %]
[% IF WaitingHolds.count %]
--- a/members/moremember.pl
+++ a/members/moremember.pl
@@ -199,6 +199,11 @@ $template->param(
WaitingHolds => $waiting_holds,
);
+if ( C4::Context->preference('UseRecalls') ) {
+ my $waiting_recalls = $patron->recalls->search({ status => 'waiting' });
+ $template->param( waiting_recalls => $waiting_recalls );
+}
+
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 ) {
--