More accurate date validation.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@6265 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang
2011-07-11 14:36:43 +00:00
parent 308a922d80
commit 6c5b29bb68
2 changed files with 9 additions and 1 deletions
+1 -1
View File
@@ -179,7 +179,7 @@ class Query < ActiveRecord::Base
when :date, :date_past
case operator_for(field)
when "=", ">=", "<=", "><"
errors.add(label_for(field), :invalid) if values_for(field).detect {|v| v.present? && !v.match(/^\d{4}-\d{2}-\d{2}$/) }
errors.add(label_for(field), :invalid) if values_for(field).detect {|v| v.present? && (!v.match(/^\d{4}-\d{2}-\d{2}$/) || (Date.parse(v) rescue nil).nil?) }
when ">t-", "<t-", "t-"
errors.add(label_for(field), :invalid) if values_for(field).detect {|v| v.present? && !v.match(/^\d+$/) }
end