1 form.inc | form_process_html_datetime($element) |
Combine html_date and html_time form elements.
Related topics
File
- core/
includes/ form.inc, line 3277 - Functions for form and batch generation and processing.
Code
function form_process_html_datetime($element) {
$value = $element['#value'];
// Conversion to a timestamp has happened, possibly in a preview.
// Get it back into an array for the form.
if (is_numeric($value) && (int) $value == $value) {
$value = array(
'date' => format_date($value, 'custom', DATE_FORMAT_DATE),
'time' => format_date($value, 'custom', DATE_FORMAT_TIME),
);
}
// Catch possible problems.
if (!is_array($value) || !isset($value['date']) || !isset($value['time'])) {
$value = array(
'date' => '',
'time' => '',
);
}
$element['#tree'] = TRUE;
$element['date'] = array(
'#type' => 'html_date',
'#default_value' => $value['date'],
);
$attributes = $element['#attributes'];
if (isset($attributes['date'])) {
$element['date']['#attributes'] = $attributes['date'];
}
$element['time'] = array(
'#type' => 'html_time',
'#default_value' => $value['time'],
);
if (isset($attributes['time'])) {
$element['time']['#attributes'] = $attributes['time'];
}
return $element;
}