Commit b9fee6b9 authored by Bertrand Gauthier's avatar Bertrand Gauthier
Browse files

Aide de vue Messenger : collecte des messages dans le namespace tel quel...

Aide de vue Messenger : collecte des messages dans le namespace tel quel (fonctionne aussi si le namespace est une sévérité)
parent 9f833ee9
Pipeline #8721 failed with stages
in 23 seconds
CHANGELOG CHANGELOG
========= =========
3.1.12
-------------------
- Aide de vue Messenger : collecte des messages dans le namespace tel quel (fonctionne aussi si le namespace est une sévérité)
3.1.11 (18/06/2020) 3.1.11 (18/06/2020)
------------------- -------------------
Correction d'un bug au niveau de l'intranavigatuer : le sélecteur no-intranavigation fonctionne maintenant pour les formulaires Correction d'un bug au niveau de l'intranavigatuer : le sélecteur no-intranavigation fonctionne maintenant pour les formulaires
......
...@@ -181,38 +181,37 @@ class Messenger extends AbstractHelper implements MessageAwareInterface, EventMa ...@@ -181,38 +181,37 @@ class Messenger extends AbstractHelper implements MessageAwareInterface, EventMa
} }
/** /**
* @param bool $currentMessages * @param bool $currentMessages
* @param string $namespace Facultatif, ex: 'info', 'these/danger', 'these/*', 'these' (i.e. 'these/*') * @param string|null $namespace Facultatif, ex: 'info', 'these/danger', 'these/*', 'these' (i.e. 'these/*')
* @return static * @return static
*/ */
private function _importFromFlashMessages($currentMessages, $namespace = null) private function _importFromFlashMessages(bool $currentMessages, string $namespace = null)
{ {
$getMethod = $currentMessages ? 'getCurrentMessagesFromNamespace' : 'getMessagesFromNamespace'; $getMethod = $currentMessages ? 'getCurrentMessagesFromNamespace' : 'getMessagesFromNamespace';
$fm = $this->getPluginFlashMessenger(); $fm = $this->getPluginFlashMessenger();
if ($namespace) { if ($namespace) {
$severities = [self::ERROR, self::SUCCESS, self::INFO, self::WARNING]; // collecte des messages dans les namespaces de la forme "namespace/sévérité"
if (in_array($namespace, $severities)) { $array = $this->extractSeveritiesAndNamespaces($namespace);
foreach ((array)$fm->$getMethod($namespace) as $message) { foreach ($array as $sev => $ns) {
$this->addMessage($message, $namespace); foreach ($fm->$getMethod($ns) as $message) {
$this->addMessage($message, $sev);
} }
if ($currentMessages) { if ($currentMessages) {
/* Si on importe alors on nettoie pour éviter un deuxième affichage */ /* Si on importe alors on nettoie pour éviter un deuxième affichage */
$fm->clearCurrentMessagesFromNamespace($namespace); $fm->clearCurrentMessagesFromNamespace($ns);
}
} else {
$array = $this->extractSeveritiesAndNamespaces($namespace);
foreach ($array as $sev => $ns) {
foreach ($fm->$getMethod($ns) as $message) {
$this->addMessage($message, $sev);
}
if ($currentMessages) {
/* Si on importe alors on nettoie pour éviter un deuxième affichage */
$fm->clearCurrentMessagesFromNamespace($ns);
}
} }
} }
// collecte des messages dans le namespace tel quel (fonctionne aussi si le namespace est une sévérité)
foreach ((array)$fm->$getMethod($namespace) as $message) {
$this->addMessage($message, $namespace);
}
if ($currentMessages) {
/* Si on importe alors on nettoie pour éviter un deuxième affichage */
$fm->clearCurrentMessagesFromNamespace($namespace);
}
} }
else { else {
foreach ((array)$fm->$getMethod('error') as $message) { foreach ((array)$fm->$getMethod('error') as $message) {
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment