73 {
74 $client_ini = $environment->
getResource(
Setup\Environment::RESOURCE_CLIENT_INI);
75 $db = $environment->
getResource(Environment::RESOURCE_DATABASE);
76
77
78
79
80
81 $PREVIOUS_DIC =
$GLOBALS[
"DIC"] ??
null;
84
85 try {
86 if (!defined("ROOT_FOLDER_ID")) {
87 define("ROOT_FOLDER_ID", (int) $client_ini->readVariable("system", "ROOT_FOLDER_ID"));
88 }
89 if (!defined("SYSTEM_FOLDER_ID")) {
90 define("SYSTEM_FOLDER_ID", $client_ini->readVariable("system", "SYSTEM_FOLDER_ID"));
91 }
92 if (!defined("ILIAS_LOG_ENABLED")) {
93 define("ILIAS_LOG_ENABLED", false);
94 }
95
96 $obj_type_id = $db->nextId("object_data");
97 $values = [
98 'obj_id' => ['integer', $obj_type_id],
99 'type' => ['text', 'typ'],
102 'owner' => ['integer', -1],
103 'create_date' => ['timestamp', date("Y-m-d H:i:s")],
104 'last_update' => ['timestamp', date("Y-m-d H:i:s")]
105 ];
106 $db->insert("object_data", $values);
107
108 $obj_id = $db->nextId("object_data");
109 $values = [
110 'obj_id' => ['integer', $obj_id],
114 'owner' => ['integer', -1],
115 'create_date' => ['timestamp', date("Y-m-d H:i:s")],
116 'last_update' => ['timestamp', date("Y-m-d H:i:s")]
117 ];
118 $db->insert("object_data", $values);
119
120 $ref_id = $db->nextId(
"object_reference");
121 $values = [
122 "obj_id" => ["integer", $obj_id],
123 "ref_id" => [
"integer",
$ref_id]
124 ];
125 $db->insert("object_reference", $values);
126
129 0,
130 $db
131 );
132 if ($this->parent_type) {
133 $set = $db->queryF(
134 "SELECT * FROM object_data " .
135 " WHERE type = %s ",
136 ["text"],
137 [$this->parent_type]
138 );
139 $rec = $db->fetchAssoc($set);
140
141 $set = $db->queryF(
142 "SELECT * FROM object_reference " .
143 " WHERE obj_id = %s ",
144 ["integer"],
145 [$rec["obj_id"]]
146 );
147 $rec = $db->fetchAssoc($set);
148 $parent_type_ref_id = $rec["ref_id"];
149
150 $tree->insertNode((
int)
$ref_id, (
int) $parent_type_ref_id);
151 } else {
153 }
154
155 foreach ($this->rbac_ops as $ops_id) {
157 continue;
158 }
159 $values = [
160 "typ_id" => ["integer", $obj_type_id],
161 "ops_id" => ["integer", $ops_id]
162 ];
163 $db->insert("rbac_ta", $values);
164 }
165 } finally {
166
168 }
169
170 return $environment;
171 }
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.