<?php

namespace App\Mail;

use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Config;

class WebsiteContact extends Mailable
{
    use Queueable, SerializesModels;

    protected $contactData;

    /**
     * Create a new message instance.
     *
     * @return void
     */
    public function __construct($contactData)
    {
        $this->contactData = $contactData;
    }

    /**
     * Build the message.
     *
     * @return $this
     */
    public function build()
    {
        $from = Config::get('mail.from');

        $view = $this->view('emails.contact')
            ->from($from['address'], $from['name'])
            ->subject("ALDI SUISSE MOBILE – Request ({$this->contactData['number']})")
            ->replyTo($this->contactData['email'], $this->contactData['name'])
            ->with([
                'data' => $this->contactData
            ]);
        if (!empty($this->contactData['filepath'])) {
            $view->attach(storage_path('app/' . $this->contactData['filepath']), [
              'as' => $this->contactData['filename']
            ]);
        }
        return $view;
    }
}
