+ 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
+ // Avertir l'utilisateur
+ if (isset($retours['message_erreur'])) {
+ $retours['message_erreur'] .= '<br />'.$erreurs_fichiers['message_public'];
+ } else {
+ $retours['message_erreur'] = $erreurs_fichiers['message_public'];
+ }
+ // Avertir le webmestre
+ if (isset($retours['id_formulaires_reponse'])) {
+ $erreur_fichiers_sujet = '[ERREUR] Impossible de sauvegarder les fichiers de la réponse '.$retours['id_formulaires_reponse']." au formulaire $id";
+ } else {
+ $erreur_fichiers_sujet = "[ERREUR] Impossible de sauvegarder les fichiers de la réponse au formulaire $id";
+ }
+ $erreur_fichiers_texte = "Récupérez le plus rapidement possible les fichiers temporaires suivants\n";
+ $erreur_fichiers_texte .= $erreurs_fichiers['message_webmestre'];
+ $envoyer_mail = charger_fonction('envoyer_mail', 'inc');
+ $envoyer_mail($GLOBALS['meta']['email_webmaster'], $erreur_fichiers_sujet, $erreur_fichiers_texte);
+ }
+ if ($formulaire['apres'] == 'valeurs') {
+ // Si on affiche après les valeurs des réponses, modifier _request pour les saisies de types fichiers
+ $vignette_par_defaut = charger_fonction('vignette', 'inc/');
+ foreach ($retours['fichiers'] as $saisie => $description) {
+ foreach ($description as $i => $desc) {
+ // ajouter la vignette et l'url
+ if (!isset($description[$i]['erreur'])) {
+ $description[$i]['vignette'] = $vignette_par_defaut($desc['extension'], false);
+ if (isset($retours['id_formulaires_reponse'])) {// si réponse enregistrée
+ $description[$i]['url'] = formidable_generer_url_action_recuperer_fichier($id_formulaire, $retours['id_formulaires_reponse'], $saisie, $desc['fichier']);
+ } elseif (isset($retours['timestamp'])) { // si réponse simplement envoyée par courriel
+ $description[$i]['url'] = formidable_generer_url_action_recuperer_fichier_email(
+ $saisie,
+ $desc['fichier'],
+ array('timestamp'=>$retours['timestamp'])
+ );
+ }
+ }
+ }
+ set_request($saisie, $description);
+ }
+ }
+ }
+ // Si on fait une redirection
+ // Et que l'on a enregistré le résultat
+ // Alors, passer l'id de la réponse à la page
+ if (isset($retours['id_formulaires_reponse']) AND isset($retours['redirect'])) {
+ $retours['redirect'] = parametre_url($retours['redirect'], 'id_formulaires_reponse', $retours['id_formulaires_reponse'], '&');
+ }
+ // lorsqu'on affichera à nouveau le html,
+ // dire à cvt-upload de ne pas générer le html pour les résultats des saisies fichiers
+ if ($formulaire['apres']=='formulaire' and isset($retours['fichiers'])) {
+ $formidable_cvtupload_precharger_fichiers = array();
+ set_request('_fichiers', null);
+ set_request('_cvtupload_precharger_fichiers_forcer', true);
+ foreach ($retours['fichiers'] as $champ => $valeur) {
+ $i = -1;
+ foreach ($valeur as $id => $info) {
+ $i++;
+ if (isset($info['fichier'])) {
+ $nom_fichier = $info['fichier'];
+ } else {
+ $nom_fichier = $info['nom'];
+ }
+ if (isset($retours['id_formulaires_reponse'])) {
+ $chemin_fichier = _DIR_FICHIERS_FORMIDABLE
+ .'formulaire_'.$retours['id_formulaire']
+ .'/reponse_'.$retours['id_formulaires_reponse']
+ .'/'.$champ
+ .'/'.$nom_fichier;
+ $formidable_cvtupload_precharger_fichiers[$champ][$i]['url'] = formidable_generer_url_action_recuperer_fichier($retours['id_formulaire'], $retours['id_formulaires_reponse'], $champ, $nom_fichier);
+ $formidable_cvtupload_precharger_fichiers[$champ][$i]['chemin'] = $chemin_fichier;
+ } elseif (isset($retours['timestamp'])) {
+ $chemin_fichier = _DIR_FICHIERS_FORMIDABLE
+ .'timestamp/'
+ .$retours['timestamp'].'/'
+ .$champ.'/'
+ .$nom_fichier;
+ $formidable_cvtupload_precharger_fichiers[$champ][$i]['chemin'] = $chemin_fichier;
+ $formidable_cvtupload_precharger_fichiers[$champ][$i]['url'] = formidable_generer_url_action_recuperer_fichier_email(
+ $champ,
+ $nom_fichier,
+ array('timestamp'=>$retours['timestamp'])
+ );
+ }
+ }
+ }
+ set_request('_formidable_cvtupload_precharger_fichiers', $formidable_cvtupload_precharger_fichiers);
+ }