[SPIP] +2.1.12
[velocampus/web/www.git] / www / ecrire / balise / formulaire_signature.php
1 <?php
2
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
5 * *
6 * Copyright (c) 2001-2011 *
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 //
16 // Formulaire de signature d'une petition
17 //
18
19 include_spip('base/abstract_sql');
20
21 // Contexte necessaire lors de la compilation
22
23 // Il *faut* demander petition, meme si on ne s'en sert pas dans l'affichage,
24 // car on doit obtenir la jointure avec la table des petitions pour verifier
25 // si une petition est attachee a l'article.
26
27 // http://doc.spip.org/@balise_FORMULAIRE_SIGNATURE
28 function balise_FORMULAIRE_SIGNATURE ($p) {
29 return calculer_balise_dynamique($p,'FORMULAIRE_SIGNATURE', array('id_article', 'petition'));
30 }
31
32 // Verification des arguments (contexte + filtres)
33 // http://doc.spip.org/@balise_FORMULAIRE_SIGNATURE_stat
34 function balise_FORMULAIRE_SIGNATURE_stat($args, $context_compil) {
35
36 // pas d'id_article => erreur de contexte
37 if (!$args[0]) {
38 $msg = array('zbug_champ_hors_motif',
39 array ('champ' => 'FORMULAIRE_SIGNATURE',
40 'motif' => 'ARTICLES'));
41 erreur_squelette($msg, $context_compil);
42 return '';
43 }
44 // article sans petition => pas de balise
45 else if (!$args[1])
46 return '';
47
48 else {
49 // aller chercher dans la base la petition associee
50 if ($r = sql_fetsel("texte, site_obli, message", 'spip_petitions', "id_article = ".intval($args[0]))) {
51 $args[2] = $r['texte'];
52 // le signataire doit-il donner un site ?
53 $args[3] = ($r['site_obli'] == 'oui') ? ' ':'';
54 // le signataire peut-il proposer un commentaire
55 $args[4] = ($r['message'] == 'oui') ? ' ':'';
56 }
57 return $args;
58 }
59 }
60 ?>