diff --git a/app/Http/Controllers/ClientPortal/RecurringInvoiceController.php b/app/Http/Controllers/ClientPortal/RecurringInvoiceController.php index 294ab70f8480..e484dedeba06 100644 --- a/app/Http/Controllers/ClientPortal/RecurringInvoiceController.php +++ b/app/Http/Controllers/ClientPortal/RecurringInvoiceController.php @@ -14,12 +14,14 @@ namespace App\Http\Controllers\ClientPortal; use App\Http\Controllers\Controller; use App\Http\Requests\ClientPortal\ShowRecurringInvoiceRequest; use App\Jobs\Mail\NinjaMailer; +use App\Jobs\Mail\NinjaMailerJob; use App\Jobs\Mail\NinjaMailerObject; use App\Mail\RecurringInvoice\ClientContactRequestCancellationObject; use App\Models\RecurringInvoice; use App\Notifications\ClientContactRequestCancellation; use App\Utils\Traits\MakesDates; use App\Utils\Traits\MakesHash; +use App\Utils\Traits\Notifications\UserNotifies; use Illuminate\Contracts\View\Factory; use Illuminate\Http\Request; use Illuminate\View\View; @@ -31,6 +33,7 @@ class RecurringInvoiceController extends Controller { use MakesHash; use MakesDates; + use UserNotifies; /** * Show the list of recurring invoices. @@ -63,6 +66,17 @@ class RecurringInvoiceController extends Controller $nmo = new NinjaMailerObject; $nmo->mailable = (new NinjaMailer((new ClientContactRequestCancellationObject($recurring_invoice, auth()->user()))->build())); + $nmo->company = $recurring_invoice->company; + $nmo->settings = $recurring_invoice->company->settings; + + $notifiable_users = $this->filterUsersByPermissions($recurring_invoice->company->company_users, $recurring_invoice, ['recurring_cancellation']); + + $notifiable_users->each(function ($company_user) use($nmo){ + + $nmo->to_user = $company_user->user; + NinjaMailerJob::dispatch($nmo); + + }); //$recurring_invoice->user->notify(new ClientContactRequestCancellation($recurring_invoice, auth()->user())); diff --git a/app/Mail/RecurringInvoice/ClientContactRequestCancellationObject.php b/app/Mail/RecurringInvoice/ClientContactRequestCancellationObject.php index 489eeb3cabad..ee533ef901ee 100644 --- a/app/Mail/RecurringInvoice/ClientContactRequestCancellationObject.php +++ b/app/Mail/RecurringInvoice/ClientContactRequestCancellationObject.php @@ -18,6 +18,8 @@ class ClientContactRequestCancellationObject public $client_contact; + private $company; + /** * */ @@ -25,13 +27,14 @@ class ClientContactRequestCancellationObject { $this->recurring_invoice = $recurring_invoice; $this->client_contact = $client_contact; + $this->company = $recurring_invoice->company; } public function build() { $data = [ - 'title' => ctrans('texts.new_signup'), + 'title' => ctrans('texts.recurring_cancellation_request', ['contact' => $this->client_contact->present()->name()]), 'message' => ctrans('texts.recurring_cancellation_request_body', ['contact' => $this->client_contact->present()->name(), 'client' => $this->client_contact->client->present()->name(), 'invoice' => $this->recurring_invoice->number]), 'url' => config('ninja.web_url'), 'button' => ctrans('texts.account_login'), diff --git a/app/Utils/Traits/Notifications/UserNotifies.php b/app/Utils/Traits/Notifications/UserNotifies.php index d7f1cc632019..477a4dd36567 100644 --- a/app/Utils/Traits/Notifications/UserNotifies.php +++ b/app/Utils/Traits/Notifications/UserNotifies.php @@ -97,7 +97,7 @@ trait UserNotifies return $company_users->filter(function($company_user) use($required_notification, $entity){ - return $this->checkNotificationExists($company_user, $entity, $required_notification) + return $this->checkNotificationExists($company_user, $entity, $required_notification); });