diff --git a/app/Http/Controllers/ClientPortal/PaymentController.php b/app/Http/Controllers/ClientPortal/PaymentController.php index 55a6c2da65d6..1cac29ad5560 100644 --- a/app/Http/Controllers/ClientPortal/PaymentController.php +++ b/app/Http/Controllers/ClientPortal/PaymentController.php @@ -170,8 +170,8 @@ class PaymentController extends Controller }); - if ((bool) $request->signature) { - $invoices->each(function ($invoice) { + if (request()->has('signature') && !is_null(request()->signature) && !empty(request()->signature)) { + $invoices->each(function ($invoice) use ($request) { InjectSignature::dispatch($invoice, $request->signature); }); } diff --git a/app/Jobs/Invoice/InjectSignature.php b/app/Jobs/Invoice/InjectSignature.php index fe5dc5eb56b3..58c028c1c5b4 100644 --- a/app/Jobs/Invoice/InjectSignature.php +++ b/app/Jobs/Invoice/InjectSignature.php @@ -15,9 +15,9 @@ class InjectSignature implements ShouldQueue use Dispatchable, InteractsWithQueue, Queueable, SerializesModels; /** - * @var App\Models\Invoice + * @var App\Models\Invoice|App\Models\Quote */ - public $invoice; + public $entity; /** * @var string @@ -27,12 +27,12 @@ class InjectSignature implements ShouldQueue /** * Create a new job instance. * - * @param Invoice $invoice + * @param $entity * @param string $signature */ - public function __construct(Invoice $invoice, string $signature) + public function __construct($entity, string $signature) { - $this->invoice = $invoice; + $this->entity = $entity; $this->signature = $signature; } @@ -44,7 +44,7 @@ class InjectSignature implements ShouldQueue */ public function handle() { - $invitation = $this->invoice->invitations->whereNotNull('signature_base64')->first(); + $invitation = $this->entity->invitations->whereNotNull('signature_base64')->first(); if (! $invitation) { return;