3 declare(strict_types=1);
    32         self::RBAC_OP_EDIT_PERMISSIONS,
    33         self::RBAC_OP_VISIBLE,
    42     public function __construct(
string $type, 
string $title, 
string $parent_type = 
"")
    51         return hash(
"sha256", self::class . 
"::" . $this->type);
    56         return "Add new admin node to tree (type=$this->type;title=$this->title)";
    75         $client_ini = $environment->
getResource(Setup\Environment::RESOURCE_CLIENT_INI);
    76         $db = $environment->
getResource(Environment::RESOURCE_DATABASE);
    77         $DIC[
'ilDB'] = $DIC[
'ilDB'] ?? $db;
    79         if (!defined(
"ROOT_FOLDER_ID")) {
    80             define(
"ROOT_FOLDER_ID", (
int) $client_ini->readVariable(
"system", 
"ROOT_FOLDER_ID"));
    82         if (!defined(
"SYSTEM_FOLDER_ID")) {
    83             define(
"SYSTEM_FOLDER_ID", $client_ini->readVariable(
"system", 
"SYSTEM_FOLDER_ID"));
    85         if (!defined(
"ILIAS_LOG_ENABLED")) {
    86             define(
"ILIAS_LOG_ENABLED", 
false);
    89         $obj_type_id = $db->nextId(
"object_data");
    91             'obj_id' => [
'integer', $obj_type_id],
    92             'type' => [
'text', 
'typ'],
    95             'owner' => [
'integer', -1],
    96             'create_date' => [
'timestamp', date(
"Y-m-d H:i:s")],
    97             'last_update' => [
'timestamp', date(
"Y-m-d H:i:s")]
    99         $db->insert(
"object_data", $values);
   101         $obj_id = $db->nextId(
"object_data");
   103             'obj_id' => [
'integer', $obj_id],
   107             'owner' => [
'integer', -1],
   108             'create_date' => [
'timestamp', date(
"Y-m-d H:i:s")],
   109             'last_update' => [
'timestamp', date(
"Y-m-d H:i:s")]
   111         $db->insert(
"object_data", $values);
   113         $ref_id = $db->nextId(
"object_reference");
   115             "obj_id" => [
"integer", $obj_id],
   116             "ref_id" => [
"integer", 
$ref_id]
   118         $db->insert(
"object_reference", $values);
   125         if ($this->parent_type) {
   127                 "SELECT * FROM object_data " .
   132             $rec = $db->fetchAssoc($set);
   135                 "SELECT * FROM object_reference " .
   136                 " WHERE obj_id = %s ",
   140             $rec = $db->fetchAssoc($set);
   141             $parent_type_ref_id = $rec[
"ref_id"];
   143             $tree->insertNode((
int) 
$ref_id, (
int) $parent_type_ref_id);
   148         foreach ($this->rbac_ops as $ops_id) {
   153                 "typ_id" => [
"integer", $obj_type_id],
   154                 "ops_id" => [
"integer", $ops_id]
   156             $db->insert(
"rbac_ta", $values);
   163         $db = $environment->
getResource(Environment::RESOURCE_DATABASE);
 
achieve(Environment $environment)
 
getPreconditions(Environment $environment)
 
const RBAC_OP_EDIT_PERMISSIONS
 
getResource(string $id)
Consumers of this method should check if the result is what they expect, e.g. 
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
isApplicable(Environment $environment)
 
An environment holds resources to be used in the setup process. 
 
static _isRBACOperation(int $type_id, int $ops_id, \ilDBInterface $ilDB=null)
 
static _getObjectTypeIdByTitle(string $type, \ilDBInterface $ilDB=null)
 
__construct(string $type, string $title, string $parent_type="")