ILIAS  trunk Revision v11.0_alpha-2662-g519ff7d528f
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.

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

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  }
+ 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.

References $user_id.

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

◆ isUser()

ILIAS\Mail\Recipient::isUser ( )

Definition at line 50 of file Recipient.php.

References ILIAS\Repository\user().

50  : bool
51  {
52  return !is_null($this->user);
53  }
+ Here is the call graph for this function:

◆ isUserActive()

ILIAS\Mail\Recipient::isUserActive ( )

Definition at line 55 of file Recipient.php.

References ILIAS\Repository\user().

55  : bool
56  {
57  return $this->user->getActive();
58  }
+ Here is the call graph for this function:

◆ isUserExpired()

ILIAS\Mail\Recipient::isUserExpired ( )

Definition at line 60 of file Recipient.php.

References ILIAS\Repository\user().

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

60  : bool
61  {
62  return !$this->user->checkTimeLimit();
63  }
+ 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.

References ilMailOptions\INCOMING_EMAIL.

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

◆ userWantsToReceiveExternalMails()

ILIAS\Mail\Recipient::userWantsToReceiveExternalMails ( )

Definition at line 74 of file Recipient.php.

References ilMailOptions\INCOMING_BOTH, and ilMailOptions\INCOMING_EMAIL.

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
final const int INCOMING_EMAIL

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