source: spip-zone/_core_/plugins/breves/breves_autoriser.php @ 93092

Last change on this file since 93092 was 93092, checked in by gilles.vincent@…, 5 years ago

Mise en forme plus homegene et plus lisible, pour les declarations des fonctions
Regles :

  • un espace après chaque virgule
  • un espace avant et apres chaque '='
File size: 4.2 KB
Line 
1<?php
2
3/***************************************************************************\
4 *  SPIP, Systeme de publication pour l'internet                           *
5 *                                                                         *
6 *  Copyright (c) 2001-2015                                                *
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 * Déclarations d'autorisations
15 *
16 * @package SPIP\Breves\Autorisations
17**/
18if (!defined('_ECRIRE_INC_VERSION')) return;
19
20/**
21 * Fonction du pipeline autoriser. N'a rien à faire
22 * @pipeline autoriser
23 */
24function breves_autoriser(){}
25
26
27/**
28 * Autoriser les brèves dans le menu de navigation
29 *
30 * @param  string $faire Action demandée
31 * @param  string $type  Type d'objet sur lequel appliquer l'action
32 * @param  int    $id    Identifiant de l'objet
33 * @param  array  $qui   Description de l'auteur demandant l'autorisation
34 * @param  array  $opt   Options de cette autorisation
35 * @return bool          true s'il a le droit, false sinon
36 */
37function autoriser_breves_menu_dist($faire, $type = '', $id = 0, $qui = NULL, $opt = NULL){
38        return  ($GLOBALS['meta']["activer_breves"] != "non");
39}
40
41/**
42 * Autoriser la création de brèves dans le menu de navigation
43 *
44 * @param  string $faire Action demandée
45 * @param  string $type  Type d'objet sur lequel appliquer l'action
46 * @param  int    $id    Identifiant de l'objet
47 * @param  array  $qui   Description de l'auteur demandant l'autorisation
48 * @param  array  $opt   Options de cette autorisation
49 * @return bool          true s'il a le droit, false sinon
50 */
51function autoriser_brevecreer_menu_dist($faire, $type, $id, $qui, $opt){
52        return  ($GLOBALS['meta']["activer_breves"] != "non")
53                AND verifier_table_non_vide();
54}
55
56 /**
57 * Autorisation de créer une brève
58 *
59 * Il faut que les brèves soient activées qu'une rubrique existe
60 *
61 * @param  string $faire Action demandée
62 * @param  string $type  Type d'objet sur lequel appliquer l'action
63 * @param  int    $id    Identifiant de l'objet
64 * @param  array  $qui   Description de l'auteur demandant l'autorisation
65 * @param  array  $opt   Options de cette autorisation
66 * @return bool          true s'il a le droit, false sinon
67**/
68function autoriser_breve_creer_dist($faire, $type, $id, $qui, $opt){
69        return
70                ($GLOBALS['meta']["activer_breves"] != "non")
71                AND (sql_countsel('spip_rubriques')>0);
72}
73
74/**
75 * Autoriser à créer une brève dans la rubrique $id
76 *
77 * @param  string $faire Action demandée
78 * @param  string $type  Type d'objet sur lequel appliquer l'action
79 * @param  int    $id    Identifiant de l'objet
80 * @param  array  $qui   Description de l'auteur demandant l'autorisation
81 * @param  array  $opt   Options de cette autorisation
82 * @return bool          true s'il a le droit, false sinon
83 */
84function autoriser_rubrique_creerbrevedans_dist($faire, $type, $id, $qui, $opt) {
85        $r = sql_fetsel("id_parent", "spip_rubriques", "id_rubrique=".intval($id));
86        return
87                $id
88                AND ($r['id_parent']==0)
89                AND ($GLOBALS['meta']["activer_breves"]!="non")
90                AND autoriser('voir','rubrique',$id);
91}
92
93
94/**
95 * Autoriser à modifier la brève $id
96 *
97 * - admins & redac si la brève n'est pas publiée
98 * - admins de rubrique parente si publiée
99 *
100 * @param  string $faire Action demandée
101 * @param  string $type  Type d'objet sur lequel appliquer l'action
102 * @param  int    $id    Identifiant de l'objet
103 * @param  array  $qui   Description de l'auteur demandant l'autorisation
104 * @param  array  $opt   Options de cette autorisation
105 * @return bool          true s'il a le droit, false sinon
106 */
107function autoriser_breve_modifier_dist($faire, $type, $id, $qui, $opt) {
108        $r = sql_fetsel("id_rubrique,statut", "spip_breves", "id_breve=".intval($id));
109        return
110                $r AND (
111                ($r['statut'] == 'publie' OR (isset($opt['statut']) AND $opt['statut']=='publie'))
112                        ? autoriser('publierdans', 'rubrique', $r['id_rubrique'], $qui, $opt)
113                        : in_array($qui['statut'], array('0minirezo', '1comite'))
114                );
115}
116
117
118?>
Note: See TracBrowser for help on using the repository browser.