You are here

function opigno_calendar_event_form_alter in Opigno calendar event 8

Same name and namespace in other branches
  1. 3.x opigno_calendar_event.module \opigno_calendar_event_form_alter()

Implements hook_form_alter().

File

./opigno_calendar_event.module, line 130
Main file for the "Calendar event" module.

Code

function opigno_calendar_event_form_alter(array &$form, FormStateInterface $form_state, $form_id) {
  $form_object = $form_state
    ->getFormObject();
  if ($form_object instanceof ContentEntityFormInterface && in_array($form_object
    ->getOperation(), [
    'default',
    'edit',
  ])) {

    /** @var \Drupal\Core\Entity\ContentEntityInterface $entity */
    $entity = $form_object
      ->getEntity();
    $calendar_event_manager = CalendarEventManager::get();
    $calendar_events = $calendar_event_manager
      ->getReferencingCalendarEvents($entity);
    if ($calendar_events) {
      $field_definition = $calendar_event_manager
        ->getReferencingFieldDefinition($entity
        ->getEntityTypeId(), $entity
        ->bundle());
      $calendar_event_manager
        ->getEmbeddedWidget()
        ->alterForm($form, $form_state, $field_definition, $calendar_events);
    }
  }
  if ($form_id == 'user_admin_permissions') {

    // Alter permissions titles.
    $form["permissions"]["view opigno_calendar_event"]["description"]["#context"]["title"] = t('View any calendar event entities');
    $form["permissions"]["update opigno_calendar_event"]["description"]["#context"]["title"] = t('Update any calendar event entities');
    $form["permissions"]["delete opigno_calendar_event"]["description"]["#context"]["title"] = t('Delete any calendar event entities');
  }
}