43 public function __construct($subject = null, $body = null, $contentType = null, $charset = null)
46 array($this,
'Swift_Mime_SimpleMessage::__construct'),
48 ->createDependenciesFor(
'mime.message')
51 if (!isset($charset)) {
53 ->lookup(
'properties.charset');
73 public static function newInstance($subject = null, $body = null, $contentType = null, $charset = null)
75 return new self($subject, $body, $contentType, $charset);
87 public function addPart($body, $contentType = null, $charset = null)
90 $body, $contentType, $charset
104 $this->headerSigners[] = $signer;
106 $this->bodySigners[] = $signer;
122 foreach ($this->headerSigners as $k => $headerSigner) {
123 if ($headerSigner === $signer) {
124 unset($this->headerSigners[$k]);
130 foreach ($this->bodySigners as $k => $bodySigner) {
131 if ($bodySigner === $signer) {
132 unset($this->bodySigners[$k]);
149 if (empty($this->headerSigners) && empty($this->bodySigners)) {
150 return parent::toString();
157 $string = parent::toString();
171 if (empty($this->headerSigners) && empty($this->bodySigners)) {
172 parent::toByteStream($is);
181 parent::toByteStream($is);
196 foreach ($this->bodySigners as $signer) {
197 $altered = $signer->getAlteredHeaders();
199 $signer->signMessage($this);
202 foreach ($this->headerSigners as $signer) {
203 $altered = $signer->getAlteredHeaders();
209 $signer->startBody();
222 $this->savedMessage = array(
'headers' => array());
223 $this->savedMessage[
'body'] = $this->
getBody();
224 $this->savedMessage[
'children'] = $this->
getChildren();
225 if (count($this->savedMessage[
'children']) > 0 && $this->
getBody() !=
'') {
238 foreach ($altered as $head) {
239 $lc = strtolower($head);
241 if (!isset($this->savedMessage[
'headers'][$lc])) {
242 $this->savedMessage[
'headers'][$lc] = $this->
getHeaders()->getAll($head);
252 foreach ($this->savedMessage[
'headers'] as $name => $savedValue) {
253 $headers = $this->
getHeaders()->getAll($name);
255 foreach ($headers as $key => $value) {
256 if (!isset($savedValue[$key])) {
268 $this->
setBody($this->savedMessage[
'body']);
269 $this->
setChildren($this->savedMessage[
'children']);
272 $this->savedMessage = array();
283 foreach ($this->bodySigners as $key => $bodySigner) {
284 $this->bodySigners[$key] = clone($bodySigner);
287 foreach ($this->headerSigners as $key => $headerSigner) {
288 $this->headerSigners[$key] = clone($headerSigner);