Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- use Phalcon\Mvc\User\Component,
- Phalcon\Mvc\View;
- require __DIR__ . '/../../vendor/swiftmailer/swiftmailer/lib/swift_required.php';
- class Mail extends Phalcon\Mvc\User\Component {
- protected $_transport;
- public function send($to, $subject, $name, $params) {
- $config = new Phalcon\Config\Adapter\Ini(__DIR__ . '/../config/config.ini');
- $mailConfig = $config->mail;
- $template = $this->getTemplate($name, $params);
- // Create the message
- $message = Swift_Message::newInstance()
- ->setSubject($subject)
- ->setTo($to)
- ->setFrom(array(
- $mailConfig->fromEmail => $mailConfig->fromName
- ))
- ->setBody($template, 'text/html');
- if (!$this->_transport) {
- $this->_transport = Swift_SmtpTransport::newInstance(
- $mailConfig->smtpServer,
- $mailConfig->smtpPort,
- $mailConfig->smtpSecurity
- )
- ->setUsername($mailConfig->smtpUsername)
- ->setPassword($mailConfig->smtpPassword);
- }
- // Create the Mailer using your created Transport
- $mailer = Swift_Mailer::newInstance($this->_transport);
- $mailer->send($message);
- }
- public function getTemplate($name, $params) {
- $parameters = array_merge(array(
- 'publicUrl' => "website.com",
- ), $params);
- return $this->view->getRender('emailTemplates', $name, $parameters, function($view){
- $view->setRenderLevel(View::LEVEL_LAYOUT);
- });
- return $view->getContent();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement