ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
class.ilMailMimeSubjectBuilder.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22{
23 public function __construct(private readonly ilSetting $settings, private readonly string $default_prefix)
24 {
25 }
26
27 public function subject(string $subject, bool $add_prefix = false, string $context_prefix = ''): string
28 {
29 $subject = trim($subject);
30 $context_prefix = trim($context_prefix);
31
32 if ($add_prefix) {
33 // #9096
34 $global_prefix = $this->settings->get('mail_subject_prefix');
35 if (!is_string($global_prefix)) {
36 $global_prefix = $this->default_prefix;
37 }
38 $global_prefix = trim($global_prefix);
39
40 $prefix = $global_prefix;
41 if ($context_prefix !== '') {
42 $prefix = str_replace(['[', ']',], '', $prefix);
43 if ($prefix !== '') {
44 $prefix = '[' . $prefix . ' : ' . $context_prefix . ']';
45 } else {
46 $prefix = '[' . $context_prefix . ']';
47 }
48 }
49
50 if ($prefix && $prefix !== '') {
51 $subject = $prefix . ' ' . $subject;
52 }
53 }
54
55 return $subject;
56 }
57}
subject(string $subject, bool $add_prefix=false, string $context_prefix='')
__construct(private readonly ilSetting $settings, private readonly string $default_prefix)
ILIAS Setting Class.