74 {
75 $client_ini = $environment->
getResource(
Setup\Environment::RESOURCE_CLIENT_INI);
76 $db = $environment->
getResource(Environment::RESOURCE_DATABASE);
77
78
79
80
81
82 $PREVIOUS_DIC =
$GLOBALS[
"DIC"] ??
null;
85
86 try {
87 if (!defined("ROOT_FOLDER_ID")) {
88 define("ROOT_FOLDER_ID", (int) $client_ini->readVariable("system", "ROOT_FOLDER_ID"));
89 }
90 if (!defined("SYSTEM_FOLDER_ID")) {
91 define("SYSTEM_FOLDER_ID", $client_ini->readVariable("system", "SYSTEM_FOLDER_ID"));
92 }
93 if (!defined("ILIAS_LOG_ENABLED")) {
94 define("ILIAS_LOG_ENABLED", false);
95 }
96
97 $obj_type_id = $db->nextId("object_data");
98 $values = [
99 'obj_id' => ['integer', $obj_type_id],
100 'type' => ['text', 'typ'],
103 'owner' => ['integer', -1],
104 'create_date' => ['timestamp', date("Y-m-d H:i:s")],
105 'last_update' => ['timestamp', date("Y-m-d H:i:s")]
106 ];
107 $db->insert("object_data", $values);
108
109 $obj_id = $db->nextId("object_data");
110 $values = [
111 'obj_id' => ['integer', $obj_id],
115 'owner' => ['integer', -1],
116 'create_date' => ['timestamp', date("Y-m-d H:i:s")],
117 'last_update' => ['timestamp', date("Y-m-d H:i:s")]
118 ];
119 $db->insert("object_data", $values);
120
121 $ref_id = $db->nextId(
"object_reference");
122 $values = [
123 "obj_id" => ["integer", $obj_id],
124 "ref_id" => [
"integer",
$ref_id]
125 ];
126 $db->insert("object_reference", $values);
127
130 0,
131 $db
132 );
133 if ($this->parent_type) {
134 $set = $db->queryF(
135 "SELECT * FROM object_data " .
136 " WHERE type = %s ",
137 ["text"],
138 [$this->parent_type]
139 );
140 $rec = $db->fetchAssoc($set);
141
142 $set = $db->queryF(
143 "SELECT * FROM object_reference " .
144 " WHERE obj_id = %s ",
145 ["integer"],
146 [$rec["obj_id"]]
147 );
148 $rec = $db->fetchAssoc($set);
149 $parent_type_ref_id = $rec["ref_id"];
150
151 $tree->insertNode((
int)
$ref_id, (
int) $parent_type_ref_id);
152 } else {
154 }
155
156 foreach ($this->rbac_ops as $ops_id) {
158 continue;
159 }
160 $values = [
161 "typ_id" => ["integer", $obj_type_id],
162 "ops_id" => ["integer", $ops_id]
163 ];
164 $db->insert("rbac_ta", $values);
165 }
166 } finally {
167
169 }
170
171 return $environment;
172 }
Customizing of pimple-DIC for ILIAS.
static _isRBACOperation(int $type_id, int $ops_id, ?\ilDBInterface $ilDB=null)
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco...
An environment holds resources to be used in the setup process.
getResource(string $id)
Consumers of this method should check if the result is what they expect, e.g.