From 6c0e097720be08a22c7ca2020aed4c624928372b Mon Sep 17 00:00:00 2001
From: James <james@rezo.net>
Date: Thu, 9 Nov 2006 21:15:47 +0000
Subject: [PATCH] ajout de la fonction revisions_auteur()

---
 ecrire/action/editer_auteurs.php | 50 ++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/ecrire/action/editer_auteurs.php b/ecrire/action/editer_auteurs.php
index bbef1cb854..0337278f36 100644
--- a/ecrire/action/editer_auteurs.php
+++ b/ecrire/action/editer_auteurs.php
@@ -100,4 +100,54 @@ function rechercher_auteurs($cherche_auteur)
 	return mots_ressemblants($cherche_auteur, $table_auteurs, $table_ids);
 }
 
+function revisions_auteurs($id_auteur, $c=false) {
+	include_spip('inc/filtres');
+
+	$champs_normaux = array('nom', 'bio', 'pgp', 'nom_site', 'lien_site');
+
+	if (_request('nom', $c) === '')
+		$c = set_request('nom', _T('ecrire:item_nouvel_auteur'), $c);
+
+	$champs = array();
+	foreach ($champs_normaux as $champ) {
+		$val = _request($champ, $c);
+		if ($val !== NULL)
+			$champs[$champ] = corriger_caracteres($val);
+	}
+
+	// recuperer les extras
+	if ($GLOBALS['champs_extra']) {
+		include_spip('inc/extra');
+		if ($extra = extra_update('auteurs', $id_auteur, $c))
+			$champs['extra'] = $extra;
+	}
+
+	// Envoyer aux plugins
+	$champs = pipeline('pre_enregistre_contenu',
+		array(
+			'args' => array(
+				'table' => 'spip_auteurs',
+				'id_objet' => $id_auteur
+			),
+			'data' => $champs
+		)
+	);
+
+	$update = array();
+	foreach ($champs as $champ => $val)
+		$update[] = $champ . '=' . _q($val);
+
+	if (!count($update)) return;
+
+	spip_query("UPDATE spip_auteurs SET ".join(', ',$update)." WHERE id_auteur=$id_auteur");
+
+	// marquer le fait que l'auteur est travaille par toto a telle date
+	// une alerte sera donnee aux autres administrateurs sur exec=auteur_infos
+	if ($GLOBALS['meta']['auteurs_modif'] != 'non') {
+		include_spip('inc/drapeau_edition');
+		signale_edition ($id_auteur, $GLOBALS['auteur_session'], 'auteur');
+	}
+
+}
+
 ?>
-- 
GitLab