From e092b8b1070b0659c384f15ad5988e8a8ce07230 Mon Sep 17 00:00:00 2001
From: Cerdic <cedric@yterium.com>
Date: Sat, 24 Oct 2009 16:57:26 +0000
Subject: [PATCH] le post du formulaire editer_auteur n'affichait pas les
 erreurs en retour par la faute du $row['en_ligne'] qui est different a chaque
 hit. On met ceinture et bretelle sur ce sujet

---
 ecrire/exec/auteur_infos.php        | 3 ++-
 ecrire/exec/infos_perso.php         | 4 +++-
 prive/formulaires/editer_auteur.php | 3 +++
 3 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/ecrire/exec/auteur_infos.php b/ecrire/exec/auteur_infos.php
index f2cc5efb35..7f79776e79 100644
--- a/ecrire/exec/auteur_infos.php
+++ b/ecrire/exec/auteur_infos.php
@@ -39,7 +39,8 @@ function exec_auteur_infos_args($id_auteur, $nom, $new, $echec='', $redirect='')
 
 	if ($id_auteur) {
 		$auteur = sql_fetsel("*", "spip_auteurs", "id_auteur=$id_auteur");
-		
+		unset($auteur['maj']);
+		unset($auteur['en_ligne']);
 	} else {
 		$auteur = array();
 		if (strlen(_request('nom')))
diff --git a/ecrire/exec/infos_perso.php b/ecrire/exec/infos_perso.php
index 2ab3613c4f..5314e9ea1d 100644
--- a/ecrire/exec/infos_perso.php
+++ b/ecrire/exec/infos_perso.php
@@ -18,6 +18,8 @@ function exec_infos_perso_dist(){
 		include_spip('inc/minipres');
 		echo minipres();
 	} else {
+		unset($auteur['maj']);
+		unset($auteur['en_ligne']);
 
 		pipeline('exec_init',
 			array('args' => array(
@@ -35,7 +37,7 @@ function exec_infos_perso_dist(){
 
 		charger_fonction('auteur_infos','exec');
 
-		auteur_infos_ok($auteur, $auteur['id_auteur'], _request('echec'), '', self());
+		auteur_infos_ok($auteur, $auteur['id_auteur'], _request('echec'), '', parametre_url(self(),'id_auteur',$auteur['id_auteur']));
 		echo auteurs_interventions($auteur);
 		echo fin_gauche(),fin_page();
 	}
diff --git a/prive/formulaires/editer_auteur.php b/prive/formulaires/editer_auteur.php
index af71658af5..81b9722220 100644
--- a/prive/formulaires/editer_auteur.php
+++ b/prive/formulaires/editer_auteur.php
@@ -12,6 +12,9 @@ function instituer_auteur_ici($auteur=array()){
 function formulaires_editer_auteur_charger_dist($id_auteur='new', $retour='', $lier_id_article=0, $config_fonc='auteurs_edit_config', $row=array(), $hidden=''){
 	$valeurs = formulaires_editer_objet_charger('auteur',$id_auteur,0,0,$retour,$config_fonc,$row,$hidden);
 	if ($lier_id_article) $valeurs['lier_id_article'] = $lier_id_article;
+	// forcer la prise en compte du post, sans verifier si c'est bien le meme formulaire,
+	// c'est trop hasardeux selon le contenud de $row
+	$valeurs['_forcer_request'] = true;
 	return $valeurs;
 }
 
-- 
GitLab