UidRevision.php

Same filename in this branch
  1. 8.9.x core/modules/node/src/Plugin/views/argument/UidRevision.php
Same filename and directory in other branches
  1. 9 core/modules/node/src/Plugin/views/filter/UidRevision.php
  2. 9 core/modules/node/src/Plugin/views/argument/UidRevision.php
  3. 10 core/modules/node/src/Plugin/views/filter/UidRevision.php
  4. 10 core/modules/node/src/Plugin/views/argument/UidRevision.php
  5. 11.x core/modules/node/src/Plugin/views/filter/UidRevision.php
  6. 11.x core/modules/node/src/Plugin/views/argument/UidRevision.php

Namespace

Drupal\node\Plugin\views\filter

File

core/modules/node/src/Plugin/views/filter/UidRevision.php

View source
<?php

namespace Drupal\node\Plugin\views\filter;

use Drupal\user\Plugin\views\filter\Name;

/**
 * Filter handler to check for revisions a certain user has created.
 *
 * @ingroup views_filter_handlers
 *
 * @ViewsFilter("node_uid_revision")
 */
class UidRevision extends Name {
    public function query($group_by = FALSE) {
        $this->ensureMyTable();
        $placeholder = $this->placeholder() . '[]';
        $args = array_values($this->value);
        $this->query
            ->addWhereExpression($this->options['group'], "{$this->tableAlias}.uid IN({$placeholder}) OR\n      ((SELECT COUNT(DISTINCT vid) FROM {node_revision} nr WHERE nr.revision_uid IN ({$placeholder}) AND nr.nid = {$this->tableAlias}.nid) > 0)", [
            $placeholder => $args,
        ], $args);
    }

}

Classes

Title Deprecated Summary
UidRevision Filter handler to check for revisions a certain user has created.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.