From 613ec09a8580b4064a911affc3d8aee08537fcbc Mon Sep 17 00:00:00 2001
From: Fil <fil@rezo.net>
Date: Fri, 1 Sep 2006 22:06:23 +0000
Subject: [PATCH] utiliser _request() partout ou restaient des _POST

---
 ecrire/action/editer_article.php | 10 +++++-----
 ecrire/action/editer_auteurs.php |  6 +++---
 ecrire/inc/utils.php             |  8 ++++++--
 3 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/ecrire/action/editer_article.php b/ecrire/action/editer_article.php
index e1ab11a3a5..6d594fd599 100644
--- a/ecrire/action/editer_article.php
+++ b/ecrire/action/editer_article.php
@@ -106,7 +106,7 @@ function revisions_articles ($id_article, $new) {
 
 	// ne pas accepter de titre vide
 	if (_request('titre') === '')
-		$_POST['titre'] = _T('ecrire:info_sans_titre');
+		_request('titre', _T('ecrire:info_sans_titre'));
 
 	foreach (array(
 	'surtitre', 'titre', 'soustitre', 'descriptif',
@@ -220,10 +220,10 @@ function revisions_articles ($id_article, $new) {
 
 // http://doc.spip.org/@trop_longs_articles
 function trop_longs_articles() {
-	if (isset($_POST['texte_plus']) && is_array($_POST['texte_plus'])) {
-		foreach ($_POST['texte_plus'] as $t) {
-			$_POST['texte'] = preg_replace(",<!--SPIP-->[\n\r]*,","", $t)
-				. $_POST['texte'];
+	if (is_array($plus = _request('texte_plus')) {
+		foreach ($plus as $t) {
+			_request('texte', preg_replace(",<!--SPIP-->[\n\r]*,","", $t)
+				. _request('texte'));
 		}
 	}
 }
diff --git a/ecrire/action/editer_auteurs.php b/ecrire/action/editer_auteurs.php
index 0797328865..ddf47f99c3 100644
--- a/ecrire/action/editer_auteurs.php
+++ b/ecrire/action/editer_auteurs.php
@@ -31,9 +31,9 @@ function action_editer_auteurs_dist() {
 		ajouter_auteur_et_rediriger($r[1], $r[2], $redirect);
 	}
 	elseif (preg_match(",^\W*(\d+)$,", $arg, $r)) {
-		if  ($nouv_auteur = intval($_POST['nouv_auteur'])) {
-		  ajouter_auteur_et_rediriger($r[1], $nouv_auteur, $redirect);
-		} else if ($cherche = $_POST['cherche_auteur']) {
+		if  ($nouv_auteur = intval(_request('nouv_auteur'))) {
+			ajouter_auteur_et_rediriger($r[1], $nouv_auteur, $redirect);
+		} else if ($cherche = _request('cherche_auteur')) {
 			$res = rechercher_auteurs($cherche);
 			$n = count($res);
 			if ($n == 1)
diff --git a/ecrire/inc/utils.php b/ecrire/inc/utils.php
index c43c306a8e..639e04a499 100644
--- a/ecrire/inc/utils.php
+++ b/ecrire/inc/utils.php
@@ -247,8 +247,12 @@ function spip_abstract_quote($arg_sql) {
 // http://doc.spip.org/@_request
 function _request($var) {
 	// set ?
-	if (func_num_args()>1)
-		$_GET[$var] = func_get_arg(1);
+	if (func_num_args()>1) {
+		unset($_GET[$var]); // au cas ou l'on fait _request('truc', NULL);
+		unset($_POST[$var]);
+		if (func_get_arg(1) !== NULL)
+			$_GET[$var] = func_get_arg(1);
+	}
 
 	if (isset($_GET[$var])) $a = $_GET[$var];
 	elseif (isset($_POST[$var])) $a = $_POST[$var];
-- 
GitLab