Package Data | |
---|---|
Maintainer Username: | coderjp |
Package Create Date: | 2015-05-19 |
Package Last Update: | 2016-09-12 |
Language: | PHP |
License: | MIT |
Last Refreshed: | 2024-11-22 03:00:11 |
Package Statistics | |
---|---|
Total Downloads: | 1,174 |
Monthly Downloads: | 2 |
Daily Downloads: | 0 |
Total Stars: | 2 |
Total Watchers: | 2 |
Total Forks: | 1 |
Total Open Issues: | 0 |
Verifier is a package for Laravel 5 that sends out verification emails to users in order for them to prove their email is valid. Users will click a link in the email to validate their address.
Require this package with composer using the following command:
composer require coderjp/verifier
Then run composer install
or composer update
.
After updating composer, add the service provider to the providers
array in config/app.php
'Coderjp\Verifier\VerifierServiceProvider',
Generate the config file for changing various settings. This can be found in config/verifier.php
.
php artisan vendor:publish --provider=Coderjp\\Verifier\\VerifierServiceProvider
Make sure the tables
config option is correct. By default the table used is users
. Then run the following
command to generate the migrations:
php artisan verifier:migration
Add the VerifierUserTrait
to the model you wish to verify against. This will usually be the User
model.
<?php
use Coderjp\Verifier\Traits\VerifierUserTrait;
class User extends Model implements AuthenticatableContract, CanResetPasswordContract
{
use Authenticatable, CanResetPassword, EntrustUserTrait, SoftDeletes, VerifierUserTrait;
...
}
You will need to make a mail template for the welcome email to use. By default the config uses emails.welcome
.
The variable $user
will be passed to your template. This will be an array of the relevant user.
Hi {{ $user['name'] }},
Welcome to our site. Please click the following link to activate your account:
{{ url('verify', $user['verification_code']) }}
Regards, CoderJP
Where you create a user, you can now call the sendVerification()
method on the model. This will trigger
an email to be sent to the user.
...
public function store(CreateUserRequest $request)
{
$user = User::create($request->all());
$user->sendVerification();
...
}
...
To verify a token you can use the verify()
method like so:
<?php
class UserController extends Controller {
...
public function validate(Request $request, $code)
{
$user = User::verify($code);
if ($user) {
// $user = User model
return view('user.validated');
} else {
// $user = null;
return view('user.invalid');
}
}
...
}
If the code is valid, verify will set validated = true
, remove the validation code
from the database
and return the related user. If the code is invalid null
is returned.
Some options may need more thought than a simple attribute, the following can be overwritten by declaring methods in your model
This is the name of the recipient. By default it uses the name
attribute of the model, however you can override
it by declaring the following:
...
public function getVerificationEmailName() {
return ucwords($this->first_name .' '. $this->last_name);
}
...
By default, the config option subject
is used, however you can define the following method in the model:
...
public function getVerificationEmailSubject()
{
return 'Welcome to our site ' . $this->name;
}
...
Verifier is open-sourced software licensed under the MIT license