You are here

function theme_fel_fieldset in Form element layout 7

Replacement theme for 'fieldset'.

See also

theme_fieldset()

1 theme call to theme_fel_fieldset()
theme_fel_date_combo in modules/fel_fields/fel_fields.theme.inc
Theme replacement for 'date_combo'.

File

./fel.module, line 274
Reorder #title, #description and #children in forms.

Code

function theme_fel_fieldset($variables) {
  $element = $variables['element'];
  element_set_attributes($element, array(
    'id',
  ));
  _form_set_class($element, array(
    'form-wrapper',
  ));
  $output = '<fieldset' . drupal_attributes($element['#attributes']) . '>';
  if (!empty($element['#title'])) {
    $title_classes = array(
      'fieldset-legend',
    );
    if (!empty($element['#title_classes'])) {
      $title_classes = array_merge($title_classes, $element['#title_classes']);
    }

    // Always wrap fieldset legends in a SPAN for CSS positioning.
    $output .= '<legend><span class="' . implode(' ', $title_classes) . '">' . $element['#title'] . '</span></legend>';
  }
  $output .= '<div class="fieldset-wrapper">';
  $parts['children'] = $element['#children'];
  if (isset($element['#value'])) {
    $parts['children'] .= $element['#value'];
  }
  if (!empty($element['#description'])) {
    $element['#description_classes'][] = 'fieldset-description';
    $parts['description'] = theme('fel_form_element_description', $variables);
    if (empty($element['#description_display'])) {
      $element['#description_display'] = 'before';
    }
  }
  $output .= fel_order_output($element, $parts);
  $output .= '</div>';
  $output .= "</fieldset>\n";
  return $output;
}