The script tries to parse the patron expiration date without
checking that it is a valid date. If expiration date is empty
it doesn't get caught along with past expiration dates.
I wonder if this line was supposed to catch this problem:
Line 233: if ( $warning_year*$warning_month*$warning_day==0
This patch adds "!$borrower->{'dateexpiry'} ||" to that line.
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
0 , $borrower->{'enrolmentperiod'});
}
# if the expiry date is before today ie they have expired
- if ( $warning_year*$warning_month*$warning_day==0
+ if ( !$borrower->{'dateexpiry'} || $warning_year*$warning_month*$warning_day==0
|| Date_to_Days($today_year, $today_month, $today_day )
> Date_to_Days($warning_year, $warning_month, $warning_day) )
{
$template->param(
flagged => "1",
noissues => "1",
- expired => format_date($borrower->{dateexpiry}),
+ expired => "1",
renewaldate => format_date("$renew_year-$renew_month-$renew_day")
);
}
[% IF ( expired ) %]
<li><span class="circ-hlt">Expiration:</span> Patron's card has expired.
- Patron's card expired on [% expiry %] <a href="/cgi-bin/koha/members/setstatus.pl?borrowernumber=[% borrowernumber %]&cardnumber=[% cardnumber %]&destination=circ&reregistration=y">Renew</a> or <a href="/cgi-bin/koha/members/memberentry.pl?op=modify&destination=circ&borrowernumber=[% borrowernumber %]&categorycode=[% categorycode %]">Edit Details</a>
+ [% IF ( expiry ) %]Patron's card expired on [% expiry %][% END %] <a href="/cgi-bin/koha/members/setstatus.pl?borrowernumber=[% borrowernumber %]&cardnumber=[% cardnumber %]&destination=circ&reregistration=y">Renew</a> or <a href="/cgi-bin/koha/members/memberentry.pl?op=modify&destination=circ&borrowernumber=[% borrowernumber %]&categorycode=[% categorycode %]">Edit Details</a>
</li>
[% END %]