As I am in process of creating a PR for using Date type Data Base column for type_date custom profile filed, I was directed to put this RFC so we can discuss it.
State now:
Custom profile field type date uses for storage Varchar with length of 10 characters DB column. This allows board to record the date field in format DD-MM-YYY ( 1- 1-2014), where the leading zero to day and moth are skipped.
Custom Profile Field is validated using check for valid day, valid month and valid year, where valid year is every year after 1901.
Change:
I propose migrating to Data Base storage type Date for the custom profile fields (and user_birthday). This will not effect timestamp fields.
Why change:
As this is date, migrating to date type storage will give ability to search and filter users by date or period of time.
Proposed additional changes:
As the date type storage is with fixed length (no min and no max too). These custom profile filed values can be used as a way to control parser.
- Allow entering dates without a year
Allow admin the ability to require entering of year.
Allow the filed in profile and miniprofile to show period elapsed in d/m/y
Work Done:
1. Date type fields work with Date type date base column type.
2. "Always show now:" option work.
3. Date functional tests work with the new date string format.
PR:
https://github.com/phpbb/phpbb/pull/2689