diff --git a/app/Helpers/Mail/GmailTransport.php b/app/Helpers/Mail/GmailTransport.php index 81182b44d27d..9473f6c106a8 100644 --- a/app/Helpers/Mail/GmailTransport.php +++ b/app/Helpers/Mail/GmailTransport.php @@ -11,6 +11,7 @@ namespace App\Helpers\Mail; +use App\Utils\TempFile; use Dacastro4\LaravelGmail\Services\Message\Mail; use Illuminate\Mail\Transport\Transport; use Swift_Mime_SimpleMessage; @@ -64,8 +65,11 @@ class GmailTransport extends Transport nlog("trying to attach"); nlog($child->getContentType()); - if($child->getContentType() != 'text/plain') - $this->gmail->attach($child); + if($child->getContentType() != 'text/plain'){ + + $this->gmail->attach(TempFile::filePath($child)); + + } } //todo this should 'just work' diff --git a/app/Utils/TempFile.php b/app/Utils/TempFile.php index 1907e49d10c7..97e71ecf01fc 100644 --- a/app/Utils/TempFile.php +++ b/app/Utils/TempFile.php @@ -20,4 +20,16 @@ class TempFile return $temp_path; } + + /* Downloads a file to temp storage and returns the path - used for mailers */ + public static function filePath($data) :string + { + + $file_path = sys_get_temp_dir().'/'.sha1(microtime()); + + file_put_contents($file_path, $data); + + return $file_path; + + } }