sargilla / toastr
Toastr - Flash Messages for Laravel 5
Requires
- php: >=7.2.5
This package is auto-updated.
Last update: 2024-10-26 20:04:32 UTC
README
Simple flash messagges system to use with Laravel 5 Framework. By default it relies on twitter bootstrap "alert" component. You can display multiple flash messages in different types (success, info, warning, danger) at once and to each message you can asign some custom params that will allow you for example mark some of them as important etc.
Installation
Via composer require command
Use composer require command to install this package.
$ composer require sargilla/toastr
Laravel version Compatibility
Adding package to composer.json file manually
Add package to your composer.json file:
"require": {
"sargilla/toastr": "2.0.*"
}
Use composer update command to install this package.
$ composer update
Registering the Package
Add the Toastr Service Provider to your config in config/app.php
:
'providers' => array( Sargilla\Toastr\Providers\ToastrServiceProvider::class, ),
and create an alias:
'aliases' => [ 'Toastr' => Sargilla\Toastr\Facades\Toastr::class, ],
Usage
First of all you need to add some code to your view scripts. In most cases it will be layout file (or other place where you want to flash message be displayed). You can use default view script distrubuted within this package by adding following code into your view file:
@include('toastr::alerts')
or to gain more controll of the look and feel of your flash messages you can start with using following template (just copy and paste it into a place where your application allerts should be displayed):
@if(Session::has('toastr.alerts')) <div id="toastr"> @foreach(Session::get('toastr.alerts') as $alert) <div class='alert alert-{{ $alert['type'] }} @if(array_get($alert,'params.important') == true) 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'] }} @if(array_get($alert,'params.important')) (This alert is marked as important) @endif </div> @endforeach </div> @endif
In your controllers/action before you perform a redirect:
public function login() { Toastr::success('Welcom back!')->push(); return Redirect::home(); }
you can push more than one alert at once:
public function login() { Toastr::success('Welcom back!')->push(); Toastr::warning('You don\'t look too good today!')->push(); return Redirect::home(); }
Other usage examples:
// using alert() method - first param is an alert type socond one is a message: Toastr::alert('danger','Error - generated by alert() method')->push(); Toastr::alert('danger','Error - generated by alert() method')->push(); Toastr::alert('info','Info - generated by alert() method')->push(); Toastr::alert('warning','Warning - generated by alert() method')->push(); Toastr::alert('success','Success - generated by alert() method')->push(); // error alert with title Toastr::alert('danger',['Some title','Error - generated by alert() method'])->push(); // succes Toastr::success('This is success')->push(); // success with title Toastr::success('Excelent','This is success')->push(); // info Toastr::info('That is just short info')->push(); // warning Toastr::warning('Thats a warning!')->push(); // error Toastr::danger('We got an error!')->push(); // adding additional params to each alert (with() method allows you to pass some custom params that can be used later in a view script) Toastr::danger('We got an error! And its marked as important')->with(['important' => true])->push(); Toastr::danger('We got an error!', 'But its not that important')->with(['important' => false])->push();