Notify alert boxes to the browser with sound and font awesome icons and give it a timeout to fly out. Works great to notify the user after a successful action (CRUD). Flash the information from Laravel or create multiple from javascript.
First, pull in the package through Composer.
"require": {
"bpocallaghan/notify": "3.*"
}
OR
composer require bpocallaghan/notify
See the documentation for detailed installation and usage instructions.
Include the service provider within config\app.php
.
'providers' => [
Bpocallaghan\Notify\NotifyServiceProvider::class,
];
Add a facade alias or use the globel helper function notify()
.
'aliases' => [
'Notify' => Bpocallaghan\Notify\Facades\Notify::class,
];
Within any view file (preferable your master layout).
@include('notify::notify')
Within any Controller.
public function index()
{
// helper function - default to the 'info'
notify('Title', 'Description');
// return object first
notify()->info('Title', 'Description');
// via the facade
Notify::info('Title', 'Description');
return view('home');
}
The different 'levels' are:
notify()->info('Title', 'Description');
notify()->success('Title', 'Description');
notify()->warning('Title', 'Description');
notify()->error('Title', 'Description');
The different arguments:
notify()->info('Title', 'Description', false);
// without the iconnotify()->info('Title', 'Description', 'smile-o');
// specify the icon classnotify()->message($level = 'info', $title, $content, $icon, $timeout = 5000)
// argumentsnotify()->message('info', 'Title', 'Description', 'smile-o');
// specify the type of levelnotify()->message('info', 'Title', 'Description', 'smile-o', 10000);
// specify the timeout
If you need to modify the view partial, you can run:
php artisan vendor:publish --provider="Bpocallaghan\Notify\NotifyServiceProvider" --tag=view
The view partial can be found here resources\views\vendor\notify\notify.blade
.
You need to publish the assets.
php artisan vendor:publish --provider="Bpocallaghan\Notify\NotifyServiceProvider" --tag=public
Find the files here public\vendor\notify\
.
Move the mp3s to public\sounds\
.
If you use Laravel Elixir, move the css and js to your resource\assets
and include them in your gulpfile.js, otherwise link to the individual files in your html header.