Skip to content

Commit

Permalink
Merge branch 'release/2.9.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
forxer committed Feb 12, 2021
2 parents 33cdcc9 + 494b032 commit 1809517
Show file tree
Hide file tree
Showing 6 changed files with 128 additions and 41 deletions.
24 changes: 24 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -1,92 +1,116 @@
Changelog
=========

2.9.0 (2021-02-12)
------------------

- Add helper notifier()
- Minors enhancements


2.8.0 (2020-09-24)
------------------

- Add support for Laravel 8


2.7.1 (2020-03-24)
------------------

- Handle warning type in pnotify4 template


2.7.0 (2020-03-05)
------------------

- Add support for Laravel 7


2.6.0 (2019-12-29)
------------------

- Add support for Laravel 6


2.5.0 (2019-09-24)
------------------

- Add PNotify 4 template


2.4.0 (2019-03-07)
------------------

- Add support for Laravel 5.8


2.3.0 (2018-07-04)
------------------

- Add Laravel 5.7.* support


2.2.0 (2018-07-04)
------------------

- Add Laravel 5.6.* support


2.1.2 (2017-10-02)
------------------

- anothers typos


2.1.1 (2017-10-02)
------------------

- typo


2.1.0 (2017-10-01)
------------------

- add support for Laravel 5.5


2.0.0 (2017-02-05)
------------------

- Laravel 5.4 support


1.0.5 (2016-11-02)
------------------

- Move to Github


1.0.4 (2016-03-22)
------------------

- Source code released with the MIT license
- Added license file


1.0.3 (2016-01-12)
------------------

- Complétion composer.json


1.0.2 (2015-11-04)
------------------

- Correction échappement des paramètres PNotify dans le template.


1.0.1 (2015-10-29)
------------------

- Ajout jQuery document ready au template PNotify


1.0.0 (2015-10-29)
------------------

