payment = $payment; $this->contact = $contact; $this->company = $company; $this->settings = $payment->client->getMergedSettings(); } /** * Execute the job. * * * @return void */ public function handle() { if ($this->company->is_disabled) return true; if ($this->contact->email) { MultiDB::setDb($this->company->db); $email_builder = (new PaymentEmailEngine($this->payment, $this->contact))->build(); $nmo = new NinjaMailerObject; $nmo->mailable = new TemplateEmail($email_builder, $this->contact); $nmo->to_user = $this->contact; $nmo->settings = $this->settings; $nmo->company = $this->company; $nmo->entity = $this->payment; NinjaMailerJob::dispatch($nmo); event(new PaymentWasEmailed($this->payment, $this->payment->company, Ninja::eventVars())); } } }