File: /var/www/vhost/disk-apps/comfama.sports-crowd.com/app/Mail/TicketPurchaseEmailList.php
<?php
namespace App\Mail;
use App\Http\Controllers\UtilController;
use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Support\Facades\Crypt;
class TicketPurchaseEmailList extends Mailable
{
use Queueable, SerializesModels;
public $ticket_type_id;
public $match_event_id;
public $user_data;
public $url;
public $pin;
public $key;
public $total_tickets;
public $cryptoString;
public $link;
public $shortLink;
public $title;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct($userTicketsToSendEmail, $ticket_type_id, $match_event_id, $user_data)
{
$this->ticket_type_id = $ticket_type_id;
$this->match_event_id = $match_event_id;
$this->user_data = $user_data;
$this->total_tickets = $userTicketsToSendEmail->count();
$this->generateData();
}
public function generateData()
{
$this->key = rand(10000, 99999);
$this->cryptoString = Crypt::encryptString($this->key . '|' . $this->user_data->id . '|' . $this->match_event_id . '|lista|' . $this->ticket_type_id);
$this->link = config('app.url') . '/g/t/' . $this->cryptoString;
$util = new UtilController;
$this->shortLink = $util->shorterUrl($this->link);
$this->title = 'Boletas ' . config('app.name');
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this->subject($this->title)->view('mails.listTicketsCourtesy');
}
}