You are here

public function UidRevision::query in Drupal 8

Same name in this branch
  1. 8 core/modules/node/src/Plugin/views/filter/UidRevision.php \Drupal\node\Plugin\views\filter\UidRevision::query()
  2. 8 core/modules/node/src/Plugin/views/argument/UidRevision.php \Drupal\node\Plugin\views\argument\UidRevision::query()
Same name and namespace in other branches
  1. 9 core/modules/node/src/Plugin/views/argument/UidRevision.php \Drupal\node\Plugin\views\argument\UidRevision::query()

Set up the query for this argument.

The argument sent may be found at $this->argument.

Overrides NumericArgument::query

File

core/modules/node/src/Plugin/views/argument/UidRevision.php, line 15

Class

UidRevision
Filter handler to accept a user id to check for nodes that user posted or created a revision on.

Namespace

Drupal\node\Plugin\views\argument

Code

public function query($group_by = FALSE) {
  $this
    ->ensureMyTable();
  $placeholder = $this
    ->placeholder();
  $this->query
    ->addWhereExpression(0, "{$this->tableAlias}.uid = {$placeholder} OR ((SELECT COUNT(DISTINCT vid) FROM {node_revision} nr WHERE nr.revision_uid = {$placeholder} AND nr.nid = {$this->tableAlias}.nid) > 0)", [
    $placeholder => $this->argument,
  ]);
}