silverstripe-framework/tests/php
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
..
Control API Replace SS_HOST with SS_BASE_URL 2017-04-20 22:28:57 +12:00
Core Remove TestListener and rely on PHPUnits APIs 2017-03-30 11:46:58 +13:00
Dev Remove TestListener and rely on PHPUnits APIs 2017-03-30 11:46:58 +13:00
Forms Fixed timezone and normalised ISO handling 2017-04-26 22:55:29 +12:00
i18n API Enable namespaced-localisation keys in templates 2017-04-11 18:07:53 +12:00
ORM Fix tests related to date time 2017-04-26 22:45:07 +12:00
Security Use Config for authenticator settings 2017-04-22 14:48:56 +12:00
View Remove TestListener and rely on PHPUnits APIs 2017-03-30 11:46:58 +13:00