From fb285e0c60a1f9259f89431bf471da952bc08026 Mon Sep 17 00:00:00 2001
From: James <james@rezo.net>
Date: Fri, 29 Sep 2006 10:53:44 +0000
Subject: [PATCH] =?UTF-8?q?correction=20du=20ticket=20#601=20:=20on=20n'af?=
 =?UTF-8?q?fiche=20que=20les=20forums=20publie=20ou=20prive=20(et=20plus?=
 =?UTF-8?q?=20ceux=20qui=20sont=20supprim=C3=A9s=20ou=20en=20attente)=20da?=
 =?UTF-8?q?ns=20les=20pages=20pr=C3=A9visualis=C3=A9es).?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

De plus, le formulaire_forum ne permet plus de poster un message associé à un objet éditorial qui n'est pas publié lui-même.
---
 ecrire/balise/formulaire_forum.php | 12 ++++++------
 ecrire/public/boucles.php          |  4 +++-
 2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/ecrire/balise/formulaire_forum.php b/ecrire/balise/formulaire_forum.php
index e8341695c4..02158b03c3 100644
--- a/ecrire/balise/formulaire_forum.php
+++ b/ecrire/balise/formulaire_forum.php
@@ -272,21 +272,21 @@ function sql_recherche_donnees_forum ($idr, $idf, $ida, $idb, $ids) {
 
 	// changer la table de reference s'il y a lieu (pour afficher_groupes[] !!)
 	if ($ida) {
-		$titre = spip_abstract_fetsel('titre', 'spip_articles', "id_article = $ida");
+		$titre = spip_abstract_fetsel('titre', 'spip_articles', "statut = 'publie' AND id_article = $ida");
 		$table = "articles";
 	} else if ($idb) {
-		$titre = spip_abstract_fetsel('titre', 'spip_breves', "id_breve = $idb");
+		$titre = spip_abstract_fetsel('titre', 'spip_breves', "statut = 'publie' AND id_breve = $idb");
 		$table = "breves";
 	} else if ($ids) {
-		$titre = spip_abstract_fetsel('nom_site AS titre', 'spip_syndic', "id_syndic = $ids");
+		$titre = spip_abstract_fetsel('nom_site AS titre', 'spip_syndic', "statut = 'publie' AND id_syndic = $ids");
 		$table = "syndic";
 	} else if ($idr) {
-		$titre = spip_abstract_fetsel('titre', 'spip_rubriques', "id_rubrique = $idr");
+		$titre = spip_abstract_fetsel('titre', 'spip_rubriques', "statut = 'publie' AND id_rubrique = $idr");
 		$table = "rubriques";
 	}
 
-	if ($idf)
-		$titre = spip_abstract_fetsel('titre', 'spip_forum', "id_forum = $idf");
+	if ($idf AND $titre)
+		$titre = spip_abstract_fetsel('titre', 'spip_forum', "statut = 'publie' AND id_forum = $idf");
 
 	if ($titre) {
 		$titre = supprimer_numero($titre['titre']);
diff --git a/ecrire/public/boucles.php b/ecrire/public/boucles.php
index 8555077d69..a8a2d178ca 100644
--- a/ecrire/public/boucles.php
+++ b/ecrire/public/boucles.php
@@ -138,7 +138,9 @@ function boucle_FORUMS_dist($id_boucle, &$boucles) {
 	}
 	// Restreindre aux elements publies
 	if (!$boucle->statut) {
-		if (!$GLOBALS['var_preview'])
+		if ($GLOBALS['var_preview'])
+			$boucle->where[]= array("'IN'", "'$mstatut'", "'(\"publie\",\"prive\")'");		
+		else
 			$boucle->where[]= array("'='", "'$mstatut'", "'\"publie\"'");
 	}
 
-- 
GitLab