This commit is contained in:
James Cole 2018-09-27 13:54:59 +02:00
parent b1e742c26c
commit a3841855e4
No known key found for this signature in database
GPG Key ID: C16961E655E74B5E
2 changed files with 14 additions and 0 deletions

View File

@ -23,6 +23,7 @@ declare(strict_types=1);
namespace FireflyIII\Helpers\Attachments;
use Crypt;
use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Models\Attachment;
use Illuminate\Contracts\Encryption\DecryptException;
use Illuminate\Database\Eloquent\Model;
@ -245,6 +246,7 @@ class AttachmentHelper implements AttachmentHelperInterface
*
* @return Attachment|null
* @throws \Illuminate\Contracts\Encryption\EncryptException
* @throws FireflyException
*/
protected function processFile(UploadedFile $file, Model $model): ?Attachment
{
@ -266,6 +268,11 @@ class AttachmentHelper implements AttachmentHelperInterface
$fileObject = $file->openFile('r');
$fileObject->rewind();
if(0 === $file->getSize()) {
throw new FireflyException('Cannot upload empty or non-existent file.');
}
$content = $fileObject->fread($file->getSize());
$encrypted = Crypt::encrypt($content);
Log::debug(sprintf('Full file length is %d and upload size is %d.', \strlen($content), $file->getSize()));

View File

@ -342,6 +342,7 @@ class ImportJobRepository implements ImportJobRepositoryInterface
* @param UploadedFile $file
*
* @return MessageBag
* @throws FireflyException
*/
public function storeFileUpload(ImportJob $job, string $name, UploadedFile $file): MessageBag
{
@ -374,6 +375,12 @@ class ImportJobRepository implements ImportJobRepositoryInterface
$attachment->save();
$fileObject = $file->openFile('r');
$fileObject->rewind();
if(0 === $file->getSize()) {
throw new FireflyException('Cannot upload empty or non-existent file.');
}
$content = $fileObject->fread($file->getSize());
$encrypted = Crypt::encrypt($content);
$this->uploadDisk->put($attachment->fileName(), $encrypted);