zendMessage = new \Zend\Mail\Message(); $this->zendMessage->setEncoding($charset); } /** * @inheritdoc * * @deprecated 102.0.0 * @see \Magento\Framework\Mail\Message::setBodyText * @see \Magento\Framework\Mail\Message::setBodyHtml */ public function setMessageType($type) { $this->messageType = $type; return $this; } /** * @inheritdoc * * @deprecated 102.0.0 * @see \Magento\Framework\Mail\Message::setBodyText * @see \Magento\Framework\Mail\Message::setBodyHtml */ public function setBody($body) { if (is_string($body) && $this->messageType === MailMessageInterface::TYPE_HTML) { $body = self::createHtmlMimeFromString($body); } $this->zendMessage->setBody($body); return $this; } /** * @inheritdoc */ public function setSubject($subject) { $this->zendMessage->setSubject($subject); return $this; } /** * @inheritdoc */ public function getSubject() { return $this->zendMessage->getSubject(); } /** * @inheritdoc */ public function getBody() { return $this->zendMessage->getBody(); } /** * @inheritdoc * * @deprecated 102.0.1 This function is missing the from name. The * setFromAddress() function sets both from address and from name. * @see setFromAddress() */ public function setFrom($fromAddress) { $this->setFromAddress($fromAddress, null); return $this; } /** * @inheritdoc */ public function setFromAddress($fromAddress, $fromName = null) { $this->zendMessage->setFrom($fromAddress, $fromName); return $this; } /** * @inheritdoc */ public function addTo($toAddress) { $this->zendMessage->addTo($toAddress); return $this; } /** * @inheritdoc */ public function addCc($ccAddress) { $this->zendMessage->addCc($ccAddress); return $this; } /** * @inheritdoc */ public function addBcc($bccAddress) { $this->zendMessage->addBcc($bccAddress); return $this; } /** * @inheritdoc */ public function setReplyTo($replyToAddress) { $this->zendMessage->setReplyTo($replyToAddress); return $this; } /** * @inheritdoc */ public function getRawMessage() { return $this->zendMessage->toString(); } /** * Create HTML mime message from the string. * * @param string $htmlBody * @return \Zend\Mime\Message */ private function createHtmlMimeFromString($htmlBody) { $htmlPart = new Part($htmlBody); $htmlPart->setCharset($this->zendMessage->getEncoding()); $htmlPart->setType(Mime::TYPE_HTML); $mimeMessage = new \Zend\Mime\Message(); $mimeMessage->addPart($htmlPart); return $mimeMessage; } /** * @inheritdoc */ public function setBodyHtml($html) { $this->setMessageType(self::TYPE_HTML); return $this->setBody($html); } /** * @inheritdoc */ public function setBodyText($text) { $this->setMessageType(self::TYPE_TEXT); return $this->setBody($text); } }