bigfork / silverstripe-simpledatefield
A SilverStripe form field for entering dates based on the UK Government’s date input pattern
Installs: 5 835
Dependents: 1
Suggesters: 0
Security: 0
Stars: 2
Watchers: 4
Forks: 0
Open Issues: 2
Type:silverstripe-vendormodule
Requires
- ext-intl: *
- silverstripe/framework: ^4 || ^5
This package is auto-updated.
Last update: 2024-10-27 21:44:53 UTC
README
A form field for entering dates based on the GOV.UK Design System’s date input pattern, which uses three separate inputs for day, month, and year.
Usage
SimpleDateField::create('DateOfBirth', 'Date of birth'); // Or to offer the inputs in a different order SimpleDateField::create('DateOfBirth', 'Date of birth', null, SimpleDateField::YMD); SimpleDateField::create('DateOfBirth', 'Date of birth', null, SimpleDateField::MDY);
If you choose to manually pass a date to the $value
argument, it must be in the ISO 6801 date format (YYYY-MM-DD).
Date of birth
If using this field to allow users to enter their date of birth, it’s recommended to add relevant autocomplete
attributes to assist this.
$field = SimpleDateField::create('DateOfBirth', 'Date of birth'); $field->getDayField()->setAttribute('autocomplete', 'bday-day'); $field->getMonthField()->setAttribute('autocomplete', 'bday-month'); $field->getYearField()->setAttribute('autocomplete', 'bday-year');
Styling
No front-end styling is provided to display the fields “inline”. You could use the CMS styling for inspiration: check out client/src/bundles/cms.scss
.
Todo
- Add translation entities for labels/error messages
- Min/max date options
- Unit tests