[SPIP] ~2.1.12 -->2.1.25
[velocampus/web/www.git] / www / ecrire / exec / rubriques_edit.php
1 <?php
2
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
5 * *
6 * Copyright (c) 2001-2014 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
8 * *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
12
13 if (!defined('_ECRIRE_INC_VERSION')) return;
14
15 include_spip('inc/presentation');
16 include_spip('inc/documents');
17
18 // http://doc.spip.org/@exec_rubriques_edit_dist
19 function exec_rubriques_edit_dist()
20 {
21 exec_rubriques_edit_args(intval(_request('id_rubrique')), intval(_request('id_parent')), _request('new'), intval(_request('lier_trad')));
22 }
23
24 // http://doc.spip.org/@exec_rubriques_edit_args
25 function exec_rubriques_edit_args($id_rubrique, $id_parent, $new, $lier_trad)
26 {
27 global $connect_toutes_rubriques, $connect_statut, $spip_lang_right;
28
29 $titre = false;
30
31 if ($new == "oui") {
32 $id_rubrique = 0;
33 $titre = filtrer_entites(_T('titre_nouvelle_rubrique'));
34
35 if (!autoriser('creerrubriquedans','rubrique',$id_parent)) {
36 $id_parent = intval(reset($GLOBALS['connect_id_rubrique']));
37 }
38 } else {
39 $row = sql_fetsel("*", "spip_rubriques", "id_rubrique=$id_rubrique");
40 if ($row) {
41
42 $id_parent = $row['id_parent'];
43 $titre = $row['titre'];
44 $id_secteur = $row['id_secteur'];
45 }
46 }
47 $commencer_page = charger_fonction('commencer_page', 'inc');
48
49 if ($titre === false
50 OR ($new=='oui' AND !autoriser('creerrubriquedans','rubrique',$id_parent))
51 OR ($new!='oui' AND !autoriser('modifier','rubrique',$id_rubrique))) {
52 include_spip('inc/minipres');
53 echo minipres();
54 } else {
55
56 pipeline('exec_init',array('args'=>array('exec'=>'rubriques_edit','id_rubrique'=>$id_rubrique),'data'=>''));
57 echo $commencer_page(_T('info_modifier_titre', array('titre' => $titre)), "naviguer", "rubriques", $id_rubrique);
58
59 if ($id_parent == 0) $ze_logo = "secteur-24.gif";
60 else $ze_logo = "rubrique-24.gif";
61
62 echo debut_grand_cadre(true);
63 echo afficher_hierarchie($id_parent,'',$id_rubrique,'rubrique');
64 echo fin_grand_cadre(true);
65
66 echo debut_gauche('', true);
67
68 // Pave "documents associes a la rubrique"
69 if (!$new){
70 # affichage sur le cote des pieces jointes, en reperant les inserees
71 # note : traiter_modeles($texte, true) repere les doublons
72 # aussi efficacement que propre(), mais beaucoup plus rapidement
73 traiter_modeles(join('',$row), true);
74 echo afficher_documents_colonne($id_rubrique, 'rubrique');
75 }
76
77 echo pipeline('affiche_gauche',array('args'=>array('exec'=>'rubriques_edit','id_rubrique'=>$id_rubrique),'data'=>''));
78 echo creer_colonne_droite('', true);
79 echo pipeline('affiche_droite',array('args'=>array('exec'=>'rubriques_edit','id_rubrique'=>$id_rubrique),'data'=>''));
80 echo debut_droite('', true);
81
82 $contexte = array(
83 'icone_retour'=>icone_inline(_T('icone_retour'), generer_url_ecrire("naviguer","id_rubrique=$id_rubrique"), $ze_logo, "rien.gif",$GLOBALS['spip_lang_left']),
84 'redirect'=>generer_url_ecrire("naviguer"),
85 'titre'=>$titre,
86 'new'=>$new == "oui"?$new:$id_rubrique,
87 'id_rubrique'=>$id_parent, // pour permettre la specialisation par la rubrique appelante
88 'config_fonc'=>'rubriques_edit_config',
89 'lier_trad'=>$lier_trad
90 );
91
92 echo recuperer_fond("prive/editer/rubrique", $contexte);
93
94 echo pipeline('affiche_milieu',array('args'=>array('exec'=>'rubriques_edit','id_rubrique'=>$id_rubrique),'data'=>''));
95
96 echo fin_gauche(), fin_page();
97 }
98 }
99 ?>