View | Details | Raw Unified | Return to bug 16787
Collapse All | Expand All

(-)a/C4/Reserves.pm (+3 lines)
Lines 421-426 sub CanItemBeReserved { Link Here
421
    }
421
    }
422
422
423
    # we check if it's ok or not
423
    # we check if it's ok or not
424
    if( $allowedreserves == 0 ){
425
        return 'noReservesAllowed';
426
    }
424
    if ( $reservecount >= $allowedreserves ) {
427
    if ( $reservecount >= $allowedreserves ) {
425
        return { status => 'tooManyReserves', limit => $allowedreserves };
428
        return { status => 'tooManyReserves', limit => $allowedreserves };
426
    }
429
    }
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tt (-1 / +6 lines)
Lines 108-114 Link Here
108
    [% UNLESS ( multi_hold ) %]
108
    [% UNLESS ( multi_hold ) %]
109
      <h3>Cannot place hold</h3>
109
      <h3>Cannot place hold</h3>
110
      <ul>
110
      <ul>
111
        [% IF ( exceeded_maxreserves ) %]
111
        [% IF ( no_reserves_allowed) %]
112
          <li><strong>No holds allowed: </strong> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% patron.borrowernumber | uri %]">[% patron.firstname | html %] [% patron.surname | html %] </a> cannot place any holds on these items.</li>
113
        [% ELSIF ( exceeded_maxreserves ) %]
112
          <li><strong>Too many holds: </strong> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% patron.borrowernumber | uri %]">[% patron.firstname | html %] [% patron.surname | html %] </a> can only place a maximum of [% maxreserves | html %] total holds.</li>
114
          <li><strong>Too many holds: </strong> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% patron.borrowernumber | uri %]">[% patron.firstname | html %] [% patron.surname | html %] </a> can only place a maximum of [% maxreserves | html %] total holds.</li>
113
        [% ELSIF ( exceeded_holds_per_record ) %]
115
        [% ELSIF ( exceeded_holds_per_record ) %]
114
          <li><strong>Too many holds for this record: </strong> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% patron.borrowernumber | uri %]">[% patron.firstname | html %] [% patron.surname | html %] </a> can only place a maximum of [% max_holds_for_record | html %] hold(s) on this record.</li>
116
          <li><strong>Too many holds for this record: </strong> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% patron.borrowernumber | uri %]">[% patron.firstname | html %] [% patron.surname | html %] </a> can only place a maximum of [% max_holds_for_record | html %] hold(s) on this record.</li>
Lines 126-131 Link Here
126
      </ul>
128
      </ul>
127
    [% ELSE %]
129
    [% ELSE %]
128
        <h3>Cannot place hold on some items</h3>
130
        <h3>Cannot place hold on some items</h3>
131
        [% IF ( no_reserves_allowed) %]
132
          <li><strong>No holds allowed: </strong> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% borrowernumber %]">[% borrowerfirstname %] [% borrowersurname %] </a> cannot place holds on some of these title's items.</li>
133
        [% END %]
129
        [% IF ( exceeded_maxreserves ) %]
134
        [% IF ( exceeded_maxreserves ) %]
130
          <li><strong>Too many holds: </strong> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% patron.borrowernumber | uri %]">[% patron.firstname | html %] [% patron.surname | html %] </a> can place [% new_reserves_allowed | html %] of the requested [% new_reserves_count | html %] holds for a maximum of [% maxreserves | html %] total holds.</li>
135
          <li><strong>Too many holds: </strong> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% patron.borrowernumber | uri %]">[% patron.firstname | html %] [% patron.surname | html %] </a> can place [% new_reserves_allowed | html %] of the requested [% new_reserves_count | html %] holds for a maximum of [% maxreserves | html %] total holds.</li>
131
        [% ELSIF ( exceeded_holds_per_record ) %]
136
        [% ELSIF ( exceeded_holds_per_record ) %]
(-)a/reserve/request.pl (-2 / +8 lines)
Lines 162-167 if ($borrowernumber_hold && !$action) { Link Here
162
    my $new_reserves_count = scalar( @biblionumbers );
162
    my $new_reserves_count = scalar( @biblionumbers );
163
163
164
    my $maxreserves = C4::Context->preference('maxreserves');
164
    my $maxreserves = C4::Context->preference('maxreserves');
165
    $template->param( maxreserves => $maxreserves );
166
165
    if ( $maxreserves
167
    if ( $maxreserves
166
        && ( $reserves_count + $new_reserves_count > $maxreserves ) )
168
        && ( $reserves_count + $new_reserves_count > $maxreserves ) )
167
    {
169
    {
Lines 217-222 if ($patron) { Link Here
217
my $itemdata_enumchron = 0;
219
my $itemdata_enumchron = 0;
218
my $itemdata_ccode = 0;
220
my $itemdata_ccode = 0;
219
my @biblioloop = ();
221
my @biblioloop = ();
222
my $no_reserves_allowed = 0;
220
foreach my $biblionumber (@biblionumbers) {
223
foreach my $biblionumber (@biblionumbers) {
221
    next unless $biblionumber =~ m|^\d+$|;
224
    next unless $biblionumber =~ m|^\d+$|;
222
225
Lines 232-238 foreach my $biblionumber (@biblionumbers) { Link Here
232
235
233
                #All is OK and we can continue
236
                #All is OK and we can continue
234
            }
237
            }
235
            elsif ( $canReserve->{status} eq 'tooManyReserves' ) {
238
            elsif ( $canReserve eq 'noReservesAllowed') {
239
                $no_reserves_allowed = 1;
240
            }
241
            elsif ( $canReserve eq 'tooManyReserves' ) {
236
                $exceeded_maxreserves = 1;
242
                $exceeded_maxreserves = 1;
237
                $template->param( maxreserves => $canReserve->{limit} );
243
                $template->param( maxreserves => $canReserve->{limit} );
238
            }
244
            }
Lines 662-667 foreach my $biblionumber (@biblionumbers) { Link Here
662
668
663
$template->param( biblioloop => \@biblioloop );
669
$template->param( biblioloop => \@biblioloop );
664
$template->param( biblionumbers => $biblionumbers );
670
$template->param( biblionumbers => $biblionumbers );
671
$template->param( no_reserves_allowed => $no_reserves_allowed );
665
$template->param( exceeded_maxreserves => $exceeded_maxreserves );
672
$template->param( exceeded_maxreserves => $exceeded_maxreserves );
666
$template->param( exceeded_holds_per_record => $exceeded_holds_per_record );
673
$template->param( exceeded_holds_per_record => $exceeded_holds_per_record );
667
$template->param( subscriptionsnumber => CountSubscriptionFromBiblionumber($biblionumber));
674
$template->param( subscriptionsnumber => CountSubscriptionFromBiblionumber($biblionumber));
668
- 

Return to bug 16787