if ($type == 'datepicker') {
$attributes = ($attributes ? $attributes : array());
$attributes['data-crm-datepicker'] = json_encode((array) $extra);
+ if (!empty($attributes['aria-label']) || $label) {
+ $attributes['aria-label'] = CRM_Utils_Array::value('aria-label', $attributes, $label);
+ }
$type = "text";
}
if ($type == 'select' && is_array($extra)) {
$timeField
.addClass('crm-form-text crm-form-time')
.attr('placeholder', $dataField.attr('time-placeholder') === undefined ? ts('Time') : $dataField.attr('time-placeholder'))
+ .attr('aria-label', $dataField.attr('time-placeholder') === undefined ? ts('Time') : $dataField.attr('time-placeholder'))
.change(updateDataField)
.timeEntry({
spinnerImage: '',
if (settings.date !== false) {
// Render "number" field for year-only format, calendar popup for all other formats
$dateField = $('<input type="' + type + '">').insertAfter($dataField);
- copyAttributes($dataField, $dateField, ['placeholder', 'style', 'class', 'disabled']);
+ copyAttributes($dataField, $dateField, ['placeholder', 'style', 'class', 'disabled', 'aria-label']);
$dateField.addClass('crm-form-' + type);
if (hasDatepicker) {
settings.minDate = settings.minDate ? CRM.utils.makeDate(settings.minDate) : null;