Loading README.md +28 −6 Original line number Diff line number Diff line Loading @@ -42,12 +42,18 @@ Remarques : Exemples d'utilisation ---------------------- ### Affichage d'alertes ajoutées manuellement ```php // Affichage d'une alerte créée manuellement, sous forme de Modal Bootstrap : echo $this->alertes()->addAlerteNew("Quelque chose s'est mal passé !!", "Votre attention, svp !", 'danger')->renderAsBootstrapModals(); // Affichage d'une alerte créée manuellement, sous forme de Toast Bootstrap disparaissant au bout de 3 secondes : echo $this->alertes()addAlerteNew("Youpi !!", "Félicitations", 'success', 3000);->renderAsBootstrapToasts(); ``` ### Affichage d'alertes puisées dans la bdd ```php // Affichage de toutes les alertes puisées en bdd, sous forme de Toasts Bootstrap, à condition que leur planning d'affichage inclue la date du jour : echo $this->alertes()->addAlertesFromDatabase(true)->renderAsBootstrapToasts(); // Idem, sous forme d'Alerts Bootstrap classiques : Loading @@ -60,18 +66,33 @@ echo $this->alertes()->addAlertesFromDatabase(true)->renderAsJavascriptAlerts(); echo $this->alertes()->addAlerteFromDatabase('ALERTE_MAINTENANCE', true)->renderAsBootstrapToasts(); // Affichage d'une alerte puisée en bdd identifiée par son code, sous forme d'un Toast Bootstrap, quelque soit son planning d'affichage : echo $this->alertes()->addAlerteFromDatabase('ALERTE_FERMETURE_ESTIVALE')->renderAsBootstrapToasts(); ``` ### Affichage d'alertes issues du FlashMessenger ```php echo $this->alertes()->addAlertesFromFlashMessenger()->renderAsBootstrapToasts(); ``` // Affichage aggrégé de plusieurs alertes : ### Affichage aggrégé ```php echo $this->alertes() ->addAlerteNew("Quelque chose s'est mal passé !!", "Votre attention, svp !", 'danger') ->addAlerteNew("Youpi !!", "Félicitations", 'success', 3000) ->addAlerteFromDatabase('ALERTE_MAINTENANCE', true) ->addAlerteFromDatabase('ALERTE_FERMETURE_ESTIVALE') ->addAlerteNew("Youpi !!", "Félicitations", 'success', 3000) // disparition automatique au bout de 3s ->addAlerteFromDatabase('ALERTE_MAINTENANCE') ->addAlerteFromDatabase('ALERTE_FERMETURE_ESTIVALE', false) // pas de respect de la période d'affichage ->addAlertesFromFlashMessenger() ->renderAsBootstrapToasts(); ``` ### Usage avancé // Même chose mais en version "expert" : ```php /** @var \UnicaenAlerte\View\Helper\AlerteViewHelper $alertesHelper */ $alertesHelper = $this->alertes(); $alertesHelper->getFlashMessengerContainer() ->setSeverityDuration('success', 0); // pas de disparition automatique $alertesHelper->getArrayContainer() ->addAlerteNew("Quelque chose s'est mal passé !!", "Votre attention, svp !", 'danger') ->addAlerteNew("Youpi !!", "Félicitations", 'success', 3000); Loading @@ -80,6 +101,7 @@ $alertesHelper->getDatabaseContainer() ->withCodeAndMatchingPlanning('ALERTE_FERMETURE_ESTIVALE', false); echo $alertesHelper ->addAlertesFromDatabase() ->addAlertesFromFlashMessenger() ->renderAsBootstrapToasts(); ``` Loading config/module.config.php +3 −3 Original line number Diff line number Diff line Loading @@ -14,8 +14,8 @@ use UnicaenAlerte\Form\AlerteForm; use UnicaenAlerte\Form\AlerteFormFactory; use UnicaenAlerte\Hydrator\AlerteHydrator; use UnicaenAlerte\Hydrator\AlerteHydratorFactory; use UnicaenAlerte\Service\AlerteService; use UnicaenAlerte\Service\AlerteServiceFactory; use UnicaenAlerte\Service\Db\AlerteService; use UnicaenAlerte\Service\Db\AlerteServiceFactory; use UnicaenAlerte\View\Helper\AlerteViewHelper; use UnicaenAlerte\View\Helper\AlerteViewHelperFactory; Loading src/UnicaenAlerte/Container/Array/ArrayContainer.php +5 −1 Original line number Diff line number Diff line Loading @@ -2,9 +2,13 @@ namespace UnicaenAlerte\Container\Array; use UnicaenAlerte\Container\ContainerInterface; use UnicaenAlerte\Entity\Db\Alerte; class ArrayContainer implements ArrayContainerInterface /** * Container basique de type tableau permettant d'ajouter manuellement des alertes. */ class ArrayContainer implements ContainerInterface { /** * Alertes à afficher. Loading src/UnicaenAlerte/Container/Array/ArrayContainerInterface.phpdeleted 100644 → 0 +0 −16 Original line number Diff line number Diff line <?php namespace UnicaenAlerte\Container\Array; use UnicaenAlerte\Container\ContainerInterface; use UnicaenAlerte\Entity\Db\Alerte; interface ArrayContainerInterface extends ContainerInterface { public function addAlerte(Alerte $alerte): self; public function addAlerteNew(string $text, string $title, string $severity = Alerte::SEVERITY_INFO, int $duration = 0): self; } No newline at end of file src/UnicaenAlerte/Container/ContainerInterface.php +3 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,9 @@ namespace UnicaenAlerte\Container; /** * Spécification minimale d'un container d'alertes. */ interface ContainerInterface { /** Loading Loading
README.md +28 −6 Original line number Diff line number Diff line Loading @@ -42,12 +42,18 @@ Remarques : Exemples d'utilisation ---------------------- ### Affichage d'alertes ajoutées manuellement ```php // Affichage d'une alerte créée manuellement, sous forme de Modal Bootstrap : echo $this->alertes()->addAlerteNew("Quelque chose s'est mal passé !!", "Votre attention, svp !", 'danger')->renderAsBootstrapModals(); // Affichage d'une alerte créée manuellement, sous forme de Toast Bootstrap disparaissant au bout de 3 secondes : echo $this->alertes()addAlerteNew("Youpi !!", "Félicitations", 'success', 3000);->renderAsBootstrapToasts(); ``` ### Affichage d'alertes puisées dans la bdd ```php // Affichage de toutes les alertes puisées en bdd, sous forme de Toasts Bootstrap, à condition que leur planning d'affichage inclue la date du jour : echo $this->alertes()->addAlertesFromDatabase(true)->renderAsBootstrapToasts(); // Idem, sous forme d'Alerts Bootstrap classiques : Loading @@ -60,18 +66,33 @@ echo $this->alertes()->addAlertesFromDatabase(true)->renderAsJavascriptAlerts(); echo $this->alertes()->addAlerteFromDatabase('ALERTE_MAINTENANCE', true)->renderAsBootstrapToasts(); // Affichage d'une alerte puisée en bdd identifiée par son code, sous forme d'un Toast Bootstrap, quelque soit son planning d'affichage : echo $this->alertes()->addAlerteFromDatabase('ALERTE_FERMETURE_ESTIVALE')->renderAsBootstrapToasts(); ``` ### Affichage d'alertes issues du FlashMessenger ```php echo $this->alertes()->addAlertesFromFlashMessenger()->renderAsBootstrapToasts(); ``` // Affichage aggrégé de plusieurs alertes : ### Affichage aggrégé ```php echo $this->alertes() ->addAlerteNew("Quelque chose s'est mal passé !!", "Votre attention, svp !", 'danger') ->addAlerteNew("Youpi !!", "Félicitations", 'success', 3000) ->addAlerteFromDatabase('ALERTE_MAINTENANCE', true) ->addAlerteFromDatabase('ALERTE_FERMETURE_ESTIVALE') ->addAlerteNew("Youpi !!", "Félicitations", 'success', 3000) // disparition automatique au bout de 3s ->addAlerteFromDatabase('ALERTE_MAINTENANCE') ->addAlerteFromDatabase('ALERTE_FERMETURE_ESTIVALE', false) // pas de respect de la période d'affichage ->addAlertesFromFlashMessenger() ->renderAsBootstrapToasts(); ``` ### Usage avancé // Même chose mais en version "expert" : ```php /** @var \UnicaenAlerte\View\Helper\AlerteViewHelper $alertesHelper */ $alertesHelper = $this->alertes(); $alertesHelper->getFlashMessengerContainer() ->setSeverityDuration('success', 0); // pas de disparition automatique $alertesHelper->getArrayContainer() ->addAlerteNew("Quelque chose s'est mal passé !!", "Votre attention, svp !", 'danger') ->addAlerteNew("Youpi !!", "Félicitations", 'success', 3000); Loading @@ -80,6 +101,7 @@ $alertesHelper->getDatabaseContainer() ->withCodeAndMatchingPlanning('ALERTE_FERMETURE_ESTIVALE', false); echo $alertesHelper ->addAlertesFromDatabase() ->addAlertesFromFlashMessenger() ->renderAsBootstrapToasts(); ``` Loading
config/module.config.php +3 −3 Original line number Diff line number Diff line Loading @@ -14,8 +14,8 @@ use UnicaenAlerte\Form\AlerteForm; use UnicaenAlerte\Form\AlerteFormFactory; use UnicaenAlerte\Hydrator\AlerteHydrator; use UnicaenAlerte\Hydrator\AlerteHydratorFactory; use UnicaenAlerte\Service\AlerteService; use UnicaenAlerte\Service\AlerteServiceFactory; use UnicaenAlerte\Service\Db\AlerteService; use UnicaenAlerte\Service\Db\AlerteServiceFactory; use UnicaenAlerte\View\Helper\AlerteViewHelper; use UnicaenAlerte\View\Helper\AlerteViewHelperFactory; Loading
src/UnicaenAlerte/Container/Array/ArrayContainer.php +5 −1 Original line number Diff line number Diff line Loading @@ -2,9 +2,13 @@ namespace UnicaenAlerte\Container\Array; use UnicaenAlerte\Container\ContainerInterface; use UnicaenAlerte\Entity\Db\Alerte; class ArrayContainer implements ArrayContainerInterface /** * Container basique de type tableau permettant d'ajouter manuellement des alertes. */ class ArrayContainer implements ContainerInterface { /** * Alertes à afficher. Loading
src/UnicaenAlerte/Container/Array/ArrayContainerInterface.phpdeleted 100644 → 0 +0 −16 Original line number Diff line number Diff line <?php namespace UnicaenAlerte\Container\Array; use UnicaenAlerte\Container\ContainerInterface; use UnicaenAlerte\Entity\Db\Alerte; interface ArrayContainerInterface extends ContainerInterface { public function addAlerte(Alerte $alerte): self; public function addAlerteNew(string $text, string $title, string $severity = Alerte::SEVERITY_INFO, int $duration = 0): self; } No newline at end of file
src/UnicaenAlerte/Container/ContainerInterface.php +3 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,9 @@ namespace UnicaenAlerte\Container; /** * Spécification minimale d'un container d'alertes. */ interface ContainerInterface { /** Loading