Example #1
0
 /**
  * Append a mail message (source) to a specific folder
  *
  * @param string       $folder  Target folder
  * @param string|array $message The message source string or filename
  *                              or array (of strings and file pointers)
  * @param string       $headers Headers string if $message contains only the body
  * @param boolean      $is_file True if $message is a filename
  * @param array        $flags   Message flags
  * @param mixed        $date    Message internal date
  * @param bool         $binary  Enables BINARY append
  *
  * @return int|bool Appended message UID or True on success, False on error
  */
 public function save_message($folder, &$message, $headers = '', $is_file = false, $flags = array(), $date = null, $binary = false)
 {
     if (!strlen($folder)) {
         $folder = $this->folder;
     }
     if (!$this->check_connection()) {
         return false;
     }
     // make sure folder exists
     if (!$this->folder_exists($folder)) {
         return false;
     }
     $date = $this->date_format($date);
     if ($is_file) {
         $saved = $this->conn->appendFromFile($folder, $message, $headers, $flags, $date, $binary);
     } else {
         $saved = $this->conn->append($folder, $message, $flags, $date, $binary);
     }
     if ($saved) {
         // increase messagecount of the target folder
         $this->set_messagecount($folder, 'ALL', 1);
         $this->plugins->exec_hook('message_saved', array('folder' => $folder, 'message' => $message, 'headers' => $headers, 'is_file' => $is_file, 'flags' => $flags, 'date' => $date, 'binary' => $binary, 'result' => $saved));
     }
     return $saved;
 }
Example #2
0
    /**
     * Append a mail message (source) to a specific folder
     *
     * @param string       $folder  Target folder
     * @param string|array $message The message source string or filename
     *                              or array (of strings and file pointers)
     * @param string       $headers Headers string if $message contains only the body
     * @param boolean      $is_file True if $message is a filename
     * @param array        $flags   Message flags
     * @param mixed        $date    Message internal date
     * @param bool         $binary  Enables BINARY append
     *
     * @return int|bool Appended message UID or True on success, False on error
     */
    public function save_message($folder, &$message, $headers='', $is_file=false, $flags = array(), $date = null, $binary = false)
    {
        if (!strlen($folder)) {
            $folder = $this->folder;
        }

        if (!$this->check_connection()) {
            return false;
        }

        // make sure folder exists
        if (!$this->folder_exists($folder)) {
            return false;
        }

        $date = $this->date_format($date);

        if ($is_file) {
            $saved = $this->conn->appendFromFile($folder, $message, $headers, $flags, $date, $binary);
        }
        else {
            $saved = $this->conn->append($folder, $message, $flags, $date, $binary);
        }

        if ($saved) {
            // increase messagecount of the target folder
            $this->set_messagecount($folder, 'ALL', 1);
        }

        return $saved;
    }
Example #3
0
 /**
  * Append a mail message (source) to a specific mailbox
  *
  * @param string  $mbox_name Target mailbox
  * @param string  $message   The message source string or filename
  * @param string  $headers   Headers string if $message contains only the body
  * @param boolean $is_file   True if $message is a filename
  *
  * @return boolean True on success, False on error
  */
 function save_message($mbox_name, &$message, $headers = '', $is_file = false)
 {
     $mailbox = $this->mod_mailbox($mbox_name);
     // make sure mailbox exists
     if ($this->mailbox_exists($mbox_name)) {
         if ($is_file) {
             $saved = $this->conn->appendFromFile($mailbox, $message, $headers);
         } else {
             $saved = $this->conn->append($mailbox, $message);
         }
     }
     if ($saved) {
         // increase messagecount of the target mailbox
         $this->_set_messagecount($mailbox, 'ALL', 1);
     }
     return $saved;
 }
Example #4
0
 /**
  * Append a mail message (source) to a specific folder
  *
  * @param string  $folder  Target folder
  * @param string  $message The message source string or filename
  * @param string  $headers Headers string if $message contains only the body
  * @param boolean $is_file True if $message is a filename
  *
  * @return int|bool Appended message UID or True on success, False on error
  */
 public function save_message($folder, &$message, $headers = '', $is_file = false)
 {
     if (!strlen($folder)) {
         $folder = $this->folder;
     }
     // make sure folder exists
     if ($this->folder_exists($folder)) {
         if ($is_file) {
             $saved = $this->conn->appendFromFile($folder, $message, $headers);
         } else {
             $saved = $this->conn->append($folder, $message);
         }
     }
     if ($saved) {
         // increase messagecount of the target folder
         $this->set_messagecount($folder, 'ALL', 1);
     }
     return $saved;
 }