$type, $name, $label = '',
$attributes = '', $required = FALSE, $extra = NULL
) {
+ if ($type === 'radio') {
+ CRM_Core_Error::deprecatedFunctionWarning('CRM_Core_Form::addRadio');
+ }
// Fudge some extra types that quickform doesn't support
$inputType = $type;
if ($type == 'wysiwyg' || in_array($type, self::$html5Types)) {
// @see https://docs.civicrm.org/dev/en/latest/framework/ui/#date-picker
if ($type === 'datepicker') {
$attributes = $attributes ?: [];
- if (!empty($attributes['format'])) {
- $dateAttributes = CRM_Core_SelectValues::date($attributes['format'], NULL, NULL, NULL, 'Input');
+ if (!empty($attributes['formatType'])) {
+ $dateAttributes = CRM_Core_SelectValues::date($attributes['formatType'], NULL, NULL, NULL, 'Input');
if (empty($extra['minDate']) && !empty($dateAttributes['minYear'])) {
$extra['minDate'] = $dateAttributes['minYear'] . '-01-01';
}
}
}
}
- $options[] = $this->createElement('radio', NULL, NULL, $var, $key, $optAttributes);
+ $element = $this->createElement('radio', NULL, NULL, $var, $key, $optAttributes);
+ if ($required) {
+ $element->setAttribute('required', TRUE);
+ }
+ $options[] = $element;
}
$group = $this->addGroup($options, $name, $title, $separator);
$required,
['class' => 'crm-select2']
);
- $attributes = ['format' => 'searchDate'];
+ $attributes = ['formatType' => 'searchDate'];
$extra = ['time' => $isDateTime];
$this->add('datepicker', $fieldName . $from, ts($fromLabel), $attributes, $required, $extra);
$this->add('datepicker', $fieldName . $to, ts($toLabel), $attributes, $required, $extra);
}
else {
$fieldSpec = CRM_Utils_Date::addDateMetadataToField($fieldSpec, $fieldSpec);
- $attributes = ['format' => $fieldSpec['html']['formatType']];
+ $attributes = ['format' => $fieldSpec['date_format']];
return $this->add('datepicker', $name, $label, $attributes, $required, $fieldSpec['datepicker']['extra']);
}