123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- <?php
-
-
-
- class Swift_Plugins_ImpersonatePlugin implements \Swift_Events_SendListener {
-
-
-
- private $_sender;
-
-
-
- public function __construct($sender) {
- $this->_sender = $sender;
- }
-
-
-
- public function beforeSendPerformed(Swift_Events_SendEvent $evt) {
- $message = $evt->getMessage();
- $headers = $message->getHeaders();
-
-
- $headers->addPathHeader('X-Swift-Return-Path', $message->getReturnPath());
-
-
- $message->setReturnPath($this->_sender);
- }
-
-
-
- public function sendPerformed(Swift_Events_SendEvent $evt) {
- $message = $evt->getMessage();
-
-
- $headers = $message->getHeaders();
-
- if ($headers->has('X-Swift-Return-Path')) {
- $message->setReturnPath($headers->get('X-Swift-Return-Path')->getAddress());
- $headers->removeAll('X-Swift-Return-Path');
- }
- }
- }
|