TPAC: Invalid due dates cause 500 server error
authorDan Scott <dan@coffeecode.net>
Mon, 8 Oct 2012 15:25:41 +0000 (11:25 -0400)
committerDan Scott <dscott@laurentian.ca>
Tue, 9 Oct 2012 02:05:10 +0000 (22:05 -0400)
commit83216f38b8500eba307a3aa49dce7b56b565bbfe
treebc63647ccf67a3b345238e1f65cb9f4604af6441
parent07a62b1fc0cbfcde798298ae2d4029b3b2375dce
TPAC: Invalid due dates cause 500 server error

CStore appears to return dates with leading 0s (such as '0212-10-08
23:59:59-05:17:32') with the leading 0s stripped off, resulting in
cases with 1-digit or 3-digit years for which DateTime::Format::ISO8601
returns an error.

We can protect against this problem by adding some defensive code to the
TPAC utility method to add the 0s back to the start of the year. We can
also log the problem when it occurs so that administrators can fix the
problem dates in the database.

Signed-off-by: Dan Scott <dan@coffeecode.net>
Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Util.pm