ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
class.ilMailMemberLearningSequenceRoles.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22{
23 protected ilLanguage $lng;
25
26 public function __construct()
27 {
28 global $DIC;
29
30 $this->lng = $DIC->language();
31 $this->rbacreview = $DIC->rbac()->review();
32 }
33
34
35 public function getRadioOptionTitle(): string
36 {
37 return $this->lng->txt('mail_roles');
38 }
39
40 public function getMailRoles(int $ref_id): array
41 {
42 $role_ids = $this->rbacreview->getLocalRoles($ref_id);
43
44 $sorted_role_ids = [];
45 $counter = 2;
46
47 foreach ($role_ids as $role_id) {
48 $role_title = ilObject::_lookupTitle((int) $role_id);
49 $mailbox = $this->getMailboxRoleAddress($role_id);
50
51 switch (substr($role_title, 0, 8)) {
52 case 'il_lso_a':
53 $sorted_role_ids[1]['role_id'] = $role_id;
54 $sorted_role_ids[1]['mailbox'] = $mailbox;
55 $sorted_role_ids[1]['form_option_title'] = $this->lng->txt('send_mail_admins');
56 break;
57
58 case 'il_lso_m':
59 $sorted_role_ids[0]['role_id'] = $role_id;
60 $sorted_role_ids[0]['mailbox'] = $mailbox;
61 $sorted_role_ids[0]['form_option_title'] = $this->lng->txt('send_mail_members');
62 break;
63
64 default:
65 $sorted_role_ids[$counter]['role_id'] = $role_id;
66 $sorted_role_ids[$counter]['mailbox'] = $mailbox;
67 $sorted_role_ids[$counter]['form_option_title'] = $role_title;
68
69 $counter++;
70 break;
71 }
72 }
73 ksort($sorted_role_ids, SORT_NUMERIC);
74
75 return $sorted_role_ids;
76 }
77}
Class ilAbstractMailMemberRoles.
language handling
static _lookupTitle(int $obj_id)
class ilRbacReview Contains Review functions of core Rbac.
$ref_id
Definition: ltiauth.php:66
global $DIC
Definition: shib_login.php:26
$counter