File: D:/HostingSpaces/SBogers87/basephotography.nl/app/Komma/Mailers/Mailer.php
<?php
namespace Komma\Mailers;
use Illuminate\Support\Facades\Mail;
use Illuminate\Validation\Factory as Validator;
class Mailer { //class that never will be used on it's own
/**
* @var Validator
*/
protected $validator;
protected $validation;
public $rules;
function __construct(Validator $validator)
{
$this->validator = $validator;
}
public function sendTo($user, $subject, $view, $data =[]){
if(!isset($data['emailForm'])){
Mail::send($view, $data , function($message) use($user, $subject){
$message->to($user)
->subject($subject);
});
}
else{
Mail::send($view, $data , function($message) use($user, $subject, $data){
$message->to($user)
->replyTo($data['emailForm'], $data['emailForm'])
->subject($subject);
});
}
}
public function validate(array $formData){
$this->validation = $this->validator->make($formData, $this->getValidationRules());
if($this->validation->fails()){
return $this->getValidationErrors();
}
return true;
}
public function makeRules($rules){
$this->rules = $rules;
}
/**
* @return mixed
*/
protected function getValidationRules(){
return $this->rules;
}
/**
* @return mixed
*/
protected function getValidationErrors(){
return $this->validation->errors();
}
}