ILIAS  release_8 Revision v8.24
ilAccessRBACTemplateAddedObjective Class Reference
+ Inheritance diagram for ilAccessRBACTemplateAddedObjective:
+ Collaboration diagram for ilAccessRBACTemplateAddedObjective:

Public Member Functions

 __construct (string $type, string $id, string $description, array $op_ids=[])
 
 getHash ()
 
 getLabel ()
 
 isNotable ()
 
 getPreconditions (Environment $environment)
 
 achieve (Environment $environment)
 
 isApplicable (Environment $environment)
 

Protected Attributes

string $type
 
string $id
 
string $description
 
array $op_ids
 

Detailed Description

Definition at line 10 of file class.ilAccessRBACTemplateAddedObjective.php.

Constructor & Destructor Documentation

◆ __construct()

ilAccessRBACTemplateAddedObjective::__construct ( string  $type,
string  $id,
string  $description,
array  $op_ids = [] 
)

Member Function Documentation

◆ achieve()

ilAccessRBACTemplateAddedObjective::achieve ( Environment  $environment)

Definition at line 48 of file class.ilAccessRBACTemplateAddedObjective.php.

49 {
50 $db = $environment->getResource(Environment::RESOURCE_DATABASE);
51
52 $tpl_id = $db->nextId("object_data");
53 $values = [
54 "obj_id" => ["integer", $tpl_id],
55 "type" => ["text", "rolt"],
56 "title" => ["text", $this->id],
57 "description" => ["text", $this->description],
58 "owner" => ["integer", -1],
59 "create_date" => ["timestamp", date("Y-m-d H:i:s")],
60 "last_update" => ["timestamp", date("Y-m-d H:i:s")]
61 ];
62 $db->insert("object_data", $values);
63
64 $values = [
65 "rol_id" => ["integer", $tpl_id],
66 "parent" => ["integer", 8],
67 "assign" => ["text", "n"],
68 "protected" => ["text", "n"]
69 ];
70 $db->insert("rbac_fa", $values);
71
72 foreach ($this->op_ids as $op_id) {
73 $values = [
74 "rol_id" => ["integer", $tpl_id],
75 "type" => ["text", $this->type],
76 "ops_id" => ["integer", $op_id],
77 "parent" => ["integer", 8]
78 ];
79 $db->insert("rbac_templates", $values);
80 }
81
82 return $environment;
83 }
An environment holds resources to be used in the setup process.
Definition: Environment.php:28
getResource(string $id)
Consumers of this method should check if the result is what they expect, e.g.

References $description, $id, $type, and ILIAS\Setup\Environment\getResource().

+ Here is the call graph for this function:

◆ getHash()

ilAccessRBACTemplateAddedObjective::getHash ( )

Definition at line 25 of file class.ilAccessRBACTemplateAddedObjective.php.

25 : string
26 {
27 return hash("sha256", self::class);
28 }

◆ getLabel()

ilAccessRBACTemplateAddedObjective::getLabel ( )

Definition at line 30 of file class.ilAccessRBACTemplateAddedObjective.php.

30 : string
31 {
32 $op_ids = implode(",", $this->op_ids);
33 return "Add rbac template (type=$this->type;id=$this->id;description=$this->description;op_ids=$op_ids)";
34 }

References $op_ids.

◆ getPreconditions()

ilAccessRBACTemplateAddedObjective::getPreconditions ( Environment  $environment)

◆ isApplicable()

ilAccessRBACTemplateAddedObjective::isApplicable ( Environment  $environment)

Definition at line 85 of file class.ilAccessRBACTemplateAddedObjective.php.

85 : bool
86 {
87 return (bool) count($this->op_ids);
88 }

◆ isNotable()

ilAccessRBACTemplateAddedObjective::isNotable ( )

Definition at line 36 of file class.ilAccessRBACTemplateAddedObjective.php.

36 : bool
37 {
38 return true;
39 }

Field Documentation

◆ $description

string ilAccessRBACTemplateAddedObjective::$description
protected

Definition at line 14 of file class.ilAccessRBACTemplateAddedObjective.php.

Referenced by __construct(), and achieve().

◆ $id

string ilAccessRBACTemplateAddedObjective::$id
protected

Definition at line 13 of file class.ilAccessRBACTemplateAddedObjective.php.

Referenced by __construct(), and achieve().

◆ $op_ids

array ilAccessRBACTemplateAddedObjective::$op_ids
protected

Definition at line 15 of file class.ilAccessRBACTemplateAddedObjective.php.

Referenced by __construct(), and getLabel().

◆ $type

string ilAccessRBACTemplateAddedObjective::$type
protected

Definition at line 12 of file class.ilAccessRBACTemplateAddedObjective.php.

Referenced by __construct(), and achieve().


The documentation for this class was generated from the following file: