Mise en route du suivi.
[aidenligne_francais_universite.git] / ecrire / exec / breves_voir.php
1 <?php
2
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
5 * *
6 * Copyright (c) 2001-2007 *
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/actions');
17 include_spip('base/abstract_sql');
18 include_spip("inc/indexation");
19
20 // http://doc.spip.org/@afficher_breves_voir
21 function afficher_breves_voir($id_breve, $cherche_mot, $select_groupe)
22 {
23 global $champs_extra, $options, $connect_statut, $les_notes,$spip_display;
24 $result = spip_query("SELECT * FROM spip_breves WHERE id_breve='$id_breve'");
25
26 if ($row = spip_fetch_array($result)) {
27 $id_breve=$row['id_breve'];
28 $date_heure=$row['date_heure'];
29 $titre_breve=$row['titre'];
30 $titre=$row['titre'];
31 $texte=$row['texte'];
32 $extra=$row['extra'];
33 $lien_titre=$row['lien_titre'];
34 $lien_url=$row['lien_url'];
35 $statut=$row['statut'];
36 $id_rubrique=$row['id_rubrique'];
37 }
38 else {
39 include_spip('minipres');
40 echo minipres();
41 exit;
42 }
43
44 $commencer_page = charger_fonction('commencer_page', 'inc');
45 if (!autoriser('voir','breve',$id_breve)){
46 echo $commencer_page("&laquo; $titre_breve &raquo;", "naviguer", "breves", $id_rubrique);
47 echo "<strong>"._T('avis_acces_interdit')."</strong>";
48 echo fin_page();
49 exit;
50 }
51
52 $flag_editable = autoriser('modifier','breve',$id_breve);
53
54 // Est-ce que quelqu'un a deja ouvert la breve en edition ?
55 if ($flag_editable
56 AND $GLOBALS['meta']['articles_modif'] != 'non') {
57 include_spip('inc/drapeau_edition');
58 $modif = mention_qui_edite($id_breve, 'breve');
59 } else
60 $modif = array();
61
62
63 pipeline('exec_init',
64 array(
65 'args'=>array('exec'=>'breves_voir','id_breve'=>$id_breve),
66 'data'=>''
67 )
68 );
69
70 echo $commencer_page("&laquo; $titre_breve &raquo;", "naviguer", "breves", $id_rubrique);
71
72 debut_grand_cadre();
73
74 echo afficher_hierarchie($id_rubrique);
75
76 fin_grand_cadre();
77 if (!$row) {echo _T('public:aucune_breve'); exit;}
78 debut_gauche();
79
80 debut_boite_info();
81
82 $res = "\n<div style='font-weight: bold; text-align: center' class='verdana1 spip_xx-small'>"
83 . _T('info_gauche_numero_breve')
84 . "<br /><span class='spip_xx-large'>"
85 . $id_breve
86 . '</span></div>';
87
88 echo $res;
89 voir_en_ligne ('breve', $id_breve, $statut);
90
91 fin_boite_info();
92
93
94 //////////////////////////////////////////////////////
95 // Logos de la breve
96 //
97
98 if (($spip_display != 4) AND $id_breve>0) {
99 $iconifier = charger_fonction('iconifier', 'inc');
100 echo $iconifier('id_breve', $id_breve, 'breves_voir', autoriser('publierdans','rubrique',$id_rubrique));
101 }
102
103 echo pipeline('affiche_gauche',
104 array(
105 'args'=>array('exec'=>'breves_voir','id_breve'=>$id_breve),
106 'data'=>''
107 )
108 );
109
110 echo bloc_des_raccourcis(icone_horizontale(_T('icone_nouvelle_breve'), generer_url_ecrire("breves_edit","new=oui&id_rubrique=$id_rubrique"), "breve-24.gif","creer.gif", false));
111
112
113
114 creer_colonne_droite();
115
116 echo pipeline('affiche_droite',
117 array(
118 'args'=>array('exec'=>'breves_voir','id_breve'=>$id_breve),
119 'data'=>''
120 )
121 );
122
123 echo meme_rubrique($id_rubrique, $id_breve, 'breve', 'date_heure');
124
125 debut_droite();
126
127 debut_cadre_relief("breve-24.gif");
128 echo "<table width='100%' cellpadding='0' cellspacing='0' border='0'>";
129 echo "<tr><td class='serif'>";
130
131 echo "\n<table cellpadding='0' cellspacing='0' border='0' width='100%'>";
132 echo "<tr><td style='width: 100%' valign='top'>";
133 gros_titre($titre);
134 echo "</td>";
135
136 if ($flag_editable) {
137 echo "<td>", http_img_pack("rien.gif", ' ', "width='5'") ."</td>\n";
138 echo "<td align='right'>";
139 icone(
140 // TODO -- _L("Fil a travaille sur cette breve il y a x minutes")
141 !$modif ? _T('icone_modifier_breve')
142 : _T('texte_travail_article', $modif),
143 generer_url_ecrire("breves_edit","id_breve=$id_breve&retour=nav"),
144 !$modif ? "breve-24.gif" : "warning-24.gif",
145 !$modif ? "edit.gif" : ''
146 );
147 echo "</td>";
148 }
149 echo "</tr></table>\n";
150
151 if ($flag_editable AND ($options == 'avancees' OR $statut == 'publie')) {
152
153 if ($statut == 'publie') {
154
155 debut_cadre_enfonce();
156 $dater = charger_fonction('dater', 'inc');
157 echo $dater($id_breve, $flag_editable, $statut, 'breve', 'breves_voir', $date_heure);
158 fin_cadre_enfonce();
159 }
160 else {
161 echo "<p><span class='verdana1 spip_medium'><b>".affdate($date_heure)."&nbsp;</b></span></p>";
162 }
163 }
164
165 $editer_mot = charger_fonction('editer_mot', 'inc');
166 echo $editer_mot('breve', $id_breve, $cherche_mot, $select_groupe, $flag_editable);
167
168 //
169 // Langue de la breve
170 //
171 if (($GLOBALS['meta']['multi_articles'] == 'oui') AND ($flag_editable)) {
172 $row = spip_fetch_array(spip_query("SELECT lang FROM spip_rubriques WHERE id_rubrique=$id_rubrique"));
173 $langue_parent = $row['lang'];
174
175 $row = spip_fetch_array(spip_query("SELECT lang, langue_choisie FROM spip_breves WHERE id_breve=$id_breve"));
176 $langue_breve = $row['lang'];
177
178 debut_cadre_enfonce('langues-24.gif');
179
180 echo "<table border='0' cellspacing='0' cellpadding='3' width='100%'><tr><td style='background-color: #eeeecc' class='serif2'>";
181 echo bouton_block_invisible('languesbreve');
182 echo "<b>";
183 echo _T('titre_langue_breve');
184 echo "&nbsp; (".traduire_nom_langue($langue_breve).")";
185 echo "</b>";
186 echo "</td></tr></table>";
187
188 echo debut_block_invisible('languesbreve');
189 echo "<div style='text-align: center'>";
190 $menu = menu_langues('changer_lang', $langue_breve, '', $langue_parent,'ajax')
191 . "<span><input type='submit' class='visible_au_chargement fondo' value='". _T('bouton_changer')."' /></span>";
192
193 echo redirige_action_auteur('editer_breve', "$id_breve/$id_rubrique", "breves_voir","id_breve=$id_breve", $menu);
194 echo "</div>\n";
195 echo fin_block();
196
197 fin_cadre_enfonce();
198 }
199 echo pipeline('affiche_milieu',
200 array(
201 'args'=>array('exec'=>'breves_voir','id_breve'=>$id_breve),
202 'data'=>''
203 )
204 );
205
206 echo justifier(propre($texte))."\n";
207
208 $texte_case = ($lien_titre.vider_url($lien_url)) ? "{{"._T('lien_voir_en_ligne')."}} [".$lien_titre."->".$lien_url."]" : '';
209 echo propre($texte_case);
210
211 if ($les_notes) {
212 echo "<hr width='70%' height='1' align='left'><span class='spip_small'>$les_notes</span>\n";
213 }
214
215 // afficher les extra
216 if ($champs_extra AND $extra) {
217 include_spip('inc/extra');
218 echo extra_affichage($extra, "breves");
219 }
220
221 if (autoriser('publierdans','rubrique',$id_rubrique) AND ($statut=="prop" OR $statut=="prepa")){
222 echo "<div align='right'>";
223
224 echo "<table><tr>";
225 echo "<td align='right'>";
226 icone(_T('icone_publier_breve'),
227 redirige_action_auteur('editer_breve',"$id_breve-statut-publie","breves_voir","id_breve=$id_breve"), "breve-24.gif", "racine-24.gif");
228 echo "</td>";
229
230 echo "<td>", http_img_pack("rien.gif", ' ', "width='5'") ."</td>\n";
231 echo "<td align='right'>";
232 icone(_T('icone_refuser_breve'),
233 redirige_action_auteur('editer_breve', "$id_breve-statut-refuse", "breves_voir","id_breve=$id_breve"), "breve-24.gif", "supprimer.gif");
234 echo "</td></tr>";
235 echo "</table>";
236
237 echo "</div>";
238 }
239
240 echo "</td></tr></table>";
241
242 fin_cadre_relief();
243
244 //////////////////////////////////////////////////////
245 // Forums
246 //
247
248 echo "<br /><br />";
249
250 echo "\n<div align='center'>";
251 icone(_T('icone_poster_message'), generer_url_ecrire("forum_envoi", "statut=prive&id=$id_breve&script=breves_voir") . '#formulaire',
252 "forum-interne-24.gif", "creer.gif");
253 echo "</div>";
254
255 echo "<br />";
256
257 echo afficher_forum(spip_query("SELECT * FROM spip_forum WHERE statut='prive' AND id_breve='$id_breve' AND id_parent=0 ORDER BY date_heure DESC LIMIT 20"), "breves_voir", "id_breve=$id_breve");
258
259 echo fin_gauche(), fin_page();
260 }
261
262 // http://doc.spip.org/@exec_breves_voir_dist
263 function exec_breves_voir_dist()
264 {
265 afficher_breves_voir(intval(_request('id_breve')), _request('cherche_mot'), _request('select_groupe'));
266 }
267
268
269 ?>