Flash Notifications Helper for Laravel 5
Add dependency to your composer.json
file and run composer update
.
require: {
"szykra/laravel-flash-notifications": "~0.3"
}
Add ServiceProvider and Alias (Facade) to your config/app.php
file:
'Szykra\Notifications\NotificationServiceProvider'
'Flash' => 'Szykra\Notifications\Flash'
Package default provides bootstrap ready alert view. Just include notifications::flash
file to your main layout in blade:
@include('notifications::flash')
You can create own container for flash notifications with own custom styles. See Custom alert view section.
You can push flash message ever you need by facade Flash
. It provides 4 alert types:
- success
- error
- warning
- info
Flash::info('Your alert message here!');
Method push()
exists because you can push more than one alert at the same time. See below.
Every alert method takes 1, 2 or 3 arguments. If you give one parameter it will be message. If you provide two parameters, first will be title and second will be message. If you provide three parameters first will be title, second will be message and third will be important.
Flash::success('User has been updated successfully.');
Flash::error('Oh snap!', 'Something went wrong. Please try again for a few seconds.');
Package default provides bootstrap ready view for alerts. You can define own style for it. Just create new blade template file!
@if(Session::has('flash.alerts'))
@foreach(Session::get('flash.alerts') as $alert)
<div class='alert alert-{{ $alert['level'] }} @if($alert['important']) alert-important @endif'>
<button class="close" type="button" data-dismiss="alert" aria-hidden="true">×</button>
@if( ! empty($alert['title']))
<div><strong>{{ $alert['title'] }}</strong></div>
@endif
{{ $alert['message'] }}
</div>
@endforeach
@endif
All alerts will be in flash.alerts
session variable. Single alert looks like:
[
'title' => 'Title',
'message' => 'Example message',
'important' => true|false,
'level' => 'success'
]
Level for all alerts are following:
Flash::success
has level successFlash::error
has level dangerFlash::warning
has level warningFlash::info
has level info
The MIT License. Copyright (c) 2014 - 2015 Szymon Krajewski.