ILIAS  trunk Revision v11.0_alpha-1723-g8e69f309bab
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
MailUserSignature.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
21 namespace ILIAS\Mail\Signature;
22 
23 use ilSetting;
30 
31 class MailUserSignature implements Signature
32 {
33  public const MAIL_USER_SIGNATURE = 'mail_system_usr_general_signature';
34 
35  public function __construct(
36  private readonly ilSetting $settings,
37  ) {
38  }
39 
40  public function getSignature(): string
41  {
42  return $this->settings->get($this->getPersistenceIdentifier(), '');
43  }
44 
45  public function getPersistenceIdentifier(): string
46  {
47  return self::MAIL_USER_SIGNATURE;
48  }
49 
50  public function supports(Placeholder $placeholder): bool
51  {
52  return match ($placeholder::class) {
53  MailSignatureIliasUrlPlaceholder::class,
54  MailSignatureInstallationNamePlaceholder::class,
55  MailSignatureInstallationDescriptionPlaceholder::class,
56  MailSignatureUserLoginPlaceholder::class,
57  MailSignatureUserFullnamePlaceholder::class,
58  => true,
59  default => false,
60  };
61  }
62 }
__construct(private readonly ilSetting $settings,)