Fix file sending, as a result of moving $size into Send::class when optimising mail sending

This commit is contained in:
Deon George 2024-06-21 12:15:22 +10:00
parent 0a5374c743
commit 7bd192980f
4 changed files with 18 additions and 9 deletions

View File

@ -41,7 +41,6 @@ final class File extends Send
return $this->f->datetime->timestamp;
case 'name':
case 'size':
return $this->f->{$key};
case 'type':
@ -84,6 +83,8 @@ final class File extends Send
*/
public function open(string $compress=''): bool
{
$this->size = $this->f->size;
// If sending file is a File::class, then our file is s3
if ($this->nameas && $this->f instanceof FileModel) {
$this->fd = Storage::readStream($this->f->rel_name);

View File

@ -46,9 +46,6 @@ final class Dynamic extends Send
case 'mtime':
return $this->sent->timestamp;
case 'size':
return strlen($this->buffer);
default:
return NULL;
}
@ -104,6 +101,7 @@ final class Dynamic extends Send
public function open(string $compress=''): bool
{
$this->buffer = (string)$this->item;
$this->size = strlen($this->buffer);
return TRUE;
}

View File

@ -43,9 +43,6 @@ final class Tic extends Send
case 'mtime':
return $this->f->datetime->timestamp;
case 'size':
return strlen($this->tic);
case 'type':
return ($this->ftype&0xff00)>>8;
@ -67,6 +64,8 @@ final class Tic extends Send
public function open(string $compress=''): bool
{
$this->size = strlen($this->tic);
return TRUE;
}

View File

@ -1043,9 +1043,20 @@ class Address extends Model
*/
public function filesWaiting(): Collection
{
return $this->file_seen()
->whereNull('sent_at')
return File::select('files.*')
->join('file_seenby',['file_seenby.file_id'=>'files.id'])
->where('address_id',$this->id)
->whereNull('files.deleted_at')
->whereNotNull('export_at')
->whereNull('sent_at')
->orderby('id')
->with([
'filearea:id,name,domain_id',
'filearea.domain:id,name',
'fftn:id,zone_id,host_id,node_id,point_id',
'fftn.zone:id,domain_id,zone_id',
'fftn.zone.domain:id,name',
])
->get();
}