Bug 10664: fix error in overdue_notices.pl if there is no active currency

If there is no active currency, when running overdue_notices.pl
you get a sofware error "Can't use an undefined value as a HASH
reference" on GetCurrency() function call.

With this patch, if there is no active currency, fines are formated
by default 0.00 and notices are correctly generated.

Test plan :
- have at least one borrower with overdue that should trigger a notice
- verify that there is no active currency (Adminitration > Currency &
  Exchange rates)
- run misc/cronjobs/overdue_notices.pl -v -n (to get the notice directly
  on output)

=> without the patch you get the software error
=> with the patch, notices are correctly generated

If an active currency is defined, the script overdue_notices.pl runs
the same with or without patch

Signed-off-by: Srdjan <srdjan@catalyst.net.nz>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
This commit is contained in:
Sophie Meynieux 2013-07-31 08:04:25 +02:00 committed by Galen Charlton
parent 0648d2883d
commit a9a3bb7b3d

View file

@ -688,7 +688,8 @@ sub parse_letter {
$tables{'branches'} = $p;
}
my $currency_format = GetCurrency()->{currency};
my $currencies = GetCurrency();
my $currency_format = $currencies->{currency} if defined($currencies);
my @item_tables;
if ( my $i = $params->{'items'} ) {