You are here

function webhooks_user_cancel in Webhooks 8

Implements hook_user_cancel().

File

./webhooks.module, line 198
Contains webhooks.module.

Code

function webhooks_user_cancel($edit, UserInterface $account, $method) {

  /** @var \Drupal\webhooks\WebhooksService $webhooks_service */
  $webhooks_service = \Drupal::service('webhooks.service');

  /** @var \Symfony\Component\Serializer\Serializer $serializer */
  $serializer = \Drupal::service('serializer');
  $event = implode(':', [
    'system',
    'user_cancel',
  ]);
  $user = User::load($account
    ->id());
  $webhook_configs = $webhooks_service
    ->loadMultipleByEvent($event);

  /** @var \Drupal\webhooks\Entity\WebhookConfig $webhook_config */
  foreach ($webhook_configs as $webhook_config) {
    $webhook = new Webhook([
      'event' => $event,
      'user' => $serializer
        ->normalize($user),
    ], [], $event, $webhook_config
      ->getContentType());
    $webhooks_service
      ->send($webhook_config, $webhook);
  }
}