@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.)
hq.recaptime.dev/wiki/Phorge
phorge
phabricator
1<?php
2
3final class PhabricatorMailEmailMessage
4 extends PhabricatorMailExternalMessage {
5
6 const MESSAGETYPE = 'email';
7
8 private $fromAddress;
9 private $replyToAddress;
10 private $toAddresses = array();
11 private $ccAddresses = array();
12 private $headers = array();
13 private $attachments = array();
14 private $subject;
15 private $textBody;
16 private $htmlBody;
17
18 public function newMailMessageEngine() {
19 return new PhabricatorMailEmailEngine();
20 }
21
22 public function setFromAddress(PhutilEmailAddress $from_address) {
23 $this->fromAddress = $from_address;
24 return $this;
25 }
26
27 public function getFromAddress() {
28 return $this->fromAddress;
29 }
30
31 public function setReplyToAddress(PhutilEmailAddress $address) {
32 $this->replyToAddress = $address;
33 return $this;
34 }
35
36 public function getReplyToAddress() {
37 return $this->replyToAddress;
38 }
39
40 /**
41 * @param array<PhutilEmailAddress> $addresses
42 */
43 public function setToAddresses(array $addresses) {
44 assert_instances_of($addresses, PhutilEmailAddress::class);
45 $this->toAddresses = $addresses;
46 return $this;
47 }
48
49 public function getToAddresses() {
50 return $this->toAddresses;
51 }
52
53 /**
54 * @param array<PhutilEmailAddress> $addresses
55 */
56 public function setCCAddresses(array $addresses) {
57 assert_instances_of($addresses, PhutilEmailAddress::class);
58 $this->ccAddresses = $addresses;
59 return $this;
60 }
61
62 public function getCCAddresses() {
63 return $this->ccAddresses;
64 }
65
66 /**
67 * @param array<PhabricatorMailHeader> $headers
68 */
69 public function setHeaders(array $headers) {
70 assert_instances_of($headers, PhabricatorMailHeader::class);
71 $this->headers = $headers;
72 return $this;
73 }
74
75 public function getHeaders() {
76 return $this->headers;
77 }
78
79 /**
80 * @param array<PhabricatorMailAttachment> $attachments
81 */
82 public function setAttachments(array $attachments) {
83 assert_instances_of($attachments, PhabricatorMailAttachment::class);
84 $this->attachments = $attachments;
85 return $this;
86 }
87
88 public function getAttachments() {
89 return $this->attachments;
90 }
91
92 public function setSubject($subject) {
93 $this->subject = $subject;
94 return $this;
95 }
96
97 public function getSubject() {
98 return $this->subject;
99 }
100
101 public function setTextBody($text_body) {
102 $this->textBody = $text_body;
103 return $this;
104 }
105
106 public function getTextBody() {
107 return $this->textBody;
108 }
109
110 public function setHTMLBody($html_body) {
111 $this->htmlBody = $html_body;
112 return $this;
113 }
114
115 public function getHTMLBody() {
116 return $this->htmlBody;
117 }
118
119}