Expand Down
15 changes: 9 additions & 6 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,18 @@
"autoload" : {
"psr-4" : {
"Axn\\LaravelNotifier\\" : "src/"
}
},
"files": [
"src/helpers.php"
]
},
"extra": {
"laravel": {
"providers": [
"extra" : {
"laravel" : {
"providers" : [
"Axn\\LaravelNotifier\\ServiceProvider"
],
"aliases":{
"Notifier": "Axn\\LaravelNotifier\\Facade"
"aliases" : {
"Notifier" : "Axn\\LaravelNotifier\\Facade"
}
}
}
Expand Down
100 changes: 81 additions & 19 deletions readme.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
# Laravel Notifier

Ce package simplifie l'utilisation des notifications dans Laravel.

* [Installation](#markdown-header-installation)
* [Utilisation](#markdown-header-utilisation)
* [Personnalisation des templates](#markdown-header-personnalisation-des-templates)
* [changelog](changelog.md) :arrow_upper_right:
Ce package vise à simplifier l'utilisation des notifications dans les interfaces web d'une application Laravel.


## Installation
Expand Down Expand Up @@ -46,45 +41,112 @@ to the array of aliases in `config/app.php`:

## Utilisation

Pour ajouter des notifications flash, utiliser les méthodes suivantes :
### Notifications flash

Pour ajouter des notifications flash, utilisez les fonctions suivantes :

- `info('message')`
- `success('message')`
- `warning('message')`
- `error('message')`

Soit via le helper `notifier()` :

```php
Notifier::success("Un message");
notifier()->info('message');

Notifier::info("Un message");
notifier()->success('message');

Notifier::warning("Un message");
notifier()->warning('message');

Notifier::error("Un message");
notifier()->error('message');
```

Et pour afficher ces notifications flash :
Soit via la façade :

```php
use Axn\LaravelNotifier\Facade as Notifier;

//...

Notifier::info('message');

Notifier::success('message');

Notifier::warning('message');

Notifier::error('message');
```

Et pour afficher ces notifications flash dans vos views Blade, utilisez la fonction `showFlash()` :

```blade
notifier()->showFlash('notifier::bootstrap3');
```

ou

```blade
Notifier::showFlash('notifier::bootstrap3');
```

Si vous souhaitez afficher directement des notifications :
L'argument de cette fonction est le template de vue à utiliser pour effectuer le rendu de la notification.


### Notifications instantanées

Si vous souhaitez afficher directement des notifications, utilisez les fonctions suivantes :

- `showInfo('view', 'message')`
- `showSuccess('view', 'message')`
- `showWarning('view', 'message')`
- `showError('view', 'message')`

Soit via le helper `notifier()` :

```php
notifier()->showInfo('notifier::bootstrap3', 'message');

notifier()->showSuccess('notifier::bootstrap3', 'message');

notifier()->showWarning('notifier::bootstrap3', 'message');

notifier()->showError('notifier::bootstrap3', 'message');
```

Soit via la façade :

```php
Notifier::showSuccess('notifier::bootstrap3', "Un message");
Notifier::showInfo('notifier::bootstrap3', 'message');

Notifier::showInfo('notifier::bootstrap3', "Un message");
Notifier::showSuccess('notifier::bootstrap3', 'message');

Notifier::showWarning('notifier::bootstrap3', "Un message");
Notifier::showWarning('notifier::bootstrap3', 'message');

Notifier::showError('notifier::bootstrap3', "Un message");
Notifier::showError('notifier::bootstrap3', 'message');
```

Toutes les méthodes `show*` prennent en premier paramètre le template de vue à utiliser
pour effectuer le rendu de la notification. Il y a actuellement quatres templates fournis :
pour effectuer le rendu de la notification.


## Templates de vues disponibles

Il y a actuellement les templates de vue fournis par le package :

- bootstrap3 *(requiert le framework CSS Bootstrap 3)*
- bootstrap3-advanced *(requiert le framework CSS Bootstrap 3)*
- pnotify *(requiert le plugin JS PNotify 3)*
- pnotify4 *(requiert le plugin JS PNotify 4)*

## Personnalisation des templates
Selon le template utilisé des installations de dépendances peuvent êtres nécessaires.

Par exemple pour les vues "Bootstrap3" il est nécessaire que vous ayez dans votre projet ce dernier.

Pareil pour les vues qui utilisent pnotify ; celui-ci doit être configuré dans votre projet selon sa version.


### Personnalisation des templates

Copier les fichiers de vues du package vers le dossier de vues de l'application via la commande :

Expand Down
2 changes: 1 addition & 1 deletion src/Facade.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ class Facade extends BaseFacade
{
public static function getFacadeAccessor()
{
return 'Axn\LaravelNotifier\Contract';
return '\Axn\LaravelNotifier\Contract';
}
}
22 changes: 7 additions & 15 deletions src/ServiceProvider.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,32 +6,24 @@

class ServiceProvider extends BaseServiceProvider
{
/**
* Register the application services.
*
* @return void
*/
public function register()
{
$this->app->bind(
__NAMESPACE__ . '\Contract',
function($app) {
Contract::class,
function ($app) {
return new Notifier($app['session.store']);
}
);
}

/**
* Bootstrap the application services.
*
* @return void
*/
public function boot()
{
$this->loadViewsFrom(__DIR__ . '/../resources/views/', 'notifier');

$this->publishes([
__DIR__ . '/../resources/views/' => base_path('resources/views/vendor/notifier'),
]);
if ($this->app->runningInConsole()) {
$this->publishes([
__DIR__ . '/../resources/views/' => base_path('resources/views/vendor/notifier'),
]);
}
}
}
6 changes: 6 additions & 0 deletions src/helpers.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?php

function notifier()
{
return app(\Axn\LaravelNotifier\Contract::class);
}

0 comments on commit 1809517

Please sign in to comment.