@@ -, +, @@ checked out during placing hold --- .../prog/en/modules/reserve/request.tt | 28 ++++++++++++++++++---- reserve/request.pl | 16 +++++++++++++ 2 files changed, 39 insertions(+), 5 deletions(-) --- a/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tt @@ -98,7 +98,7 @@ function check() { } function checkMultiHold() { - var spans = $(".multi_hold_item"); + var spans = $(".multi_hold_item_checkbox:checked"); if ($(spans).size() == 0) { alert(MSG_NO_ITEMS_AVAILABLE); return false; @@ -291,6 +291,14 @@ function checkMultiHold() { [% ELSIF NOT noitems %] +[% IF ( checked_previously && !multi_hold ) %] +
+ +
+[% END %] + [% IF ( exceeded_maxreserves || exceeded_holds_per_record || alreadyreserved || none_available || alreadypossession || ageRestricted ) %]
@@ -630,6 +638,7 @@ function checkMultiHold() { + [% UNLESS ( item_level_itypes ) %] @@ -644,15 +653,17 @@ function checkMultiHold() { [% END %] + [% END %] + @@ -663,6 +674,9 @@ function checkMultiHold() { [% END %]
  TitleItem type
+ [% UNLESS ( biblioloo.warn ) %] + - [% UNLESS ( biblioloo.warn ) %] - - [% ELSE %] + [% IF ( biblioloo.warn ) %] [% END %] [% biblioloo.rank %] + [% IF ( biblioloo.checked_previously ) %] + Patron has previously checked out this title on [% biblioloo.checked_previously | $KohaDates %]
+ [% END %] [% IF ( biblioloo.alreadyres ) %]
    [% ELSE %] @@ -700,7 +714,11 @@ function checkMultiHold() { [% ELSIF ( none_available ) %] [% ELSE %] - + [% IF ( multi_hold ) %] + + [% ELSE %] + + [% END %] [% END %] [% END %] --- a/reserve/request.pl +++ a/reserve/request.pl @@ -196,6 +196,10 @@ my $patron = Koha::Patrons->find( $borrowernumber_hold ); my $logged_in_patron = Koha::Patrons->find( $borrowernumber ); +my $wants_check; +if ($logged_in_patron) { + $wants_check = $logged_in_patron->wants_check_for_previous_checkout; +} my $itemdata_enumchron = 0; my @biblioloop = (); foreach my $biblionumber (@biblionumbers) { @@ -353,6 +357,18 @@ foreach my $biblionumber (@biblionumbers) { foreach my $itemnumber ( @{ $itemnumbers_of_biblioitem{$biblioitemnumber} } ) { my $item = $iteminfos_of->{$itemnumber}; + if ( $logged_in_patron ) { + my $do_check = $logged_in_patron->do_check_for_previous_checkout($item) if $wants_check; + if ( $do_check && $wants_check ) { + $item->{checked_previously} = $do_check; + if ( $multihold ) { + $biblioloopiter{checked_previously} = $do_check; + } else { + $template->param( checked_previously => $do_check ); + } + } + + } $item->{force_hold_level} = $force_hold_level; unless (C4::Context->preference('item-level_itypes')) { --