From 5d6191b977de61aa2e30151f5c921c4f9a0e08a0 Mon Sep 17 00:00:00 2001
From: Cerdic <cedric@yterium.com>
Date: Sat, 3 May 2008 22:59:50 +0000
Subject: [PATCH] les objets crees n'heritaient pas de la rubrique en cours
 (jacques)

---
 dist/formulaires/editer_article.html  |  2 +-
 dist/formulaires/editer_breve.html    |  5 ++---
 dist/formulaires/editer_rubrique.html |  4 ++--
 dist/formulaires/editer_site.html     |  2 +-
 ecrire/inc/editer.php                 |  2 ++
 ecrire/inc/filtres.php                | 10 +++++-----
 6 files changed, 13 insertions(+), 12 deletions(-)

diff --git a/dist/formulaires/editer_article.html b/dist/formulaires/editer_article.html
index 337b2c42a0..1f9c505dc1 100644
--- a/dist/formulaires/editer_article.html
+++ b/dist/formulaires/editer_article.html
@@ -30,7 +30,7 @@
 	    </li>]
 	
 	    [<li>(#VAL{titre_cadre_interieur_rubrique}|_T|concat{' ',#AIDER{artrub}}
-	    |chercher_rubrique{#ENV{id_rubrique},'article',#ENV{id_secteur},#ENV**{config}|table_valeur{restreint}})</li>]
+	    |chercher_rubrique{#ENV{id_article},#ENV{id_rubrique},'article',#ENV{id_secteur},#ENV**{config}|table_valeur{restreint}})</li>]
 	
 	  	[(#ENV**{config}|table_valeur{articles_descriptif}|=={non}|?{#ENV**{descriptif,''},' '}|?{' '})
 	    <li class="haut">
diff --git a/dist/formulaires/editer_breve.html b/dist/formulaires/editer_breve.html
index 750b6b6e63..990925a23e 100644
--- a/dist/formulaires/editer_breve.html
+++ b/dist/formulaires/editer_breve.html
@@ -12,13 +12,12 @@
 	  <ol class="formfx">
 	    <li class="gauche obligatoire champ_titre">
 	      <label for="titre"><:info_titre:></label>
-	      <input type='text' name='titre' id='titre' class='formo' value="[(#ENV**{titre,#REM|concat{info_nouvel_article}|_T})]"
+	      <input type='text' name='titre' id='titre' class='formo' value="[(#ENV**{titre,#REM|concat{titre_nouvelle_breve}|_T})]"
 				[(#ENV{titre,''}|?{'',' '})onfocus="if(!antifocus){this.value='';antifocus=true;}"]/>
 				[<span class='erreur'>(#ENV**{erreurs}|table_valeur{titre})</span>]
 	    </li>
-	
 	    [<li>(#VAL{entree_interieur_rubrique}|_T|concat{' ',#AIDER{brevesrub}}
-	    |chercher_rubrique{#ENV{id_rubrique},'breve',#ENV{id_secteur},#ENV**{config}|table_valeur{restreint}})</li>]
+	    |chercher_rubrique{#ENV{id_breve},#ENV{id_rubrique}|sinon{#ENV{id_parent}},'breve',#ENV{id_secteur},#ENV**{config}|table_valeur{restreint}})</li>]
 	
 	    <li class="haut champ_texte">
 	      <label for="text_area"><:entree_texte_breve:></label>
diff --git a/dist/formulaires/editer_rubrique.html b/dist/formulaires/editer_rubrique.html
index a16bbb6e41..aa7077f1ab 100644
--- a/dist/formulaires/editer_rubrique.html
+++ b/dist/formulaires/editer_rubrique.html
@@ -12,13 +12,13 @@
 	  <ol class="formfx">
 	    <li class="gauche obligatoire">
 	      <label for="titre"><:info_titre:><em>#AIDER{arttitre}</em></label>
-	      <input type='text' name='titre' id='titre' class='formo' value="[(#ENV**{titre,#REM|concat{info_nouvel_article}|_T})]"
+	      <input type='text' name='titre' id='titre' class='formo' value="[(#ENV**{titre,#REM|concat{titre_nouvelle_rubrique}|_T})]"
 				[(#ENV{titre,''}|?{'',' '})onfocus="if(!antifocus){this.value='';antifocus=true;}"]/>
 				[<span class='erreur'>(#ENV**{erreurs}|table_valeur{titre})</span>]
 	    </li>
 	
 	    [<li>(#VAL{titre_cadre_interieur_rubrique}|_T|concat{' ',#AIDER{rubrub}}
-	    |chercher_rubrique{#ENV{id_rubrique},'rubrique',#ENV{id_secteur},#ENV**{config}|table_valeur{restreint}})</li>]
+	    |chercher_rubrique{#ENV{id_rubrique},#ENV{id_parent},'rubrique',#ENV{id_secteur},#ENV**{config}|table_valeur{restreint}})</li>]
 	
 	  	[(#ENV**{config}|table_valeur{rubriques_descriptif}|=={non}|?{#ENV**{descriptif,''},' '}|?{' '})
 	    <li class="haut">
diff --git a/dist/formulaires/editer_site.html b/dist/formulaires/editer_site.html
index ebd293b1af..87fdbb922e 100644
--- a/dist/formulaires/editer_site.html
+++ b/dist/formulaires/editer_site.html
@@ -32,7 +32,7 @@
 				[<span class='erreur'>(#ENV**{erreurs}|table_valeur{url_site})</span>]
 	    </li>
 	    [<li>(#VAL{titre_cadre_interieur_rubrique}|_T
-	    |chercher_rubrique{#ENV{id_rubrique},'site',#ENV{id_secteur},#ENV**{config}|table_valeur{restreint}})</li>]
+	    |chercher_rubrique{#ENV{id_syndic},#ENV{id_rubrique}|sinon{#ENV{id_parent}},'site',#ENV{id_secteur},#ENV**{config}|table_valeur{restreint}})</li>]
 	    <li class="haut">
 	      <label for="descriptif"><:entree_description_site:></label>
 	      <textarea name='descriptif' id='descriptif' class='forml' rows='2' cols='40'>[(#ENV**{descriptif})]</textarea>
diff --git a/ecrire/inc/editer.php b/ecrire/inc/editer.php
index 4704144ce4..b7f2c3cb73 100644
--- a/ecrire/inc/editer.php
+++ b/ecrire/inc/editer.php
@@ -70,6 +70,8 @@ function formulaires_editer_objet_charger($type, $id='new', $id_parent=0, $lier_
 	
 
 	$contexte = $row;
+	if (!isset($contexte['id_parent']) && $id_parent)
+		$contexte['id_parent']=$id_parent;
 	$contexte['new'] = $id;
 	$contexte['config'] = $config = $config_fonc($row);
 	$att_text = " class='formo' "
diff --git a/ecrire/inc/filtres.php b/ecrire/inc/filtres.php
index f6f3e4d1d9..9ce9d6cf6b 100644
--- a/ecrire/inc/filtres.php
+++ b/ecrire/inc/filtres.php
@@ -2453,19 +2453,19 @@ function f_extra_editer_contenu_objet($flux){
 
 
 // http://doc.spip.org/@chercher_rubrique
-function chercher_rubrique($msg, $id_rubrique, $type, $id_secteur, $restreint){
+function chercher_rubrique($msg,$id, $id_parent, $type, $id_secteur, $restreint){
 	$chercher_rubrique = charger_fonction('chercher_rubrique', 'inc');
-	$opt = $chercher_rubrique($id_rubrique, $type, $restreint);
+	$opt = $chercher_rubrique($id_parent, $type, $restreint);
 
-	if ($id_rubrique == 0) $logo = "racine-site-24.gif";
-	elseif ($id_secteur == $id_rubrique) $logo = "secteur-24.gif";
+	if ($id_parent == 0) $logo = "racine-site-24.gif";
+	elseif ($id_secteur == $id_parent) $logo = "secteur-24.gif";
 	else $logo = "rubrique-24.gif";
 
 	$confirm = "";
 	if ($type=='rubrique') {
 		// si c'est une rubrique-secteur contenant des breves, demander la
 		// confirmation du deplacement
-		$contient_breves = sql_countsel('spip_breves', "id_rubrique=$id_rubrique",'',2);
+		$contient_breves = sql_countsel('spip_breves', "id_rubrique=$id",'',2);
 	
 		if ($contient_breves > 0) {
 			$scb = ($contient_breves>1? 's':'');
-- 
GitLab