ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ILIAS\Mail\Recipient Class Reference
+ Collaboration diagram for ILIAS\Mail\Recipient:

Public Member Functions

 __construct (private int $user_id, private ?ilObjUser $user, private ilMailOptions $mail_options, private Conductor $legal_documents)
 
 getUserId ()
 
 getMailOptions ()
 
 isUser ()
 
 isUserActive ()
 
 isUserExpired ()
 
 evaluateInternalMailReadability ()
 
 userWantsToReceiveExternalMails ()
 
 onlyToExternalMailAddress ()
 
 getExternalMailAddress ()
 

Detailed Description

Definition at line 30 of file Recipient.php.

Constructor & Destructor Documentation

◆ __construct()

ILIAS\Mail\Recipient::__construct ( private int  $user_id,
private ?ilObjUser  $user,
private ilMailOptions  $mail_options,
private Conductor  $legal_documents 
)

Definition at line 32 of file Recipient.php.

37 {
38 }

Member Function Documentation

◆ evaluateInternalMailReadability()

ILIAS\Mail\Recipient::evaluateInternalMailReadability ( )

Definition at line 65 of file Recipient.php.

65 : Result
66 {
67 if ($this->isUserExpired()) {
68 return new Error('Account expired.');
69 }
70
71 return $this->legal_documents->userCanReadInternalMail()->applyTo(new Ok($this->user));
72 }

References ILIAS\Mail\Recipient\isUserExpired(), and ILIAS\Repository\user().

+ Here is the call graph for this function:

◆ getExternalMailAddress()

ILIAS\Mail\Recipient::getExternalMailAddress ( )
Returns
string[]

Definition at line 88 of file Recipient.php.

88 : array
89 {
90 return $this->mail_options->getExternalEmailAddresses();
91 }

◆ getMailOptions()

ILIAS\Mail\Recipient::getMailOptions ( )

Definition at line 45 of file Recipient.php.

46 {
47 return $this->mail_options;
48 }

◆ getUserId()

ILIAS\Mail\Recipient::getUserId ( )

Definition at line 40 of file Recipient.php.

40 : int
41 {
42 return $this->user_id;
43 }

References $user_id.

◆ isUser()

ILIAS\Mail\Recipient::isUser ( )

Definition at line 50 of file Recipient.php.

50 : bool
51 {
52 return !is_null($this->user);
53 }

References ILIAS\Repository\user().

+ Here is the call graph for this function:

◆ isUserActive()

ILIAS\Mail\Recipient::isUserActive ( )

Definition at line 55 of file Recipient.php.

55 : bool
56 {
57 return $this->user->getActive();
58 }

References ILIAS\Repository\user().

+ Here is the call graph for this function:

◆ isUserExpired()

ILIAS\Mail\Recipient::isUserExpired ( )

Definition at line 60 of file Recipient.php.

60 : bool
61 {
62 return !$this->user->checkTimeLimit();
63 }

References ILIAS\Repository\user().

Referenced by ILIAS\Mail\Recipient\evaluateInternalMailReadability().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ onlyToExternalMailAddress()

ILIAS\Mail\Recipient::onlyToExternalMailAddress ( )

Definition at line 80 of file Recipient.php.

80 : bool
81 {
82 return $this->mail_options->getIncomingType() === ilMailOptions::INCOMING_EMAIL;
83 }
final const int INCOMING_EMAIL

References ilMailOptions\INCOMING_EMAIL.

◆ userWantsToReceiveExternalMails()

ILIAS\Mail\Recipient::userWantsToReceiveExternalMails ( )

Definition at line 74 of file Recipient.php.

74 : bool
75 {
76 return $this->mail_options->getIncomingType() === ilMailOptions::INCOMING_EMAIL ||
77 $this->mail_options->getIncomingType() === ilMailOptions::INCOMING_BOTH;
78 }
final const int INCOMING_BOTH

References ilMailOptions\INCOMING_BOTH, and ilMailOptions\INCOMING_EMAIL.


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