You are here

function service_links_displays_form_alter in Service links 6.2

Same name and namespace in other branches
  1. 7.2 plugins/service_links_displays.module \service_links_displays_form_alter()

Implementation of hook_form_alter().

File

plugins/service_links_displays.module, line 188
Custom Service Links field for Displays.

Code

function service_links_displays_form_alter(&$form, &$form_state, $form_id) {
  if ($form_id == 'service_links_admin_services') {
    $settings['displays'] = variable_get('service_links_displays', array());
    $settings['weight'] = variable_get('service_links_weight', NULL);
    $form['service_links']['service_links_displays'] = array(
      '#tree' => TRUE,
    );
    $services = array_filter(array_keys($form['service_links']['service_links_weight']), '_sld_only_keys');
    foreach ($services as $service_id) {
      $weight = isset($settings['weight'][$service_id]) ? $settings['weight'][$service_id] : 0;
      $form['service_links']['service_links_displays'][$service_id] = array(
        '#weight' => $weight,
        '#type' => 'checkbox',
        '#return_value' => 1,
        '#default_value' => isset($settings['displays'][$service_id]) ? $settings['displays'][$service_id] : 0,
        '#attributes' => array(),
      );
    }
  }
}