function BookOutlineStorage::getBookSubtree

Same name and namespace in other branches
  1. 8.9.x core/modules/book/src/BookOutlineStorage.php \Drupal\book\BookOutlineStorage::getBookSubtree()
  2. 10 core/modules/book/src/BookOutlineStorage.php \Drupal\book\BookOutlineStorage::getBookSubtree()
  3. 11.x core/modules/book/src/BookOutlineStorage.php \Drupal\book\BookOutlineStorage::getBookSubtree()

Overrides BookOutlineStorageInterface::getBookSubtree

File

core/modules/book/src/BookOutlineStorage.php, line 187

Class

BookOutlineStorage
Defines a storage class for books outline.

Namespace

Drupal\book

Code

public function getBookSubtree($link, $max_depth) {
    $query = $this->connection
        ->select('book', 'b', [
        'fetch' => \PDO::FETCH_ASSOC,
    ]);
    $query->fields('b');
    $query->condition('b.bid', $link['bid']);
    for ($i = 1; $i <= $max_depth && $link["p{$i}"]; ++$i) {
        $query->condition("p{$i}", $link["p{$i}"]);
    }
    for ($i = 1; $i <= $max_depth; ++$i) {
        $query->orderBy("p{$i}");
    }
    return $query->execute();
}

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