Returns HTML for a fieldset form element and its children.
$variables: An associative array containing:
function theme_fieldset($variables) {
$element = $variables['element'];
element_set_attributes($element, array(
'id',
));
_form_set_attributes($element, array(
'form-wrapper',
));
if (!empty($element['#description'])) {
$description_id = $element['#attributes']['id'] . '--description';
$element['#attributes']['aria-describedby'] = $description_id;
}
$legend_attributes = array();
if (isset($element['#title_display']) && $element['#title_display'] == 'invisible') {
$legend_attributes['class'][] = 'element-invisible';
}
$output = '<fieldset' . new Attribute($element['#attributes']) . '>';
if (!empty($element['#title'])) {
// Always wrap fieldset legends in a SPAN for CSS positioning.
$output .= '<legend' . new Attribute($legend_attributes) . '><span class="fieldset-legend">' . $element['#title'] . '</span></legend>';
}
$output .= '<div class="fieldset-wrapper">';
if (!empty($element['#description'])) {
$attributes = array(
'class' => 'fieldset-description',
'id' => $description_id,
);
$output .= '<div' . new Attribute($attributes) . '>' . $element['#description'] . '</div>';
}
$output .= $element['#children'];
if (isset($element['#value'])) {
$output .= $element['#value'];
}
$output .= '</div>';
$output .= "</fieldset>\n";
return $output;
}