mirror of
https://github.com/NNTmux/newznab-tmux.git
synced 2026-08-29 01:08:56 +00:00
Add email notifications for new registered user on site, send welcome email to new users
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
2019-02-08 DariusIII
|
||||
* Chg: Add email notifications for new registered user on site, send welcome email to new users
|
||||
* Chg: Comment out missed dict definition in sphinx.conf (resolves issue #878)
|
||||
2019-02-07 DariusIII
|
||||
* Chg: Update used libraries
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
<?php
|
||||
|
||||
namespace App\Jobs;
|
||||
|
||||
use App\Mail\WelcomeEmail;
|
||||
use App\Models\User;
|
||||
use Illuminate\Bus\Queueable;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Queue\InteractsWithQueue;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Foundation\Bus\Dispatchable;
|
||||
use Illuminate\Support\Facades\Mail;
|
||||
|
||||
class SendWelcomeEmail implements ShouldQueue
|
||||
{
|
||||
use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
|
||||
|
||||
/**
|
||||
* @var \App\Models\User
|
||||
*/
|
||||
private $user;
|
||||
|
||||
/**
|
||||
* Create a new job instance.
|
||||
*
|
||||
* @param \App\Models\User $user
|
||||
*/
|
||||
public function __construct($user)
|
||||
{
|
||||
$this->user = $user;
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the job.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
Mail::to($this->user->email)->send(new WelcomeEmail($this->user));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
namespace App\Mail;
|
||||
|
||||
use App\Models\Settings;
|
||||
use App\Models\User;
|
||||
use Illuminate\Bus\Queueable;
|
||||
use Illuminate\Mail\Mailable;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
|
||||
class NewAccountCreatedEmail extends Mailable
|
||||
{
|
||||
use Queueable, SerializesModels;
|
||||
|
||||
/**
|
||||
* @var \App\Models\User
|
||||
*/
|
||||
private $user;
|
||||
|
||||
/**
|
||||
* Create a new message instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct($user)
|
||||
{
|
||||
$this->user = $user;
|
||||
}
|
||||
|
||||
/**
|
||||
* Build the message.
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function build()
|
||||
{
|
||||
return $this->from(Settings::settingValue('site.main.email'))->subject('New account registered')->view('emails.newAccountCreated')->with(['username' => $this->user->username, 'site' => Settings::settingValue('site.main.title')]);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
namespace App\Mail;
|
||||
|
||||
use App\Models\Settings;
|
||||
use App\Models\User;
|
||||
use Illuminate\Bus\Queueable;
|
||||
use Illuminate\Mail\Mailable;
|
||||
use Illuminate\Queue\SerializesModels;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
|
||||
class WelcomeEmail extends Mailable
|
||||
{
|
||||
use Queueable, SerializesModels;
|
||||
|
||||
/**
|
||||
* @var \App\Models\User
|
||||
*/
|
||||
private $user;
|
||||
|
||||
/**
|
||||
* Create a new message instance.
|
||||
*
|
||||
* @param \App\Models\User $user
|
||||
*/
|
||||
public function __construct($user)
|
||||
{
|
||||
$this->user = $user;
|
||||
}
|
||||
|
||||
/**
|
||||
* Build the message.
|
||||
*
|
||||
* @return $this
|
||||
*/
|
||||
public function build()
|
||||
{
|
||||
return $this->from(Settings::settingValue('site.main.email'))->subject('Welcome to '. Settings::settingValue('site.main.title'))->view('emails.welcome')->with(['username' => $this->user->username, 'site' => Settings::settingValue('site.main.title')]);
|
||||
}
|
||||
}
|
||||
@@ -2,6 +2,8 @@
|
||||
|
||||
namespace App\Observers;
|
||||
|
||||
use App\Jobs\SendNewRegisteredAccountMail;
|
||||
use App\Jobs\SendWelcomeEmail;
|
||||
use App\Models\User;
|
||||
use Jrean\UserVerification\Facades\UserVerification;
|
||||
|
||||
@@ -17,6 +19,8 @@ class UserServiceObserver
|
||||
*/
|
||||
public function created(User $user)
|
||||
{
|
||||
SendNewRegisteredAccountMail::dispatch($user);
|
||||
SendWelcomeEmail::dispatch($user);
|
||||
UserVerification::generate($user);
|
||||
|
||||
UserVerification::send($user, 'User email verification required');
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
@extends('emails.email_layout')
|
||||
|
||||
@section('title')
|
||||
New user registered
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
User <b>{{ $username }}</b> has registered a new account on {{ $site }}.
|
||||
@endsection
|
||||
@@ -0,0 +1,13 @@
|
||||
@extends('emails.email_layout')
|
||||
|
||||
@section('title')
|
||||
Welcome to {{ $site }}
|
||||
@endsection
|
||||
|
||||
@section('content')
|
||||
Dear {{ $username }},
|
||||
<br>
|
||||
Welcome to our site. Your account verification will be sent in separate email.
|
||||
<br><br><br>
|
||||
Greetings from {{ $site }}
|
||||
@endsection
|
||||
Reference in New Issue
Block a user