From b10ef9005d1e9edef70cb6b2559e3c5ea4816418 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Tue, 6 Jan 2015 14:27:17 +0100 Subject: [PATCH] Bug 11120: the date input should be in a iso format (YYYY-MM-DD) Note that it cans also accept a date in the same format defined in the dateformat system preference. Signed-off-by: Brendan Gallagher Signed-off-by: Tomas Cohen Arazi (cherry picked from commit 39bb5fd43f5947f3a6ad1630eb8987d9522955cf) Signed-off-by: Chris Cormack --- misc/cronjobs/overdue_notices.pl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/misc/cronjobs/overdue_notices.pl b/misc/cronjobs/overdue_notices.pl index c9c2d69db0..e46b3f039d 100755 --- a/misc/cronjobs/overdue_notices.pl +++ b/misc/cronjobs/overdue_notices.pl @@ -360,13 +360,15 @@ if (@branchcodes) { my $date_to_run; my $date; if ( $date_input ){ - $date = $dbh->quote($date); eval { - $date_to_run = dt_from_string( $date_input ); + $date_to_run = dt_from_string( $date_input, 'iso' ); }; die "$date_input is not a valid date, aborting! Use a date in format YYYY-MM-DD." if $@ or not $date_to_run; + # It's certainly useless to escape $date_input + # dt_from_string should not return something if $date_input is not correctly set. + $date = $dbh->quote( $date_input ); } else { $date="NOW()"; -- 2.39.5