Lines 300-305
sub CanItemBeReserved {
Link Here
|
300 |
my $ruleitemtype; # itemtype of the matching issuing rule |
300 |
my $ruleitemtype; # itemtype of the matching issuing rule |
301 |
my $allowedreserves = 0; # Total number of holds allowed across all records |
301 |
my $allowedreserves = 0; # Total number of holds allowed across all records |
302 |
my $holds_per_record = 1; # Total number of holds allowed for this one given record |
302 |
my $holds_per_record = 1; # Total number of holds allowed for this one given record |
|
|
303 |
my $holds_per_day = 0; # Total number of holds allowed per day for the given patron |
303 |
|
304 |
|
304 |
# we retrieve borrowers and items informations # |
305 |
# we retrieve borrowers and items informations # |
305 |
# item->{itype} will come for biblioitems if necessery |
306 |
# item->{itype} will come for biblioitems if necessery |
Lines 350-355
sub CanItemBeReserved {
Link Here
|
350 |
$ruleitemtype = $rights->{itemtype}; |
351 |
$ruleitemtype = $rights->{itemtype}; |
351 |
$allowedreserves = $rights->{reservesallowed}; |
352 |
$allowedreserves = $rights->{reservesallowed}; |
352 |
$holds_per_record = $rights->{holds_per_record}; |
353 |
$holds_per_record = $rights->{holds_per_record}; |
|
|
354 |
$holds_per_day = $rights->{holds_per_day}; |
353 |
} |
355 |
} |
354 |
else { |
356 |
else { |
355 |
$ruleitemtype = '*'; |
357 |
$ruleitemtype = '*'; |
Lines 367-372
sub CanItemBeReserved {
Link Here
|
367 |
return "tooManyHoldsForThisRecord"; |
369 |
return "tooManyHoldsForThisRecord"; |
368 |
} |
370 |
} |
369 |
|
371 |
|
|
|
372 |
my $today_holds = Koha::Holds->search({ |
373 |
borrowernumber => $borrowernumber, |
374 |
reservedate => dt_from_string->date |
375 |
}); |
376 |
|
377 |
if ( defined $holds_per_day && |
378 |
( ( $holds_per_day > 0 && $today_holds->count() >= $holds_per_day ) |
379 |
or ( $holds_per_day == 0 ) ) |
380 |
) { |
381 |
return "tooManyReservesToday"; |
382 |
} |
383 |
|
370 |
# we retrieve count |
384 |
# we retrieve count |
371 |
|
385 |
|
372 |
$querycount .= "AND $branchfield = ?"; |
386 |
$querycount .= "AND $branchfield = ?"; |
Lines 2068-2074
sub GetHoldRule {
Link Here
|
2068 |
|
2082 |
|
2069 |
my $sth = $dbh->prepare( |
2083 |
my $sth = $dbh->prepare( |
2070 |
q{ |
2084 |
q{ |
2071 |
SELECT categorycode, itemtype, branchcode, reservesallowed, holds_per_record |
2085 |
SELECT categorycode, itemtype, branchcode, reservesallowed, holds_per_record, holds_per_day |
2072 |
FROM issuingrules |
2086 |
FROM issuingrules |
2073 |
WHERE (categorycode in (?,'*') ) |
2087 |
WHERE (categorycode in (?,'*') ) |
2074 |
AND (itemtype IN (?,'*')) |
2088 |
AND (itemtype IN (?,'*')) |
2075 |
- |
|
|