You are here

commerce_log.module in Commerce Core 8.2

Provides activity logs for Commerce entities.

File

modules/log/commerce_log.module
View source
<?php

/**
 * @file
 * Provides activity logs for Commerce entities.
 */
use Drupal\Core\Form\FormStateInterface;

/**
 * Implements hook_preprocess_commerce_order().
 */
function commerce_log_preprocess_commerce_order(&$variables) {

  /** @var \Drupal\commerce_order\Entity\OrderInterface $order */
  $order = $variables['elements']['#commerce_order'];
  $variables['order']['activity'] = [
    '#type' => 'view',
    '#name' => 'commerce_activity',
    '#display_id' => 'default',
    '#arguments' => [
      $order
        ->id(),
      'commerce_order',
    ],
    '#embed' => TRUE,
    '#title' => t('Order activity'),
  ];
}

/**
 * Implements hook_form_FORM_ID_alter() for 'commerce_order_add_form'.
 */
function commerce_log_form_commerce_order_add_form_alter(array &$form, FormStateInterface $form_state) {
  $form['#submit'][] = 'commerce_log_add_form_submit';
}

/**
 * Submission handler for commerce_log_form_commerce_order_add_form_alter().
 */
function commerce_log_add_form_submit($form, FormStateInterface $form_state) {

  /** @var \Drupal\commerce_log\LogStorageInterface $log_storage */
  $log_storage = \Drupal::entityTypeManager()
    ->getStorage('commerce_log');
  $order_storage = \Drupal::entityTypeManager()
    ->getStorage('commerce_order');

  /** @var \Drupal\commerce_order\Entity\OrderInterface $order */
  $order = $order_storage
    ->load($form_state
    ->getValue('order_id'));
  $log_storage
    ->generate($order, 'order_created_admin')
    ->save();
}

Functions

Namesort descending Description
commerce_log_add_form_submit Submission handler for commerce_log_form_commerce_order_add_form_alter().
commerce_log_form_commerce_order_add_form_alter Implements hook_form_FORM_ID_alter() for 'commerce_order_add_form'.
commerce_log_preprocess_commerce_order Implements hook_preprocess_commerce_order().