1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-09-20 16:31:33 +02:00

Fixes for gmail attachments

This commit is contained in:
David Bomba 2021-02-11 18:58:37 +11:00
parent a508b8f9ae
commit e11592e172
2 changed files with 8 additions and 28 deletions

View File

@ -61,42 +61,22 @@ class GmailTransport extends Transport
$this->gmail->cc($message->getCc());
$this->gmail->bcc($message->getBcc());
foreach ($message->getChildren() as $child) {
nlog("trying to attach");
nlog($child->getContentType());
foreach ($message->getChildren() as $child)
{
if($child->getContentType() != 'text/plain'){
nlog($child->getHeaders());
$this->gmail->attach(TempFile::filePath($child));
}
foreach ($message->getChildren() as $child) {
nlog("trying to attach");
if($child->getContentType() != 'text/plain'){
if($child->getContentType() != 'text/plain')
{
// $attachment = (new Swift_Attachment())
// ->setFilename($child->getHeaders()->get('Content-Type')->getParameter('name'))
// ->setContentType($child->getContentType())
// ->setBody($child->getBody());
$this->gmail->attach(new Swift_Attachment($child));
$this->gmail->attach(TempFile::filePath($child->getBody(), $child->getHeaders()->get('Content-Type')->getParameter('name') ));
}
} //todo this should 'just work'
}
} //todo this should 'just work'
$this->gmail->send();
$this->sendPerformed($message);

View File

@ -22,10 +22,10 @@ class TempFile
}
/* Downloads a file to temp storage and returns the path - used for mailers */
public static function filePath($data) :string
public static function filePath($data, $filename) :string
{
$file_path = sys_get_temp_dir().'/'.sha1(microtime());
$file_path = sys_get_temp_dir().'/'.sha1(microtime() . '/' . $filename);
file_put_contents($file_path, $data);