* @since 2.0 */ abstract class BaseMessage extends Object implements MessageInterface { /** * @return \yii\mail\BaseMailer mailer component instance. */ public function getMailer() { return Yii::$app->getComponent('mail'); } /** * @inheritdoc */ public function send() { return $this->getMailer()->send($this); } /** * @inheritdoc */ public function renderHtml($view, $params = []) { $this->html($this->getMailer()->render($view, $params, $this->getMailer()->htmlLayout)); return $this; } /** * @inheritdoc */ public function renderText($view, $params = []) { $this->text($this->getMailer()->render($view, $params, $this->getMailer()->textLayout)); return $this; } /** * @inheritdoc */ public function body($view, $params = []) { if (is_array($view)) { $this->renderHtml($view['html'], $params); $this->renderText($view['text'], $params); } else { $html = $this->getMailer()->render($view, $params, $this->getMailer()->htmlLayout); $this->html($html); $this->text(strip_tags($html)); } return $this; } }