18 declare(strict_types=1);
39 $this->
logger = $DIC->logger()->wsrv();
52 public function read(): void
54 $this->
logger->debug(
'Begin read');
58 $trees = $dir_reader->getDirectoryTrees();
59 $this->
logger->debug(print_r($trees,
true));
61 foreach ($trees->getLinkIds() as $tree_id) {
63 $result = $dir_reader->getDirectoryTree($tree_id);
64 $this->
storeTree($tree_id, $result->getResult());
70 protected function storeTree($tree_id, $a_nodes): void
78 $data->setServerId($this->server_id);
79 $data->setMid($this->mid);
80 $data->setCmsId($cms_tree->rootID);
81 $data->setTreeId($tree_id);
82 $data->setTitle($cms_tree->directoryTitle);
83 $data->setTerm($cms_tree->term);
86 $tree->insertRootNode($tree_id,
$data->getObjId());
87 $tree->setRootId(
$data->getObjId());
90 foreach ((array) $cms_tree->nodes as $node) {
93 $data->setServerId($this->server_id);
94 $data->setMid($this->mid);
95 $data->setCmsId($node->id);
96 $data->setTreeId($tree_id);
97 $data->setTitle($node->title);
98 $data->setTerm($node->term);
102 if ($node->parent->id) {
109 $tree->insertNode(
$data->getObjId(), $parent_id);
read()
Read trees from ecs.
static treeExists(int $a_server_id, int $a_mid, int $a_tree_id)
static lookupObjId(int $a_server_id, int $a_mid, int $a_tree_id, string $cms_id)
Presentation of ecs uril (http://...campusconnect/courselinks)
__construct(int $server_id, int $mid)
Constructor.
static getInstanceByServerId(int $a_server_id)
Get singleton instance per server.
Reads and store cms tree in database.
storeTree($tree_id, $a_nodes)