function Thread::query

Same name in other branches
  1. 9 core/modules/comment/src/Plugin/views/sort/Thread.php \Drupal\comment\Plugin\views\sort\Thread::query()
  2. 8.9.x core/modules/comment/src/Plugin/views/sort/Thread.php \Drupal\comment\Plugin\views\sort\Thread::query()
  3. 11.x core/modules/comment/src/Plugin/views/sort/Thread.php \Drupal\comment\Plugin\views\sort\Thread::query()

Overrides SortPluginBase::query

File

core/modules/comment/src/Plugin/views/sort/Thread.php, line 16

Class

Thread
Sort handler for ordering by thread.

Namespace

Drupal\comment\Plugin\views\sort

Code

public function query() {
    $this->ensureMyTable();
    // See \Drupal\comment\CommentStorage::loadThread() for an explanation of
    // the thinking behind this sort.
    if ($this->options['order'] == 'DESC') {
        $this->query
            ->addOrderBy($this->tableAlias, $this->realField, $this->options['order']);
    }
    else {
        $alias = $this->tableAlias . '_' . $this->realField . 'asc';
        // @todo is this secure?
        $this->query
            ->addOrderBy(NULL, "SUBSTRING({$this->tableAlias}.{$this->realField}, 1, (LENGTH({$this->tableAlias}.{$this->realField}) - 1))", $this->options['order'], $alias);
    }
}

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