function social_event_form_alter in Open Social 8.5
Same name and namespace in other branches
- 8.9 modules/social_features/social_event/social_event.module \social_event_form_alter()
- 8.3 modules/social_features/social_event/social_event.module \social_event_form_alter()
- 8.4 modules/social_features/social_event/social_event.module \social_event_form_alter()
- 8.6 modules/social_features/social_event/social_event.module \social_event_form_alter()
- 8.7 modules/social_features/social_event/social_event.module \social_event_form_alter()
- 8.8 modules/social_features/social_event/social_event.module \social_event_form_alter()
- 10.3.x modules/social_features/social_event/social_event.module \social_event_form_alter()
- 10.0.x modules/social_features/social_event/social_event.module \social_event_form_alter()
- 10.1.x modules/social_features/social_event/social_event.module \social_event_form_alter()
- 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 459 - The Social event module.
Code
function social_event_form_alter(&$form, FormStateInterface $form_state, $form_id) {
switch ($form_id) {
case 'node_event_edit_form':
// Set allow event enrollment checked by default for existing events.
$entity = $form_state
->getFormObject()
->getEntity();
if ($entity
->hasField('field_event_enroll') && $entity->field_event_enroll
->isEmpty()) {
$form['field_event_enroll']['widget']['value']['#default_value'] = TRUE;
}
case 'node_event_form':
$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';
break;
// Hide Enroll button if enrollment is disabled for this event.
case 'enroll_action_form':
$node = \Drupal::routeMatch()
->getParameter('node');
if (!$node instanceof NodeInterface) {
$node = \Drupal::entityTypeManager()
->getStorage('node')
->load($node);
}
if ($node instanceof NodeInterface) {
$form['enroll_for_this_event']['#access'] = \Drupal::service('social_event.enroll')
->isEnabled($node);
}
break;
}
}