function UserUid::query
Set up the query for this argument.
The argument sent may be found at $this->argument.
Overrides ArgumentPluginBase::query
1 method overrides UserUid::query()
- UserUid::query in core/
modules/ tracker/ src/ Plugin/ views/ argument/ UserUid.php  - Set up the query for this argument.
 
File
- 
              core/
modules/ comment/ src/ Plugin/ views/ argument/ UserUid.php, line 82  
Class
- UserUid
 - The views user ID argument handler.
 
Namespace
Drupal\comment\Plugin\views\argumentCode
public function query($group_by = FALSE) {
  $this->ensureMyTable();
  // Use the table definition to correctly add this user ID condition.
  if ($this->table != 'comment_field_data') {
    $subselect = $this->database
      ->select('comment_field_data', 'c');
    $subselect->addField('c', 'cid');
    $subselect->condition('c.uid', $this->argument);
    $entity_id = $this->definition['entity_id'];
    $entity_type = $this->definition['entity_type'];
    $subselect->where("[c].[entity_id] = [{$this->tableAlias}].[{$entity_id}]");
    $subselect->condition('c.entity_type', $entity_type);
    $condition = $this->view->query
      ->getConnection()
      ->condition('OR')
      ->condition("{$this->tableAlias}.uid", $this->argument, '=')
      ->exists($subselect);
    $this->query
      ->addWhere(0, $condition);
  }
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.