Ejemplo n.º 1
0
 /**
  * Retrieve email address for envelope FROM 
  * 
  * @param  Message $message 
  * @return string
  */
 protected function prepareFromAddress(Message $message)
 {
     $sender = $message->getSender();
     if ($sender instanceof AddressDescription) {
         return $sender->getEmail();
     }
     $from = $message->from();
     if (!count($from)) {
         throw new Exception\RuntimeException(sprintf('%s transport expects either a Sender or at least one From address in the Message; none provided', __CLASS__));
     }
     $from->rewind();
     $sender = $from->current();
     return $sender->getEmail();
 }
Ejemplo n.º 2
0
 /**
  * Prepare additional_parameters argument
  *
  * Basically, overrides the MAIL FROM envelope with either the Sender or 
  * From address.
  * 
  * @param  Message $message 
  * @return string
  */
 protected function prepareParameters(Message $message)
 {
     if ($this->isWindowsOs()) {
         return null;
     }
     $parameters = (string) $this->parameters;
     $sender = $message->getSender();
     if ($sender instanceof AddressDescription) {
         $parameters .= ' -r ' . $sender->getEmail();
         return $parameters;
     }
     $from = $message->from();
     if (count($from)) {
         $from->rewind();
         $sender = $from->current();
         $parameters .= ' -r ' . $sender->getEmail();
         return $parameters;
     }
     return $parameters;
 }