[SPIP] ~maj 3.0.10 --> 3.0.14
[lhc/web/www.git] / www / plugins-dist / sites / sites_autoriser.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
14 if (!defined('_ECRIRE_INC_VERSION')) return;
15
16 // fonction pour le pipeline
17 function sites_autoriser() {}
18
19
20 // bouton du bandeau
21 function autoriser_sites_menu_dist($faire, $type='', $id=0, $qui = NULL, $opt = NULL){
22 return ($GLOBALS['meta']["activer_sites"] != "non");
23 }
24 function autoriser_sitecreer_menu_dist($faire, $type, $id, $qui, $opt){
25 return
26 ($GLOBALS['meta']["activer_sites"] != "non"
27 AND verifier_table_non_vide()
28 AND (
29 $qui['statut']=='0minirezo'
30 OR ($GLOBALS['meta']["proposer_sites"] >=
31 ($qui['statut']=='1comite' ? 1 : 2))));
32 }
33
34
35 // Moderer la syndication ?
36 // = modifier l'objet correspondant (si forum attache a un objet)
37 // = droits par defaut sinon (admin complet pour moderation complete)
38 // http://doc.spip.org/@autoriser_modererforum_dist
39 function autoriser_site_moderer_dist($faire, $type, $id, $qui, $opt) {
40 return
41 autoriser('modifier', 'site', $id, $qui, $opt);
42 }
43
44 function autoriser_site_purger_dist($faire, $type, $id, $qui, $opt) {
45 return
46 autoriser('moderer', 'site', $id, $qui, $opt);
47 }
48
49
50 function autoriser_controlersyndication_menu_dist($faire, $type, $id, $qui, $opt){
51 return ($qui['statut']=='0minirezo' AND sql_countsel('spip_syndic_articles'));
52 }
53
54 // Creer un nouveau site ?
55 function autoriser_site_creer_dist($faire, $type, $id, $qui, $opt){
56 return
57 ($GLOBALS['meta']["activer_sites"] != "non"
58 AND (
59 $qui['statut']=='0minirezo'
60 OR ($GLOBALS['meta']["proposer_sites"] >=
61 ($qui['statut']=='1comite' ? 1 : 2))));
62 }
63
64 // Autoriser a creer un site dans la rubrique $id
65 // http://doc.spip.org/@autoriser_rubrique_creersitedans_dist
66 function autoriser_rubrique_creersitedans_dist($faire, $type, $id, $qui, $opt) {
67 return
68 $id
69 AND autoriser('voir','rubrique',$id)
70 AND $GLOBALS['meta']['activer_sites'] != 'non'
71 AND (
72 $qui['statut']=='0minirezo'
73 OR ($GLOBALS['meta']["proposer_sites"] >=
74 ($qui['statut']=='1comite' ? 1 : 2)));
75 }
76
77
78 // Autoriser a modifier un site
79 // http://doc.spip.org/@autoriser_site_modifier_dist
80 function autoriser_site_modifier_dist($faire, $type, $id, $qui, $opt) {
81 if ($qui['statut'] == '0minirezo' AND !$qui['restreint'])
82 return true;
83
84 $r = sql_fetsel("id_rubrique,statut", "spip_syndic", "id_syndic=".intval($id));
85 return ($r
86 AND autoriser('voir','rubrique',$r['id_rubrique'])
87 AND
88 ($r['statut'] == 'publie' OR (isset($opt['statut']) AND $opt['statut']=='publie'))
89 ? autoriser('publierdans', 'rubrique', $r['id_rubrique'], $qui, $opt)
90 : in_array($qui['statut'], array('0minirezo', '1comite'))
91 );
92 }
93 // Autoriser a voir un site $id_syndic
94 // http://doc.spip.org/@autoriser_site_voir_dist
95 function autoriser_site_voir_dist($faire, $type, $id, $qui, $opt) {
96 return autoriser_site_modifier_dist($faire, $type, $id, $qui, $opt);
97 }
98 ?>