diff --git a/app/Http/Controllers/InvoiceController.php b/app/Http/Controllers/InvoiceController.php index b591f3f91462..2f46ff2d60dc 100644 --- a/app/Http/Controllers/InvoiceController.php +++ b/app/Http/Controllers/InvoiceController.php @@ -415,10 +415,13 @@ class InvoiceController extends BaseController if ($invoice->is_recurring) { $response = $this->emailRecurringInvoice($invoice); } else { - app('App\Ninja\Mailers\ContactMailer')->sendInvoice($invoice, false, $pdfUpload); - $response = true; - //$this->dispatch(new SendInvoiceEmail($invoice, false, $pdfUpload)); - //return true; + // TODO remove this with Laravel 5.3 (https://github.com/invoiceninja/invoiceninja/issues/1303) + if (config('queue.default') === 'sync') { + $response = app('App\Ninja\Mailers\ContactMailer')->sendInvoice($invoice, false, $pdfUpload); + } else { + $this->dispatch(new SendInvoiceEmail($invoice, false, $pdfUpload)); + $response = true; + } } if ($response === true) { @@ -448,9 +451,13 @@ class InvoiceController extends BaseController if ($invoice->isPaid()) { return true; } else { - return app('App\Ninja\Mailers\ContactMailer')->sendInvoice($invoice); - //$this->dispatch(new SendInvoiceEmail($invoice)); - //return true; + // TODO remove this with Laravel 5.3 (https://github.com/invoiceninja/invoiceninja/issues/1303) + if (config('queue.default') === 'sync') { + return app('App\Ninja\Mailers\ContactMailer')->sendInvoice($invoice); + } else { + $this->dispatch(new SendInvoiceEmail($invoice)); + return true; + } } } diff --git a/app/Ninja/Datatables/InvoiceDatatable.php b/app/Ninja/Datatables/InvoiceDatatable.php index 02811528b270..94a5bd9d87f0 100644 --- a/app/Ninja/Datatables/InvoiceDatatable.php +++ b/app/Ninja/Datatables/InvoiceDatatable.php @@ -180,12 +180,10 @@ class InvoiceDatatable extends EntityDatatable if ($this->entityType == ENTITY_INVOICE || $this->entityType == ENTITY_QUOTE) { $actions[] = \DropdownButton::DIVIDER; - /* $actions[] = [ 'label' => mtrans($this->entityType, 'email_' . $this->entityType), 'url' => 'javascript:submitForm_'.$this->entityType.'("emailInvoice")', ]; - */ $actions[] = [ 'label' => mtrans($this->entityType, 'mark_sent'), 'url' => 'javascript:submitForm_'.$this->entityType.'("markSent")', diff --git a/app/Ninja/Repositories/InvoiceRepository.php b/app/Ninja/Repositories/InvoiceRepository.php index 67f457e2255c..56d5aa95bcb9 100644 --- a/app/Ninja/Repositories/InvoiceRepository.php +++ b/app/Ninja/Repositories/InvoiceRepository.php @@ -757,8 +757,12 @@ class InvoiceRepository extends BaseRepository */ public function emailInvoice(Invoice $invoice) { - app('App\Ninja\Mailers\ContactMailer')->sendInvoice($invoice); - //dispatch(new SendInvoiceEmail($invoice)); + // TODO remove this with Laravel 5.3 (https://github.com/invoiceninja/invoiceninja/issues/1303) + if (config('queue.default') === 'sync') { + app('App\Ninja\Mailers\ContactMailer')->sendInvoice($invoice); + } else { + dispatch(new SendInvoiceEmail($invoice)); + } } /**