You are here

event_log_track_media.module in Events Log Track 8.2

Logs media entity CUD commands in the event_log_track module.

File

event_log_track_media/event_log_track_media.module
View source
<?php

/**
 * @file
 * Logs media entity CUD commands in the event_log_track module.
 */
use Drupal\Component\Utility\Html;
use Drupal\Core\Entity\EntityInterface;

/**
 * Implements hook_event_log_track_handlers().
 */
function event_log_track_media_event_log_track_handlers() {
  $handlers = [];

  // Media event log handler.
  $handlers['media'] = [
    'title' => t('Media'),
  ];
  return $handlers;
}

/**
 * Implements hook_ENTITY_TYPE_insert().
 */
function event_log_track_media_insert(EntityInterface $entity) {
  $log = [
    'type' => 'media',
    'operation' => 'insert',
    'description' => t('%title (%type)%revision_log', [
      '%type' => $entity
        ->bundle(),
      '%title' => $entity
        ->getName(),
      '%revision_log' => $entity
        ->getRevisionLogMessage() ? ': ' . $entity
        ->getRevisionLogMessage() : '',
    ]),
    'ref_numeric' => $entity
      ->id(),
    'ref_char' => Html::escape($entity
      ->label()),
  ];

  // Insert log.
  event_log_track_insert($log);
}

/**
 * Implements hook_ENTITY_TYPE_update().
 */
function event_log_track_media_update(EntityInterface $entity) {
  $log = [
    'type' => 'media',
    'operation' => 'update',
    'description' => t('%title (%type)%revision_log', [
      '%type' => $entity
        ->bundle(),
      '%title' => $entity
        ->getName(),
      '%revision_log' => $entity
        ->getRevisionLogMessage() ? ': ' . $entity
        ->getRevisionLogMessage() : '',
    ]),
    'ref_numeric' => $entity
      ->id(),
    'ref_char' => Html::escape($entity
      ->label()),
  ];

  // Insert log.
  event_log_track_insert($log);
}

/**
 * Implements hook_ENTITY_TYPE_delete().
 */
function event_log_track_media_delete(EntityInterface $entity) {
  $log = [
    'type' => 'media',
    'operation' => 'delete',
    'description' => t('%title (%type)%revision_log', [
      '%type' => $entity
        ->bundle(),
      '%title' => $entity
        ->getName(),
      '%revision_log' => $entity
        ->getRevisionLogMessage() ? ': ' . $entity
        ->getRevisionLogMessage() : '',
    ]),
    'ref_numeric' => $entity
      ->id(),
    'ref_char' => Html::escape($entity
      ->label()),
  ];

  // Insert log.
  event_log_track_insert($log);
}