=head1 FUNCTIONS
-=over 2
-
-=item Getoverdues
+=head2 Getoverdues
$overdues = Getoverdues( { minimumdays => 1, maximumdays => 30 } );
return ( $count, \@overdueitems );
}
-=item CalcFine
+=head2 CalcFine
($amount, $chargename, $daycount, $daycounttotal) =
&CalcFine($item, $categorycode, $branch, $days_overdue, $description, $start_date, $end_date );
} else {
# a zero (or null) chargeperiod means no charge.
}
+ $amount = C4::Context->preference('maxFine') if(C4::Context->preference('maxFine') && ( $amount > C4::Context->preference('maxFine')));
return ( $amount, $data->{'chargename'}, $days_minus_grace, $daystocharge);
}
-=item GetSpecialHolidays
+=head2 GetSpecialHolidays
&GetSpecialHolidays($date_dues,$itemnumber);
return $specialdaycount;
}
-=item GetRepeatableHolidays
+=head2 GetRepeatableHolidays
&GetRepeatableHolidays($date_dues, $itemnumber, $difference,);
}
-=item GetWayFromItemnumber
+=head2 GetWayFromItemnumber
&Getwdayfromitemnumber($itemnumber);
}
-=item GetIssuesIteminfo
+=head2 GetIssuesIteminfo
&GetIssuesIteminfo($itemnumber);
}
-=item UpdateFine
+=head2 UpdateFine
&UpdateFine($itemnumber, $borrowernumber, $amount, $type, $description);
if ( my $data = $sth->fetchrow_hashref ) {
- # we're updating an existing fine.
+ # we're updating an existing fine. Only modify if we're adding to the charge.
+ # Note that in the current implementation, you cannot pay against an accruing fine
+ # (i.e. , of accounttype 'FU'). Doing so will break accrual.
if ( $data->{'amount'} != $amount ) {
my $diff = $amount - $data->{'amount'};
+ $diff = 0 if ( $data->{amount} > $amount);
my $out = $data->{'amountoutstanding'} + $diff;
my $query = "
UPDATE accountlines
) if C4::Context->preference("FinesLog");
}
-=item BorType
+=head2 BorType
$borrower = &BorType($borrowernumber);
return ($data);
}
-=item ReplacementCost
+=head2 ReplacementCost
$cost = &ReplacementCost($itemnumber);
return ( $data->{'replacementprice'} );
}
-=item GetFine
+=head2 GetFine
$data->{'sum(amountoutstanding)'} = &GetFine($itemnum,$borrowernumber);
}
-=item GetIssuingRules
+=head2 GetIssuingRules
FIXME - This sub should be deprecated and removed.
It ignores branch and defaults.
}
-=item GetNextIdNotify
+=head2 GetNextIdNotify
($result) = &GetNextIdNotify($reference);
}
-=item NumberNotifyId
+=head2 NumberNotifyId
(@notify) = &NumberNotifyId($borrowernumber);
}
-=item AmountNotify
+=head2 AmountNotify
($totalnotify) = &AmountNotify($notifyid);
}
-=item GetNotifyId
+=head2 GetNotifyId
($notify_id) = &GetNotifyId($borrowernumber,$itemnumber);
}
-=item CreateItemAccountLine
+=head2 CreateItemAccountLine
() = &CreateItemAccountLine($borrowernumber,$itemnumber,$date,$amount,$description,$accounttype,$amountoutstanding,$timestamp,$notify_id,$level);
$sth->finish;
}
-=item UpdateAccountLines
+=head2 UpdateAccountLines
() = &UpdateAccountLines($notify_id,$notify_level,$borrowernumber,$itemnumber);
}
-=item GetItems
+=head2 GetItems
($items) = &GetItems($itemnumber);
return($items);
}
-=item GetOverdueDelays
+=head2 GetOverdueDelays
(@delays) = &GetOverdueDelays($categorycode);
sub GetBranchcodesWithOverdueRules {
my $dbh = C4::Context->dbh;
- my $rqoverduebranches = $dbh->prepare("SELECT DISTINCT branchcode FROM overduerules WHERE delay1 IS NOT NULL");
+ my $rqoverduebranches = $dbh->prepare("SELECT DISTINCT branchcode FROM overduerules WHERE delay1 IS NOT NULL AND branchcode <> ''");
$rqoverduebranches->execute;
my @branches = map { shift @$_ } @{ $rqoverduebranches->fetchall_arrayref };
$rqoverduebranches->finish;
return @branches;
}
-=item CheckAccountLineLevelInfo
+=head2 CheckAccountLineLevelInfo
($exist) = &CheckAccountLineLevelInfo($borrowernumber,$itemnumber,$accounttype,notify_level);
return($exist);
}
-=item GetOverduerules
+=head2 GetOverduerules
($overduerules) = &GetOverduerules($categorycode);
C<$category> contains the borrower categorycode
C<$notify_level> contains the notify level
-=cut
+=cut
sub GetOverduerules{
my($category,$notify_level) = @_;
}
-=item CheckBorrowerDebarred
+=head2 CheckBorrowerDebarred
($debarredstatus) = &CheckBorrowerDebarred($borrowernumber);
}
}
-=item UpdateBorrowerDebarred
+=head2 UpdateBorrowerDebarred
($borrowerstatut) = &UpdateBorrowerDebarred($borrowernumber);
return 1;
}
-=item CheckExistantNotifyid
+=head2 CheckExistantNotifyid
($exist) = &CheckExistantNotifyid($borrowernumber,$itemnumber,$accounttype,$notify_id);
}
}
-=item CheckAccountLineItemInfo
+=head2 CheckAccountLineItemInfo
($exist) = &CheckAccountLineItemInfo($borrowernumber,$itemnumber,$accounttype,$notify_id);
1;
__END__
-=back
-
=head1 AUTHOR
Koha Developement team <info@koha.org>