Commit Graph

128 Commits

Author SHA1 Message Date
Adam Meehan
7500781887 added compile_set method to get expressions and combine date and datetime expressions to allow a date string to parse when type is datetime
made internal methods private
2008-07-23 12:39:20 +10:00
Adam Meehan
85ac2bfc69 changed method to check type and compose string for specific type to properly validate
refactored specs
2008-07-23 12:35:42 +10:00
Adam Meehan
2be6c639d6 changed 2008 to 2000 in effort to standard test date values 2008-07-22 18:57:45 +10:00
Adam Meehan
5885290304 added back Rails 2.1 check for time zone conversion attribute in define_attributes_methods and check for Rails 2.0 to return true if Time class column 2008-07-22 12:59:37 +10:00
Adam Meehan
28b44b4ca6 some docs tweaks and spec value changes 2008-07-22 11:47:17 +10:00
Adam Meehan
727f3dc8e3 added make_time method to do time object creation with correct timezone handling for Rails 2.1 and 2.0 2008-07-22 11:45:33 +10:00
Adam Meehan
a674089c00 return Date object for date type timeliness_date_time_parse method 2008-07-22 10:13:52 +10:00
Adam Meehan
800b187d08 added Date class define write method convert with parser
removed strict_time_type_cast method and use parse method directly
2008-07-22 10:11:27 +10:00
Adam Meehan
89f12b3a25 renamed extract method to parse and updated specs 2008-07-22 08:34:14 +10:00
Adam Meehan
3c9ad4a5ee added microseconds adjustment method and added proc_args 2008-07-21 16:50:08 +10:00
Adam Meehan
5e08a10fb0 renamed calls to timeliness_date_time_parse to parse_date_time which will correctly an overrided method 2008-07-21 13:48:25 +10:00
Adam Meehan
539f823b8b removed usless whitespace check in non-strict regexp match 2008-07-21 13:47:19 +10:00
Adam Meehan
4e8007bc65 added ignore_datetime_restriction_errors class option and docs
bit more for chronic parser
2008-07-21 13:02:21 +10:00
Adam Meehan
1836e4f6ca removed setting of time parts to 0 for date type in parse as any time parts should be valid as well
format proc now returns time array with nil values as 0
2008-07-21 10:31:06 +10:00
Adam Meehan
7a16d35e31 tweaked readme
changed mixed validation spec to datetime value out of Time range
2008-07-20 10:53:09 +10:00
Adam Meehan
9cf994564e fixed fallback for out of range dates which Rails does not handle automatically
aliased timeliness_date_time_parse to parse_date_time for nicer interface
2008-07-20 09:06:39 +10:00
Adam Meehan
70ba75a4ae added switching to euro date formats instead of US 2008-07-20 08:38:34 +10:00
Adam Meehan
5f55fad076 added :before option to add_formats to insert above existing format 2008-07-20 07:45:22 +10:00
Adam Meehan
05abd4e984 minor line shifts 2008-07-19 19:49:15 +10:00
Adam Meehan
5983622ac8 moved extact_date_time_values method in to Formats and added specs
changed Formats to a class
2008-07-19 19:47:03 +10:00
Adam Meehan
8ab82411ca added format add and remove methods
fixed slashes and 'd' token matching
specs for time and date format validation
2008-07-19 17:17:53 +10:00
Adam Meehan
ec46a3bd35 added specs for formats and more docs
renamed valid_time_formats etc to time_formats
2008-07-18 16:29:26 +10:00
Adam Meehan
e18d0ee9f4 moved tokens and proc arg map into class arrays 2008-07-18 11:27:32 +10:00
Adam Meehan
c9a3075c35 rewrote format regexp hash into time format to regexp generator 2008-07-18 08:05:21 +10:00
Adam Meehan
33c298163e moved format proc helper methods into formats module so they work 2008-07-17 16:25:54 +10:00
Adam Meehan
c37c3e82fa moved formats to own module 2008-07-17 15:08:33 +10:00
Adam Meehan
69ed88a086 moved formats to root module and retrieve from there in validations
added benchmarks for alternates
2008-07-17 15:00:18 +10:00
Adam Meehan
0dcc255901 changed parsing to use hash of regexp with optional processor blocks. Allows easy addition and removal of preffered formats 2008-07-17 14:29:59 +10:00
Adam Meehan
7cf8f2cbbc refactor parse to just a little simpler and a little more docs and cleanup 2008-07-17 06:43:03 +10:00
Adam Meehan
710ed92721 fixed matcher messages and refactored 2008-07-11 17:41:50 +10:00
Adam Meehan
1a0a35836f fixed dummy time and added spec 2008-07-11 17:41:07 +10:00
Adam Meehan
20ed2b1633 ignore time part for dates in validation 2008-07-11 17:23:37 +10:00
Adam Meehan
eafce02a73 renamed error message key 2008-07-11 16:37:37 +10:00
Adam Meehan
89d6d4ac14 doc tweak 2008-07-11 16:37:02 +10:00
Adam Meehan
899d420b59 renamed base to multiparameter attributes 2008-07-11 16:35:52 +10:00
Adam Meehan
c283d2eed9 rename base to multiparameter attributes 2008-07-11 16:31:19 +10:00
Adam Meehan
bac867cbbb added core extension files for adding to_dummy_time to Date, Time and DateTime classes 2008-07-08 10:44:01 +10:00
Adam Meehan
ef68b3d0f9 added type to parse method for dummy time check mainly
added default datetime type to call to parse from strict type cast
2008-07-08 10:42:02 +10:00
Adam Meehan
3c934efd0d added requires for core_ext files 2008-07-08 10:40:57 +10:00
Adam Meehan
8ac04e8610 doc rewording 2008-07-07 19:05:27 +10:00
Adam Meehan
228ab29b5f refactored conversion to remove Time class check which is done in type
cast method
2008-07-07 19:04:13 +10:00
Adam Meehan
caf92fba13 include matcher if test env 2008-07-07 19:03:45 +10:00
Adam Meehan
f40bf36bc9 allow for custom messages in error message checks 2008-07-07 15:23:44 +10:00
Adam Meehan
3f286b9aee refactored restrictions in method 2008-07-07 15:19:32 +10:00
Adam Meehan
bb0e64857a changed Dirty check to full name and changed docs 2008-07-07 15:18:30 +10:00
Adam Meehan
bf6aeea841 fixed struct problem 2008-07-07 15:11:00 +10:00
Adam Meehan
68463908be changed require and include for InstanceTag 2008-07-07 09:57:09 +10:00
Adam Meehan
5edfa5f2fc renamed module DateHelper to InstanceTag 2008-07-07 09:50:29 +10:00
Adam Meehan
6ffb7e5780 doc tweaks and minor stuff 2008-07-01 11:34:49 +10:00
Adam Meehan
67183eb69f changed strict_time_type_cast to use validation parse method to unify and allow pluggable parsers 2008-07-01 11:33:20 +10:00
Adam Meehan
d035de1d7c refactored restrictions validation into own method
added validates_*type methods for forcing the value type used when doing restriction validation
2008-07-01 11:31:17 +10:00
Adam Meehan
a27e4172a7 added check for already changed attribute
added some more documentation
2008-07-01 10:00:30 +10:00
Adam Meehan
6a6448130d added fall through for restriction to do parse value 2008-06-30 22:39:11 +10:00
Adam Meehan
a69e018992 added dirty attribute handling 2008-06-30 22:37:13 +10:00
Adam Meehan
39e16d2fde fixed error on database write with saving cached values for time attributes which have been converted 2008-06-30 16:30:13 +10:00
Adam Meehan
ed23c4a9a4 refactored to convert and cache user input value on write to distinguish from values in read raw from database which allows correct timezone conversion
added override for read_attribute to check for failed time type cast which should save nil value
2008-06-30 15:38:33 +10:00
Adam Meehan
ec12d60224 changed spec_helper rails version selection to use VERSION
added RAILS_VER constant for version checking
fixed rspec module include requirement for 1.1.4 in specs
2008-06-27 09:56:45 +10:00
Adam Meehan
8b6d6ec789 minor hash key change 2008-06-11 10:16:27 +10:00
Adam Meehan
685b0054fe set time zone aware attributes on in spec helper for AR 2008-05-22 07:35:01 +10:00
Adam Meehan
fb463ca7a0 fixed time object passed to strict_time_type_cast error 2008-05-21 17:03:19 +10:00
Adam Meehan
a9b033e539 added strict_time_type_cast method to handle casting
refactored to be simler and rely on read_atribute method conversion
rather than use new reader method definer got time (Rails 2.1)
2008-05-21 16:55:10 +10:00
Adam Meehan
d3b126729b modified conversion for rails <= 2.0.2 to be faster usign schema
conversion methods
2008-05-21 11:01:41 +10:00
Adam Meehan
7fadc2c164 tightened up specs for attribute methods 2008-05-21 10:02:13 +10:00
Adam Meehan
1269d794d0 added AR default error messages
split out parser into method to allow easy overriding
2008-05-20 17:12:38 +10:00
Adam Meehan
c6312329ec changed rails version detection to be tighter to avoid rails RC problem
added rspec on rails validate_timeliness_of matcher
2008-05-15 11:00:07 +10:00
Adam Meehan
b019f87625 reverted parser method as not working with raised exception 2008-05-14 09:42:34 +10:00
Adam Meehan
2284844426 added DateTimeInvalid class
rescue parse error only for DateTimeInvalid class
2008-05-14 09:35:12 +10:00
Adam Meehan
d22aa94b89 changed version check to Rails constant as AR VERSION not loaded by
default
changed time component validation to use dummy date parts to avoid pre
epoch issues
2008-05-14 08:54:50 +10:00
Adam Meehan
4ee24faad4 switched to using Rails::VERSION constant instead of AR which doesn't
seem to be available on rails boot
2008-05-05 09:41:16 +10:00
Adam Meehan
05a2d53b9a moved attribute methods modules into Old and New for rails versions 2008-05-05 09:11:43 +10:00
Adam Meehan
9a8a82c699 fixed restriction value conversion and added nil check 2008-05-03 18:12:51 +10:00
Adam Meehan
cae3d8cb84 added specs for validation 2008-05-03 15:52:40 +10:00
Adam Meehan
8751eddac6 adds module for rails 2.0.x to add reader method for date checking
includes right module based on AR version
better vendored rails check in spec_helper
2008-05-03 13:03:01 +10:00
Adam Meehan
3cf6e64747 fixed up AR 2.0.x timezone support 2008-05-03 08:44:41 +10:00
Adam Meehan
fe7310fc10 fixed read method to use value before type cast
added AR version checks in specs
include AR from vendor if in Rails app
2008-05-03 08:08:28 +10:00
Adam Meehan
8072fe733e set value nil if invalid 2008-05-02 19:07:48 +10:00
Adam Meehan
dff7900c4a check for Time object before validating 2008-05-02 17:14:48 +10:00
Adam Meehan
591ea3126b first commit 2008-05-02 16:42:51 +10:00