You are here

public function UserEnrollInviteController::getMessage in Open Social 8.9

Same name and namespace in other branches
  1. 10.3.x modules/social_features/social_event/modules/social_event_invite/src/Controller/UserEnrollInviteController.php \Drupal\social_event_invite\Controller\UserEnrollInviteController::getMessage()
  2. 10.0.x modules/social_features/social_event/modules/social_event_invite/src/Controller/UserEnrollInviteController.php \Drupal\social_event_invite\Controller\UserEnrollInviteController::getMessage()
  3. 10.1.x modules/social_features/social_event/modules/social_event_invite/src/Controller/UserEnrollInviteController.php \Drupal\social_event_invite\Controller\UserEnrollInviteController::getMessage()
  4. 10.2.x modules/social_features/social_event/modules/social_event_invite/src/Controller/UserEnrollInviteController.php \Drupal\social_event_invite\Controller\UserEnrollInviteController::getMessage()

Generates a nice message for the user.

Parameters

\Drupal\social_event\EventEnrollmentInterface $event_enrollment: The event enrollment.

string $accept_decline: The approve (1) or decline (0) number.

Return value

\Drupal\Core\StringTranslation\TranslatableMarkup|null The message.

1 call to UserEnrollInviteController::getMessage()
UserEnrollInviteController::updateEnrollmentInvite in modules/social_features/social_event/modules/social_event_invite/src/Controller/UserEnrollInviteController.php

File

modules/social_features/social_event/modules/social_event_invite/src/Controller/UserEnrollInviteController.php, line 78

Class

UserEnrollInviteController
Accepts or declines an event enrollment invite.

Namespace

Drupal\social_event_invite\Controller

Code

public function getMessage(EventEnrollmentInterface $event_enrollment, $accept_decline) {
  $statusMessage = NULL;

  // Get the target event id.
  $target_event_id = $event_enrollment
    ->get('field_event')
    ->getValue();

  // Get the event node.
  $event = $this
    ->entityTypeManager()
    ->getStorage('node')
    ->load($target_event_id[0]['target_id']);

  // Only if we have an event, we perform the rest of the logic.
  if (!empty($event)) {

    // Build the link to the event node.
    $link = Link::createFromRoute($this
      ->t('@node', [
      '@node' => $event
        ->get('title')->value,
    ]), 'entity.node.canonical', [
      'node' => $event
        ->id(),
    ])
      ->toString();

    // Nice message with link to the event the user has enrolled in.
    if (!empty($event
      ->get('title')->value) && $accept_decline === '1') {
      $statusMessage = $this
        ->t('You have accepted the invitation for the @event event.', [
        '@event' => $link,
      ]);
    }
    elseif (!empty($event
      ->get('title')->value) && $accept_decline === '0') {
      $statusMessage = $this
        ->t('You have declined the invitation for the @event event.', [
        '@event' => $link,
      ]);
    }
  }
  return $statusMessage;
}