Snowfire\Beautymail\CssInlinerPlugin::beforeSendPerformed PHP Method

beforeSendPerformed() public method

Inline the CSS before an email is sent.
public beforeSendPerformed ( Swift_Events_SendEvent $evt )
$evt Swift_Events_SendEvent
    public function beforeSendPerformed(\Swift_Events_SendEvent $evt)
    {
        $message = $evt->getMessage();
        $properTypes = ['text/html', 'multipart/alternative', 'multipart/mixed'];
        if ($message->getBody() && in_array($message->getContentType(), $properTypes)) {
            $this->inliner->setHtml($message->getBody());
            $message->setBody($this->inliner->emogrify());
        }
        foreach ($message->getChildren() as $part) {
            if (strpos($part->getContentType(), 'text/html') === 0) {
                $this->inliner->setHtml($part->getBody());
                $message->setBody($this->inliner->emogrify());
            }
        }
    }