Mercurial > hg > soundsoftware-site
comparison lib/redmine/core_ext/active_record.rb @ 1295:622f24f53b42 redmine-2.3
Update to Redmine SVN revision 11972 on 2.3-stable branch
author | Chris Cannam |
---|---|
date | Fri, 14 Jun 2013 09:02:21 +0100 |
parents | 433d4f72a19b |
children | e248c7af89ec |
comparison
equal
deleted
inserted
replaced
1294:3e4c3460b6ca | 1295:622f24f53b42 |
---|---|
1 # Redmine - project management software | 1 # Redmine - project management software |
2 # Copyright (C) 2006-2012 Jean-Philippe Lang | 2 # Copyright (C) 2006-2013 Jean-Philippe Lang |
3 # | 3 # |
4 # This program is free software; you can redistribute it and/or | 4 # This program is free software; you can redistribute it and/or |
5 # modify it under the terms of the GNU General Public License | 5 # modify it under the terms of the GNU General Public License |
6 # as published by the Free Software Foundation; either version 2 | 6 # as published by the Free Software Foundation; either version 2 |
7 # of the License, or (at your option) any later version. | 7 # of the License, or (at your option) any later version. |
36 relation = except(:includes, :eager_load, :preload, :select).select("#{table_name}.id") | 36 relation = except(:includes, :eager_load, :preload, :select).select("#{table_name}.id") |
37 apply_join_dependency(relation, join_dependency) | 37 apply_join_dependency(relation, join_dependency) |
38 end | 38 end |
39 end | 39 end |
40 end | 40 end |
41 | |
42 class DateValidator < ActiveModel::EachValidator | |
43 def validate_each(record, attribute, value) | |
44 before_type_cast = record.attributes_before_type_cast[attribute.to_s] | |
45 if before_type_cast.is_a?(String) && before_type_cast.present? | |
46 # TODO: #*_date_before_type_cast returns a Mysql::Time with ruby1.8+mysql gem | |
47 unless before_type_cast =~ /\A\d{4}-\d{2}-\d{2}( 00:00:00)?\z/ && value | |
48 record.errors.add attribute, :not_a_date | |
49 end | |
50 end | |
51 end | |
52 end |