public function MediaDirectoryArgument::query in Media Directories 3.x
Same name and namespace in other branches
- 8 src/Plugin/views/argument/MediaDirectoryArgument.php \Drupal\media_directories\Plugin\views\argument\MediaDirectoryArgument::query()
- 2.x src/Plugin/views/argument/MediaDirectoryArgument.php \Drupal\media_directories\Plugin\views\argument\MediaDirectoryArgument::query()
Set up the query for this argument.
The argument sent may be found at $this->argument.
Overrides ArgumentPluginBase::query
File
- src/
Plugin/ views/ argument/ MediaDirectoryArgument.php, line 73
Class
- MediaDirectoryArgument
- Media directory argument plugin.
Namespace
Drupal\media_directories\Plugin\views\argumentCode
public function query($group_by = FALSE) {
$this
->ensureMyTable();
$this->value = (int) $this->argument;
$placeholder = $this
->placeholder();
$null_check = empty($this->options['not']) ? '' : " OR {$this->tableAlias}.{$this->realField} IS NULL";
if ($this->value === MEDIA_DIRECTORY_ROOT) {
$this->query
->addWhereExpression(0, "{$this->tableAlias}.{$this->realField} IS NULL");
}
else {
$operator = empty($this->options['not']) ? '=' : '!=';
$this->query
->addWhereExpression(0, "{$this->tableAlias}.{$this->realField} {$operator} {$placeholder}" . $null_check, [
$placeholder => $this->argument,
]);
}
}