|
Lines 1540-1589
Get loan length for an itemtype, a borrower type and a branch
Link Here
|
| 1540 |
sub GetLoanLength { |
1540 |
sub GetLoanLength { |
| 1541 |
my ( $categorycode, $itemtype, $branchcode ) = @_; |
1541 |
my ( $categorycode, $itemtype, $branchcode ) = @_; |
| 1542 |
|
1542 |
|
| 1543 |
# Set search precedences |
|
|
| 1544 |
my @params = ( |
| 1545 |
{ |
| 1546 |
categorycode => $categorycode, |
| 1547 |
itemtype => $itemtype, |
| 1548 |
branchcode => $branchcode, |
| 1549 |
}, |
| 1550 |
{ |
| 1551 |
categorycode => $categorycode, |
| 1552 |
itemtype => undef, |
| 1553 |
branchcode => $branchcode, |
| 1554 |
}, |
| 1555 |
{ |
| 1556 |
categorycode => undef, |
| 1557 |
itemtype => $itemtype, |
| 1558 |
branchcode => $branchcode, |
| 1559 |
}, |
| 1560 |
{ |
| 1561 |
categorycode => undef, |
| 1562 |
itemtype => undef, |
| 1563 |
branchcode => $branchcode, |
| 1564 |
}, |
| 1565 |
{ |
| 1566 |
categorycode => $categorycode, |
| 1567 |
itemtype => $itemtype, |
| 1568 |
branchcode => undef, |
| 1569 |
}, |
| 1570 |
{ |
| 1571 |
categorycode => $categorycode, |
| 1572 |
itemtype => undef, |
| 1573 |
branchcode => undef, |
| 1574 |
}, |
| 1575 |
{ |
| 1576 |
categorycode => undef, |
| 1577 |
itemtype => $itemtype, |
| 1578 |
branchcode => undef, |
| 1579 |
}, |
| 1580 |
{ |
| 1581 |
categorycode => undef, |
| 1582 |
itemtype => undef, |
| 1583 |
branchcode => undef, |
| 1584 |
}, |
| 1585 |
); |
| 1586 |
|
| 1587 |
# Initialize default values |
1543 |
# Initialize default values |
| 1588 |
my $rules = { |
1544 |
my $rules = { |
| 1589 |
issuelength => 0, |
1545 |
issuelength => 0, |
|
Lines 1591-1611
sub GetLoanLength {
Link Here
|
| 1591 |
lengthunit => 'days', |
1547 |
lengthunit => 'days', |
| 1592 |
}; |
1548 |
}; |
| 1593 |
|
1549 |
|
| 1594 |
# Search for rules! |
1550 |
my $found = Koha::CirculationRules->get_effective_rules( { |
| 1595 |
foreach my $rule_name (qw( issuelength renewalperiod lengthunit )) { |
1551 |
branchcode => $branchcode, |
| 1596 |
foreach my $params (@params) { |
1552 |
categorycode => $categorycode, |
| 1597 |
my $rule = Koha::CirculationRules->search( |
1553 |
itemtype => $itemtype, |
| 1598 |
{ |
1554 |
rules => [ |
| 1599 |
rule_name => $rule_name, |
1555 |
'issuelength', |
| 1600 |
%$params, |
1556 |
'renewalperiod', |
| 1601 |
} |
1557 |
'lengthunit' |
| 1602 |
)->next(); |
1558 |
], |
|
|
1559 |
} ); |
| 1603 |
|
1560 |
|
| 1604 |
if ($rule) { |
1561 |
# Search for rules! |
| 1605 |
$rules->{$rule_name} = $rule->rule_value; |
1562 |
foreach my $rule_name (keys %$found) { |
| 1606 |
last; |
1563 |
$rules->{$rule_name} = $found->{$rule_name}; |
| 1607 |
} |
|
|
| 1608 |
} |
| 1609 |
} |
1564 |
} |
| 1610 |
|
1565 |
|
| 1611 |
return $rules; |
1566 |
return $rules; |
| 1612 |
- |
|
|