diff --git a/snappymail/v/0.0.0/app/libraries/MailSo/Imap/Commands/Messages.php b/snappymail/v/0.0.0/app/libraries/MailSo/Imap/Commands/Messages.php index ffd1aeb37..51630cddc 100644 --- a/snappymail/v/0.0.0/app/libraries/MailSo/Imap/Commands/Messages.php +++ b/snappymail/v/0.0.0/app/libraries/MailSo/Imap/Commands/Messages.php @@ -135,15 +135,19 @@ trait Messages /** * Appends message to specified folder * - * @param resource $rMessageAppendStream + * @param resource $rMessageStream * * @throws \InvalidArgumentException * @throws \MailSo\RuntimeException * @throws \MailSo\Net\Exceptions\* * @throws \MailSo\Imap\Exceptions\* */ - public function MessageAppendStream(string $sFolderName, $rMessageAppendStream, int $iStreamSize, array $aFlagsList = null, int $iDateTime = 0) : ?int + public function MessageAppendStream(string $sFolderName, $rMessageStream, int $iStreamSize, array $aFlagsList = null, int $iDateTime = 0) : ?int { + if (!\is_resource($rMessageStream) || !\strlen($sFolderName) || 1 > $iStreamSize) { + throw new \InvalidArgumentException; + } + $aParams = array( $this->EscapeFolderName($sFolderName), $aFlagsList @@ -162,7 +166,7 @@ trait Messages $this->SendRequestGetResponse('APPEND', $aParams); - return $this->writeMessageStream($rMessageAppendStream); + return $this->writeMessageStream($rMessageStream); } private function writeMessageStream($rMessageStream) : ?int diff --git a/snappymail/v/0.0.0/app/libraries/MailSo/Mail/MailClient.php b/snappymail/v/0.0.0/app/libraries/MailSo/Mail/MailClient.php index 964c926ef..85f862959 100644 --- a/snappymail/v/0.0.0/app/libraries/MailSo/Mail/MailClient.php +++ b/snappymail/v/0.0.0/app/libraries/MailSo/Mail/MailClient.php @@ -258,23 +258,7 @@ class MailClient return ($aFetchResponse && 1 === \count($aFetchResponse)); } - /** - * @param resource $rMessageStream - */ - public function MessageAppendStream($rMessageStream, int $iMessageStreamSize, string $sFolderToSave, array $aAppendFlags = null, int &$iUid = null) : self - { - if (!\is_resource($rMessageStream) || !\strlen($sFolderToSave)) - { - throw new \InvalidArgumentException; - } - - $iUid = $this->oImapClient->MessageAppendStream( - $sFolderToSave, $rMessageStream, $iMessageStreamSize, $aAppendFlags); - - return $this; - } - - public function MessageAppendFile(string $sMessageFileName, string $sFolderToSave, array $aAppendFlags = null, int &$iUid = null) : self + public function MessageAppendFile(string $sMessageFileName, string $sFolderToSave, array $aAppendFlags = null) : int { if (!\is_file($sMessageFileName) || !\is_readable($sMessageFileName)) { throw new \InvalidArgumentException; @@ -283,13 +267,11 @@ class MailClient $iMessageStreamSize = \filesize($sMessageFileName); $rMessageStream = \fopen($sMessageFileName, 'rb'); - $this->MessageAppendStream($rMessageStream, $iMessageStreamSize, $sFolderToSave, $aAppendFlags, $iUid); + $iUid = $this->oImapClient->MessageAppendStream($sFolderToSave, $rMessageStream, $iMessageStreamSize, $aAppendFlags); - if (\is_resource($rMessageStream)) { - \fclose($rMessageStream); - } + \fclose($rMessageStream); - return $this; + return $iUid; } /** diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Folders.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Folders.php index 50b99230c..1a64526c3 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Folders.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Folders.php @@ -37,7 +37,7 @@ trait Folders if ($this->FilesProvider()->MoveUploadedFile($oAccount, $sSavedName, $_FILES['appendFile']['tmp_name'])) { $iMessageStreamSize = $this->FilesProvider()->FileSize($oAccount, $sSavedName); $rMessageStream = $this->FilesProvider()->GetFile($oAccount, $sSavedName); - $this->MailClient()->MessageAppendStream($rMessageStream, $iMessageStreamSize, $sFolderFullName); + $this->ImapClient()->MessageAppendStream($sFolderFullName, $rMessageStream, $iMessageStreamSize); $this->FilesProvider()->Clear($oAccount, $sSavedName); return $this->TrueResponse(); } diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Messages.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Messages.php index 76250d996..ec837ebef 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Messages.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions/Messages.php @@ -122,9 +122,8 @@ trait Messages \rewind($rMessageStream); - $iNewUid = 0; - $this->MailClient()->MessageAppendStream( - $rMessageStream, $iMessageStreamSize, $sDraftFolder, array(MessageFlag::SEEN), $iNewUid + $iNewUid = $this->ImapClient()->MessageAppendStream( + $sDraftFolder, $rMessageStream, $iMessageStreamSize, array(MessageFlag::SEEN) ); if (!empty($sMessageId) && (null === $iNewUid || 0 === $iNewUid)) { @@ -213,8 +212,8 @@ trait Messages $this->Plugins()->RunHook('filter.send-message-stream', array($oAccount, &$rMessageStream, &$iMessageStreamSize)); - $this->MailClient()->MessageAppendStream( - $rMessageStream, $iMessageStreamSize, $sSentFolder, array(MessageFlag::SEEN) + $this->ImapClient()->MessageAppendStream( + $sSentFolder, $rMessageStream, $iMessageStreamSize, array(MessageFlag::SEEN) ); } else { $rAppendMessageStream = \MailSo\Base\ResourceRegistry::CreateMemoryResource(); @@ -225,8 +224,8 @@ trait Messages $this->Plugins()->RunHook('filter.send-message-stream', array($oAccount, &$rAppendMessageStream, &$iAppendMessageStreamSize)); - $this->MailClient()->MessageAppendStream( - $rAppendMessageStream, $iAppendMessageStreamSize, $sSentFolder, array(MessageFlag::SEEN) + $this->ImapClient()->MessageAppendStream( + $sSentFolder, $rAppendMessageStream, $iAppendMessageStreamSize, array(MessageFlag::SEEN) ); if (\is_resource($rAppendMessageStream)) {