You are here

trait WebformSubmissionLogTrait in Webform 6.x

Same name and namespace in other branches
  1. 8.5 modules/webform_submission_log/tests/src/Traits/WebformSubmissionLogTrait.php \Drupal\Tests\webform_submission_log\Traits\WebformSubmissionLogTrait

Trait for webform submission log tests.

Hierarchy

2 files declare their use of WebformSubmissionLogTrait
WebformSubmissionLogNodeTest.php in modules/webform_submission_log/tests/src/Functional/WebformSubmissionLogNodeTest.php
WebformSubmissionLogTest.php in modules/webform_submission_log/tests/src/Functional/WebformSubmissionLogTest.php

File

modules/webform_submission_log/tests/src/Traits/WebformSubmissionLogTrait.php, line 8

Namespace

Drupal\Tests\webform_submission_log\Traits
View source
trait WebformSubmissionLogTrait {

  /**
   * Get the last submission id.
   *
   * @return int
   *   The last submission id.
   */
  protected function getLastSubmissionLog() {
    $query = \Drupal::database()
      ->select('webform_submission_log', 'l');
    $query
      ->leftJoin('webform_submission', 'ws', 'l.sid = ws.sid');
    $query
      ->fields('l', [
      'lid',
      'uid',
      'sid',
      'handler_id',
      'operation',
      'message',
      'variables',
      'timestamp',
    ]);
    $query
      ->fields('ws', [
      'webform_id',
      'entity_type',
      'entity_id',
    ]);
    $query
      ->orderBy('l.lid', 'DESC');
    $query
      ->range(0, 1);
    $submission_log = $query
      ->execute()
      ->fetch();
    if ($submission_log) {
      $submission_log->variables = unserialize($submission_log->variables);
    }
    return $submission_log;
  }

  /**
   * Get the entire submission log.
   *
   * @return int
   *   The last submission id.
   */
  protected function getSubmissionLog() {
    $query = \Drupal::database()
      ->select('webform_submission_log', 'l');
    $query
      ->leftJoin('webform_submission', 'ws', 'l.sid = ws.sid');
    $query
      ->fields('l', [
      'lid',
      'uid',
      'sid',
      'handler_id',
      'operation',
      'message',
      'variables',
      'timestamp',
    ]);
    $query
      ->fields('ws', [
      'webform_id',
      'entity_type',
      'entity_id',
    ]);
    $query
      ->orderBy('l.lid', 'DESC');
    $submission_logs = $query
      ->execute()
      ->fetchAll();
    foreach ($submission_logs as &$submission_log) {
      $submission_log->variables = unserialize($submission_log->variables);
    }
    return $submission_logs;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
WebformSubmissionLogTrait::getLastSubmissionLog protected function Get the last submission id.
WebformSubmissionLogTrait::getSubmissionLog protected function Get the entire submission log.