notificationservice/app/Http/Controllers/MailController.php

44 lines
1.1 KiB
PHP

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Mail;
use Throwable;
class MailController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
//
// Log::info("consturct mail");
}
public function send(Request $request)
{
$this->validate($request,[
'title' => 'required|string',
'message' => 'required|string',
'email' => 'required|email'
]);
$title = $request->input('title');
try {
$recipients = [$request->input('email')];
Mail::mailer('smtp')->raw($request->input('message'), function ($message) use ($recipients, $title) {
$message->subject($title);
$message->to($recipients);
});
} catch (Throwable $t) {
Log::error('-------- Mail not sent -----------');
Log::error($t->getMessage().'\n'.$t->getTraceAsString());
}
}
}