You are here

function regionclass_form_system_theme_settings_alter in Region Class 7

Implements hook_form_FORM_ID_alter().

Inject region-class settings into theme settings page.

File

./regionclass.module, line 43
A module providing a simple method for adding CSS classes to regions.

Code

function regionclass_form_system_theme_settings_alter(&$form, &$form_state) {
  $theme_key = substr($form['var']['#value'], 6, -9);
  if (empty($theme_key)) {
    return;
  }
  $form['regionclass'] = array(
    '#type' => 'fieldset',
    '#title' => t('Region Class'),
    '#description' => t('Assign CSS-classes to regions. Use space as a separator when specifying multiple classes.'),
    '#tree' => TRUE,
  );
  $regionclass = theme_get_setting('regionclass', $theme_key);
  $regions = system_region_list($theme_key);
  foreach ($regions as $region => $label) {
    $default_value = isset($regionclass[$region]) ? $regionclass[$region] : array();
    $form['regionclass'][$region] = array(
      '#type' => 'textfield',
      '#title' => t('CSS classes for region %label', array(
        '%label' => $label,
      )),
      '#default_value' => implode(' ', $default_value),
    );
  }
  $form['#validate'][] = 'regionclass_settings_validate';
}