<?php namespace App\Mail; use Illuminate\Bus\Queueable; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Mail\Mailable; use Illuminate\Queue\SerializesModels; use App\Models\Invoice; class InvoiceEmail extends Mailable { use Queueable, SerializesModels; public $invoice; /** * Create a new message instance. * * @param Invoice $o * @param string $notes */ public function __construct(Invoice $o) { $this->invoice = $o; } /** * Build the message. * * @return $this */ public function build() { return $this ->markdown('email.user.invoice') ->subject(sprintf( 'Invoice: %s - Total: $%s - Due: %s', $this->invoice->id, number_format($this->invoice->total,2), $this->invoice->due_at->format('Y-m-d'))) ->with([ 'user'=>$this->invoice->account->user, 'site'=>$this->invoice->account->user->site, ]); } }