Improve email sending system and add Postmark as mail transport

This commit is contained in:
Frederic Guillot
2015-06-06 14:10:31 -04:00
parent c87e1fbc33
commit 9d9e3afba2
15 changed files with 284 additions and 137 deletions

View File

@@ -64,6 +64,7 @@ class ClassProvider implements ServiceProviderInterface
'Webhook',
),
'Core' => array(
'EmailClient',
'Helper',
'HttpClient',
'MemoryCache',
@@ -78,9 +79,10 @@ class ClassProvider implements ServiceProviderInterface
'HipchatWebhook',
'Jabber',
'MailgunWebhook',
'PostmarkWebhook',
'Postmark',
'SendgridWebhook',
'SlackWebhook',
'Smtp',
)
);

View File

@@ -1,33 +0,0 @@
<?php
namespace ServiceProvider;
use Pimple\Container;
use Pimple\ServiceProviderInterface;
use Swift_SmtpTransport;
use Swift_SendmailTransport;
use Swift_MailTransport;
class MailerProvider implements ServiceProviderInterface
{
public function register(Container $container)
{
$container['mailer'] = function () {
switch (MAIL_TRANSPORT) {
case 'smtp':
$transport = Swift_SmtpTransport::newInstance(MAIL_SMTP_HOSTNAME, MAIL_SMTP_PORT);
$transport->setUsername(MAIL_SMTP_USERNAME);
$transport->setPassword(MAIL_SMTP_PASSWORD);
$transport->setEncryption(MAIL_SMTP_ENCRYPTION);
break;
case 'sendmail':
$transport = Swift_SendmailTransport::newInstance(MAIL_SENDMAIL_COMMAND);
break;
default:
$transport = Swift_MailTransport::newInstance();
}
return $transport;
};
}
}