Пример #1
0
 /**
  * Cache content and split in parts if multipart
  *
  * @return null
  * @throws Zend_Mail_Exception
  */
 protected function _cacheContent()
 {
     // caching content if we can't fetch parts
     if ($this->_content === null && $this->_mail) {
         $this->_content = $this->_mail->getRawContent($this->_messageNum);
     }
     if (!$this->isMultipart()) {
         return;
     }
     // split content in parts
     $boundary = $this->getHeaderField('content-type', 'boundary');
     if (!$boundary) {
         /**
          * @see Zend_Mail_Exception
          */
         require_once 'Zend/Mail/Exception.php';
         throw new Zend_Mail_Exception('no boundary found in content type to split message');
     }
     $parts = Zend_Mime_Decode::splitMessageStruct($this->_content, $boundary);
     if ($parts === null) {
         return;
     }
     $partClass = $this->getPartClass();
     $counter = 1;
     foreach ($parts as $part) {
         $this->_parts[$counter++] = new $partClass(array('headers' => $part['header'], 'content' => $part['body']));
     }
 }
Пример #2
0
 /**
  * Cache content and split in parts if multipart
  *
  * @return null
  * @throws Zend_Mail_Exception
  */
 protected function _cacheContent()
 {
     // caching content if we can't fetch parts
     if ($this->_content === null && $this->_mail) {
         $this->_content = $this->_mail->getRawContent($this->_messageNum);
     }
     if (!$this->isMultipart()) {
         return;
     }
     // split content in parts
     $boundary = Zend_Mime_Decode::splitContentType($this->contentType, 'boundary');
     if (!$boundary) {
         throw new Zend_Mail_Exception('no boundary found in content type to split message');
     }
     $parts = Zend_Mime_Decode::splitMessageStruct($this->_content, $boundary);
     $counter = 1;
     foreach ($parts as $part) {
         $this->_parts[$counter++] = new self(array('headers' => $part['header'], 'content' => $part['body']));
     }
 }