Mise en route du suivi.
[aidenligne_francais_universite.git] / ecrire / inc / message_select.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 // $messages_vus en reference pour interdire l'affichage de message en double
16
17 // http://doc.spip.org/@afficher_messages
18 function afficher_messages($titre, $from, $where, &$messages_vus, $afficher_auteurs = true, $important = false) {
19 global $connect_id_auteur, $couleur_foncee, $spip_lang_rtl, $spip_lang_left;
20
21 $tmp_var = 't_' . substr(md5($where.$from), 0, 4);
22
23 $requete = array('FROM' => "spip_messages AS messages$from", 'WHERE' => $where .(!$messages_vus ? '' : ' AND messages.id_message NOT IN ('.join(',', $messages_vus).')'), 'ORDER BY'=> 'date_heure');
24
25 if ($afficher_auteurs) {
26 $largeurs = array('', 130, 20, 120);
27 $styles = array('arial2', 'arial1', 'arial1', 'arial1');
28 } else {
29 $largeurs = array('', 20, 120);
30 $styles = array('arial2', 'arial1', 'arial1');
31 }
32
33
34 $res = affiche_tranche_bandeau($requete, "messagerie-24.gif", $couleur_foncee, "white", $tmp_var, $titre, false, $largeurs, $styles, 'afficher_message_boucles', $afficher_auteurs);
35
36 $result = spip_query("SELECT messages.id_message FROM " . $requete['FROM'] . ' WHERE ' . $requete['WHERE']);
37
38 while ($r = spip_fetch_array($result)) {
39 $r = $r['id_message'];
40 $messages_vus[$r]= $r;
41 }
42
43 if (!$important) return $res;
44 else return "<div class='cadre-couleur'><div class='cadre-padding'>$res</div></div>";
45 }
46
47 // http://doc.spip.org/@afficher_message_boucles
48 function afficher_message_boucles($row, &$messages_vus, $voir_logo, $afficher_auteurs)
49 {
50 global $connect_id_auteur, $spip_lang_left, $spip_lang_rtl;
51
52 $vals = array();
53
54 $id_message = $row['id_message'];
55 $date = $row["date_heure"];
56 $date_fin = $row["date_fin"];
57 $titre = sinon($row['titre'], _T('ecrire:info_sans_titre'));
58 $type = $row["type"];
59 $rv = $row["rv"];
60 $messages_vus[$id_message] = $id_message;
61
62 //
63 // Titre
64 //
65
66 $s = "<a href='" . generer_url_ecrire("message","id_message=$id_message") . "' style='display: block;'>";
67
68 switch ($type) {
69 case 'pb' :
70 $puce = "m_envoi_bleu$spip_lang_rtl.gif";
71 break;
72 case 'memo' :
73 $puce = "m_envoi_jaune$spip_lang_rtl.gif";
74 break;
75 case 'affich' :
76 $puce = "m_envoi_jaune$spip_lang_rtl.gif";
77 break;
78 case 'normal':
79 default:
80 $puce = "m_envoi$spip_lang_rtl.gif";
81 break;
82 }
83
84 $s .= http_img_pack("$puce", "", "width='14' height='7'");
85 $s .= "&nbsp;&nbsp;".typo($titre)."</a>";
86 $vals[] = $s;
87
88 //
89 // Auteurs
90
91 if ($afficher_auteurs) {
92 $result_auteurs = spip_query("SELECT auteurs.id_auteur, auteurs.nom FROM spip_auteurs AS auteurs, spip_auteurs_messages AS lien WHERE lien.id_message=$id_message AND lien.id_auteur!=$connect_id_auteur AND lien.id_auteur=auteurs.id_auteur");
93
94 $auteurs = '';
95 while ($row_auteurs = spip_fetch_array($result_auteurs)) {
96 $id_auteur = $row_auteurs['id_auteur'];
97 $auteurs[] = "<a href='" . generer_url_ecrire("auteur_infos","id_auteur=$id_auteur") . "'>".typo($row_auteurs['nom'])."</a>";
98 }
99
100 if ($auteurs AND $type == 'normal') {
101 $s = "<span class='arial1 spip_x-small'>" . join(', ', $auteurs) . "</span>";
102 } else $s = "&nbsp;";
103 $vals[] = $s;
104 }
105
106 //
107 // Messages de forums
108
109 $total_forum = spip_num_rows(spip_query("SELECT id_message FROM spip_forum WHERE id_message = $id_message"));
110
111 if ($total_forum > 0) $vals[] = "($total_forum)";
112 else $vals[] = "";
113
114 //
115 // Date
116 //
117
118 $s = affdate($date);
119 if ($rv == 'oui') {
120 $jour=journum($date);
121 $mois=mois($date);
122 $annee=annee($date);
123
124 $heure = heures($date).":".minutes($date);
125 if (affdate($date) == affdate($date_fin))
126 $heure_fin = heures($date_fin).":".minutes($date_fin);
127 else
128 $heure_fin = "...";
129
130 $s = "<div " .
131 http_style_background('rv-12.gif', "$spip_lang_left center no-repeat; padding-$spip_lang_left: 15px") .
132 "><a href='" . generer_url_ecrire("calendrier","type=jour&jour=$jour&mois=$mois&annee=$annee") . "'><b style='color: black;'>$s</b><br />$heure-$heure_fin</a></div>";
133 } else {
134 $s = "<span style='color: #999999'>$s</span>";
135 }
136
137 $vals[] = $s;
138
139 return $vals;
140 }
141
142 ?>