stephenfarrell / postmark-bundle
A minor update of Miguel Perez's no-longer maintained code from https://github.com/miguel250/PostmarkBundle to allow for Symfony 3 compatibility. All credit/kudos/thanks for the work should obviously go to him
Installs: 4 453
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 12
Type:symfony-bundle
Requires
- php: >=5.3.2
- kriswallsmith/buzz: >=0.9
- symfony/framework-bundle: 2.*
This package is not auto-updated.
Last update: 2024-04-27 17:20:38 UTC
README
Symfony3 bundle for Postmark API
This is a ridiculously minor update of Miguel Perez's no-longer maintained code from https://github.com/miguel250/PostmarkBundle to allow for Symfony 3 compatibility. All credit/kudos/thanks for the work should obviously go to him
Setup
Using Composer Add PostmarkBundle in your composer.json:
{ "require": { "stephenfarrell/postmark-bundle": "*" } }
$ php composer.phar update mlpz/postmark-bundle
Using Submodule
git submodule add https://github.com/miguel250/PostmarkBundle.git vendor/bundles/MZ/PostmarkBundle
git submodule add https://github.com/kriswallsmith/Buzz.git vendor/buzz
Add the MZ namespace to autoloader You can skip this when using Composer
<?php // app/autoload.php $loader->registerNamespaces(array( // ... 'MZ' => __DIR__.'/../vendor/bundles', 'Buzz' => __DIR__.'/../vendor/buzz/lib', ));
Add PostmarkBundle to your application kernel
<?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new MZ\PostmarkBundle\MZPostmarkBundle(), ); }
Enable Postmark in config.yml
mz_postmark: api_key: API KEY from_email: info@my-app.com from_name: My App, Inc use_ssl: true timeout: 5
Usage
Message Service
<?php $message = $this->get('postmark.message'); $message->addTo('test@gmail.com', 'Test Test'); $message->setSubject('subject'); $message->setHTMLMessage('<b>email body</b>'); $message->addAttachment(new Symfony\Component\HttpFoundation\File\File(__FILE__)); $response = $message->send(); $message->addTo('test2@gmail.com', 'Test2 Test'); $message->setSubject('subject2'); $message->setHTMLMessage('<b>email body</b>'); $message->addAttachment(new Symfony\Component\HttpFoundation\File\File(__FILE__), 'usethisfilename.php', 'text/plain'); $response = $message->send(); ?>
Sending in batch
<?php $message = $this->get('postmark.message'); $message->addTo('test@gmail.com', 'Test Test'); $message->setSubject('subject'); $message->setHTMLMessage('<b>email body</b>'); $message->queue(); // Queue the message instead of sending it directly $message->addTo('test2@gmail.com', 'Test2 Test'); $message->setSubject('subject2'); $message->setHTMLMessage('<b>email body</b>'); $responses = $message->send(); // Send both messages, note that you'll get an array of json responses instead of just the json response ?>