You are here

function social_event_form_alter in Open Social 8.4

Same name and namespace in other branches
  1. 8.9 modules/social_features/social_event/social_event.module \social_event_form_alter()
  2. 8.3 modules/social_features/social_event/social_event.module \social_event_form_alter()
  3. 8.5 modules/social_features/social_event/social_event.module \social_event_form_alter()
  4. 8.6 modules/social_features/social_event/social_event.module \social_event_form_alter()
  5. 8.7 modules/social_features/social_event/social_event.module \social_event_form_alter()
  6. 8.8 modules/social_features/social_event/social_event.module \social_event_form_alter()
  7. 10.3.x modules/social_features/social_event/social_event.module \social_event_form_alter()
  8. 10.0.x modules/social_features/social_event/social_event.module \social_event_form_alter()
  9. 10.1.x modules/social_features/social_event/social_event.module \social_event_form_alter()
  10. 10.2.x modules/social_features/social_event/social_event.module \social_event_form_alter()

Implements hook_form_alter().

File

modules/social_features/social_event/social_event.module, line 396
The Social event module.

Code

function social_event_form_alter(&$form, FormStateInterface $form_state, $form_id) {
  $event_forms = [
    'node_event_form',
    'node_event_edit_form',
  ];
  if (in_array($form_id, $event_forms)) {
    $form['event_all_day'] = [
      '#type' => 'checkbox',
      '#title' => t('All day'),
    ];

    // Set default value and fieldgroup for all day checkbox.
    if ($date = $form['field_event_date']['widget'][0]['value']['#default_value']) {
      $all_day_value = $date instanceof DrupalDateTime && social_event_date_is_all_day($date);
      $form['event_all_day']['#default_value'] = $all_day_value;
    }
    $form['#fieldgroups']['group_date_time']->children[] = 'event_all_day';
    $form['#group_children']['event_all_day'] = 'group_date_time';
    $form['#after_build'][] = 'social_event_date_after_build';
  }
}