Ingo Schommer
daed727acc
Fixed form schema validation
2017-04-28 08:30:59 +12:00
Ingo Schommer
60706c8efd
Store $value in ISO and server timezone consistently, fix min/max timezone handling
2017-04-27 14:59:11 +12:00
Ingo Schommer
9b41350f64
More min/max setter tests
2017-04-27 11:53:34 +12:00
Ingo Schommer
958736502a
Removed “T” str_replace, more comments
2017-04-27 10:32:22 +12:00
Ingo Schommer
a73abbfcb8
unit test cleanup
2017-04-27 09:18:38 +12:00
Ingo Schommer
1ec2abe75f
Fixed timezone and normalised ISO handling
...
A few observations:
- ISO says “T” is optional (https://en.wikipedia.org/wiki/ISO_8601#cite_note-21 ),
- WHATWG says in the HTML5 spec that it’s optional (https://html.spec.whatwg.org/multipage/infrastructure.html#local-dates-and-times )
- W3C says it’s reqiured in 1997 (https://www.w3.org/TR/NOTE-datetime ), but then later says it’s optional in its HTML5 spec (https://www.w3.org/TR/html5/infrastructure.html#floating-dates-and-times ).
- Chrome doesn’t parse values with whitespace separators (requires "T")
- DataObject DBDatetime values and database columns use whitespace separators (and will have many devs relying on this format)
- MySQL only supports whitespace separators (https://dev.mysql.com/doc/refman/5.7/en/datetime.html )
- SQLite can parse both ways (https://sqlite.org/lang_datefunc.html )
So the goal here is to retain ORM/database compatibility with 3.x (whitespace separator),
while exposing "T" separators to the browser in HTML5 mode.
Regarding timezones, this fixes a regression where setValue() would not actually
apply the timezone (last $value assignment is ineffective now that sub fields are removed).
2017-04-26 22:55:29 +12:00
Ingo Schommer
a279d00e81
Min/max validations
2017-04-26 22:45:12 +12:00
Ingo Schommer
e97783b057
Better second handling
2017-04-26 22:45:08 +12:00
Saophalkun Ponlu
dba1f61f13
Fix tests related to date time
2017-04-26 22:45:07 +12:00
Ingo Schommer
a70de91b33
Fix DatetimeFieldTest
2017-04-03 19:35:40 +12:00
Ingo Schommer
3b94d14e42
MERGE
2017-04-03 12:11:21 +12:00
Daniel Hensby
0410b4c35e
Respect PHPUnit method visibility
2017-03-24 16:23:03 +13:00
Damian Mooyman
014f0d23ed
API Create SeparatedDateField
...
API Restrict allowed values parsed via DBDate::setValue
API Remove NumericField_Readonly
API Remove DBTime::Nice12 / Nice24
2017-02-15 11:07:58 +13:00
Damian Mooyman
029a8b9586
API Substitute Zend_Currency with NumberFormatter based solution
...
API Substitute Zend_Locale with Locale / NumberFormatter
API Substitute Zend_Date with IntlDateFormatter
API Added DBTIme::Nice12, FormatFromSettings
API Added Short() method to DBDate / DBTime / DBDatetime
API Add Date::getTimestamp()
API Added setSubmittedValue api for FormField
API Add second arg to base FormField::setValue()
API Major refactor of i18n into component data parts
API Implement Resettable interface to reset objects between tests
ENHANCEMENT Changed DBField::create_field return type to `static` to support better type hinting
ENHANCEMENT i18nTextCollector supports __CLASS__
2017-02-09 15:28:59 +13:00
Damian Mooyman
c2a1e86f5d
Apply PSR2 / Namespace to remaining admin / tests
2016-12-19 16:08:19 +13:00
Damian Mooyman
6e8304ff2f
API Namespace framework tests
2016-11-23 19:25:12 +13:00
Damian Mooyman
789cb5b465
Move files to psr-2 standard locations
2016-11-23 19:25:12 +13:00