protected function MediaDirectoriesTreeBuilder::buildTree in Media Directories 3.x
Populates a tree array given a taxonomy term tree object.
Parameters
$tree:
$object:
$vocabulary:
1 call to MediaDirectoriesTreeBuilder::buildTree()
- MediaDirectoriesTreeBuilder::tree in modules/
media_directories_ui/ src/ MediaDirectoriesTreeBuilder.php - Return complete directory tree.
File
- modules/
media_directories_ui/ src/ MediaDirectoriesTreeBuilder.php, line 89
Class
Namespace
Drupal\media_directories_uiCode
protected function buildTree(&$tree, $object, $vocabulary) {
if ($object->depth !== 0) {
return;
}
$tree[$object->tid] = $object;
$tree[$object->tid]->children = [];
$tree[$object->tid]->text = $object->name;
$tree[$object->tid]->a_attr = [
'data-tid' => $object->tid,
];
$tree[$object->tid]->id = 'dir-' . $object->tid;
$object_children =& $tree[$object->tid]->children;
$children = $this->termStorage
->loadChildren($object->tid);
if (!$children) {
return;
}
$child_tree_objects = $this->termStorage
->loadTree($vocabulary, $object->tid);
foreach ($children as $child) {
foreach ($child_tree_objects as $child_tree_object) {
if ($child_tree_object->tid === $child
->id()) {
$this
->buildTree($object_children, $child_tree_object, $vocabulary);
}
}
}
$tree[$object->tid]->children = array_values($tree[$object->tid]->children);
}