ILIAS  release_8 Revision v8.19
All Data Structures Namespaces Files Functions Variables Modules Pages
ilMailTemplateService Class Reference

Class ilMailTemplateService. More...

+ Collaboration diagram for ilMailTemplateService:

Public Member Functions

 __construct (ilMailTemplateRepository $repository)
 
 createNewTemplate (string $contextId, string $title, string $subject, string $message, string $language)
 
 modifyExistingTemplate (int $templateId, string $contextId, string $title, string $subject, string $message, string $language)
 
 loadTemplateForId (int $templateId)
 
 loadTemplatesForContextId (string $contextId)
 
 deleteTemplatesByIds (array $templateIds)
 
 listAllTemplatesAsArray ()
 
 unsetAsContextDefault (ilMailTemplate $template)
 
 setAsContextDefault (ilMailTemplate $template)
 

Protected Attributes

ilMailTemplateRepository $repository
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ilMailTemplateService::__construct ( ilMailTemplateRepository  $repository)

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

References $repository, and ILIAS\UI\examples\Deck\repository().

31  {
32  $this->repository = $repository;
33  }
ilMailTemplateRepository $repository
+ Here is the call graph for this function:

Member Function Documentation

◆ createNewTemplate()

ilMailTemplateService::createNewTemplate ( string  $contextId,
string  $title,
string  $subject,
string  $message,
string  $language 
)

Definition at line 35 of file class.ilMailTemplateService.php.

References ILIAS\UI\examples\Deck\repository().

41  : ilMailTemplate {
42  $template = new ilMailTemplate();
43  $template->setContext($contextId);
44  $template->setTitle($title);
45  $template->setSubject($subject);
46  $template->setMessage($message);
47  $template->setLang($language);
48 
49  $this->repository->store($template);
50 
51  return $template;
52  }
Class ilMailTemplate.
$message
Definition: xapiexit.php:32
+ Here is the call graph for this function:

◆ deleteTemplatesByIds()

ilMailTemplateService::deleteTemplatesByIds ( array  $templateIds)
Parameters
int[]$templateIds

Definition at line 90 of file class.ilMailTemplateService.php.

References ILIAS\UI\examples\Deck\repository().

90  : void
91  {
92  $this->repository->deleteByIds($templateIds);
93  }
+ Here is the call graph for this function:

◆ listAllTemplatesAsArray()

ilMailTemplateService::listAllTemplatesAsArray ( )
Returns
array[]

Definition at line 98 of file class.ilMailTemplateService.php.

References ILIAS\UI\examples\Deck\repository(), and ilMailTemplate\toArray().

98  : array
99  {
100  $templates = $this->repository->getAll();
101 
102  return array_map(static function (ilMailTemplate $template): array {
103  return $template->toArray();
104  }, $templates);
105  }
Class ilMailTemplate.
+ Here is the call graph for this function:

◆ loadTemplateForId()

ilMailTemplateService::loadTemplateForId ( int  $templateId)

Definition at line 73 of file class.ilMailTemplateService.php.

References ILIAS\UI\examples\Deck\repository().

74  {
75  return $this->repository->findById($templateId);
76  }
Class ilMailTemplate.
+ Here is the call graph for this function:

◆ loadTemplatesForContextId()

ilMailTemplateService::loadTemplatesForContextId ( string  $contextId)
Parameters
string$contextId
Returns
ilMailTemplate[]

Definition at line 82 of file class.ilMailTemplateService.php.

References ILIAS\UI\examples\Deck\repository().

82  : array
83  {
84  return $this->repository->findByContextId($contextId);
85  }
+ Here is the call graph for this function:

◆ modifyExistingTemplate()

ilMailTemplateService::modifyExistingTemplate ( int  $templateId,
string  $contextId,
string  $title,
string  $subject,
string  $message,
string  $language 
)

Definition at line 54 of file class.ilMailTemplateService.php.

References ILIAS\UI\examples\Deck\repository().

61  : void {
62  $template = $this->repository->findById($templateId);
63 
64  $template->setContext($contextId);
65  $template->setTitle($title);
66  $template->setSubject($subject);
67  $template->setMessage($message);
68  $template->setLang($language);
69 
70  $this->repository->store($template);
71  }
$message
Definition: xapiexit.php:32
+ Here is the call graph for this function:

◆ setAsContextDefault()

ilMailTemplateService::setAsContextDefault ( ilMailTemplate  $template)

Definition at line 114 of file class.ilMailTemplateService.php.

References ilMailTemplate\getContext(), ilMailTemplate\getTplId(), and ILIAS\UI\examples\Deck\repository().

114  : void
115  {
116  $allOfContext = $this->repository->findByContextId($template->getContext());
117  foreach ($allOfContext as $otherTemplate) {
118  $otherTemplate->setAsDefault(false);
119 
120  if ($template->getTplId() === $otherTemplate->getTplId()) {
121  $otherTemplate->setAsDefault(true);
122  }
123 
124  $this->repository->store($otherTemplate);
125  }
126  }
+ Here is the call graph for this function:

◆ unsetAsContextDefault()

ilMailTemplateService::unsetAsContextDefault ( ilMailTemplate  $template)

Definition at line 107 of file class.ilMailTemplateService.php.

References ILIAS\UI\examples\Deck\repository(), and ilMailTemplate\setAsDefault().

107  : void
108  {
109  $template->setAsDefault(false);
110 
111  $this->repository->store($template);
112  }
setAsDefault(bool $isDefault)
+ Here is the call graph for this function:

Field Documentation

◆ $repository

ilMailTemplateRepository ilMailTemplateService::$repository
protected

Definition at line 28 of file class.ilMailTemplateService.php.

Referenced by __construct().


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