Skip to content
Extraits de code Groupes Projets

Afficher tous les messages de retour

Fusionnées tcharlss requested to merge gh-fdf4c590/46/unknown/refs/pull/46/head into master
1 fichier
+ 4
2
Comparer les modifications
  • Côte à côte
  • En ligne
  • bb2a22f5
    Ticket #44 : afficher les messages de retour des traitements même s'il y a un... · bb2a22f5
    tcharlss rédigé
    Ticket #44 : afficher les messages de retour des traitements même s'il y a un message personnalisé, car ils peuvent contenir de informations importantes, ou être indispensables au fonctionnement même du formulaire s'ils contiennent du JS qui déclenche des actions. On fait au plus simple : Le message perso est placé au début, séparé par un saut de ligne.
+ 23
12
@@ -383,6 +383,19 @@ function formulaires_formidable_traiter_dist($id, $valeurs = array(), $id_formul
$retours['redirect'] = $url_redirect;
}
// Message de retour personnalisé toujours en 1er
$messages_ok = array();
if ($formulaire['message_retour']) {
$messages_ok[] = _T_ou_typo(
formidable_raccourcis_arobases_2_valeurs_champs(
$formulaire['message_retour'],
$saisies,
false,
''
)
);
}
// les traitements deja faits se notent ici
// pour etre sur de ne pas etre appeles 2 fois
// ainsi si un traitement A a besoin d'un traitement B,
@@ -413,6 +426,11 @@ function formulaires_formidable_traiter_dist($id, $valeurs = array(), $id_formul
),
$retours
);
// Collecter les messages de retour afin de les formater correctement par la suite
if (!empty($retours['message_ok'])) {
$messages_ok[] = $retours['message_ok'];
$retours['message_ok'] = ''; // Inutile de les exposer aux autres traitements
}
} else {
// traitement introuvable, ne pas retenter
$retours['traitements'][$type_traitement] = true;
@@ -426,21 +444,14 @@ function formulaires_formidable_traiter_dist($id, $valeurs = array(), $id_formul
. 'Traitements attendus :'.implode(',', array_keys($traitements))."\n"
. 'Traitements realises :'.implode(',', array_keys($retours['traitements']))."\n";
}
// Si on a personnalisé le message de retour, c'est lui qui est affiché uniquement
if ($formulaire['message_retour']) {
$retours['message_ok'] = _T_ou_typo(
formidable_raccourcis_arobases_2_valeurs_champs(
$formulaire['message_retour'],
$saisies,
false,
''
)
);
}
} else {
$retours['message_erreur'] = _T('formidable:retour_aucun_traitement');
}
// Réinsérer le message de retour en le formatant un minimum :
// saut de lignes pour différencier chaque message (perso et traitements)
if (count($messages_ok) > 0) {
$retours['message_ok'] = implode('<br><br>', $messages_ok);
}
if (isset($retours['fichiers'])) {// traitement particuliers si fichiers
if ($erreurs_fichiers = formidable_produire_messages_erreurs_fichiers($retours['fichiers'])) {
// Inspecter les fichiers pour voir s'il y a des erreurs
Chargement en cours