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
=========
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)
-------------------
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
}
/**
* @param bool $currentMessages
* @param string $namespace Facultatif, ex: 'info', 'these/danger', 'these/*', 'these' (i.e. 'these/*')
* @param bool $currentMessages
* @param string|null $namespace Facultatif, ex: 'info', 'these/danger', 'these/*', 'these' (i.e. 'these/*')
* @return static
*/
private function _importFromFlashMessages($currentMessages, $namespace = null)
private function _importFromFlashMessages(bool $currentMessages, string $namespace = null)
{
$getMethod = $currentMessages ? 'getCurrentMessagesFromNamespace' : 'getMessagesFromNamespace';
$fm = $this->getPluginFlashMessenger();
if ($namespace) {
$severities = [self::ERROR, self::SUCCESS, self::INFO, self::WARNING];
if (in_array($namespace, $severities)) {
foreach ((array)$fm->$getMethod($namespace) as $message) {
$this->addMessage($message, $namespace);
// collecte des messages dans les namespaces de la forme "namespace/sévérité"
$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($namespace);
}
} 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);
}
$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 {
foreach ((array)$fm->$getMethod('error') as $message) {
......
Markdown is supported
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