source: spip-zone/_plugins_/factures/trunk/factures_autorisations.php @ 71560

Last change on this file since 71560 was 71560, checked in by cyril@…, 8 years ago

version 1.02 avec les lignes de factures...

File size: 6.6 KB
Line 
1<?php
2/**
3 * Définit les autorisations du plugin Factures &amp; devis
4 *
5 * @plugin     Factures &amp; devis
6 * @copyright  2013
7 * @author     Cyril Marion - Ateliers CYM S.A.R.L.
8 * @licence    GNU/GPL
9 * @package    SPIP\Factures\Autorisations
10 */
11
12if (!defined('_ECRIRE_INC_VERSION')) return;
13
14
15/**
16 * Fonction d'appel pour le pipeline
17 * @pipeline autoriser */
18function factures_autoriser(){}
19
20
21// -----------------
22// Objet factures
23
24
25/**
26 * Autorisation de voir un élément de menu (factures)
27 *
28 * @param  string $faire Action demandée
29 * @param  string $type  Type d'objet sur lequel appliquer l'action
30 * @param  int    $id    Identifiant de l'objet
31 * @param  array  $qui   Description de l'auteur demandant l'autorisation
32 * @param  array  $opt   Options de cette autorisation
33 * @return bool          true s'il a le droit, false sinon
34**/
35function autoriser_factures_menu_dist($faire, $type, $id, $qui, $opt){
36        return true;
37} 
38
39
40/**
41 * Autorisation de voir le bouton d'accès rapide de création (facture)
42 *
43 * @param  string $faire Action demandée
44 * @param  string $type  Type d'objet sur lequel appliquer l'action
45 * @param  int    $id    Identifiant de l'objet
46 * @param  array  $qui   Description de l'auteur demandant l'autorisation
47 * @param  array  $opt   Options de cette autorisation
48 * @return bool          true s'il a le droit, false sinon
49**/
50function autoriser_facturecreer_menu_dist($faire, $type, $id, $qui, $opt){
51        return autoriser('creer', 'facture', '', $qui, $opt);
52} 
53
54/**
55 * Autorisation de créer (facture)
56 *
57 * @param  string $faire Action demandée
58 * @param  string $type  Type d'objet sur lequel appliquer l'action
59 * @param  int    $id    Identifiant de l'objet
60 * @param  array  $qui   Description de l'auteur demandant l'autorisation
61 * @param  array  $opt   Options de cette autorisation
62 * @return bool          true s'il a le droit, false sinon
63**/
64function autoriser_facture_creer_dist($faire, $type, $id, $qui, $opt) {
65        return in_array($qui['statut'], array('0minirezo', '1comite')); 
66}
67
68/**
69 * Autorisation de voir (facture)
70 *
71 * @param  string $faire Action demandée
72 * @param  string $type  Type d'objet sur lequel appliquer l'action
73 * @param  int    $id    Identifiant de l'objet
74 * @param  array  $qui   Description de l'auteur demandant l'autorisation
75 * @param  array  $opt   Options de cette autorisation
76 * @return bool          true s'il a le droit, false sinon
77**/
78function autoriser_facture_voir_dist($faire, $type, $id, $qui, $opt) {
79        return true;
80}
81
82/**
83 * Autorisation de modifier (facture)
84 *
85 * @param  string $faire Action demandée
86 * @param  string $type  Type d'objet sur lequel appliquer l'action
87 * @param  int    $id    Identifiant de l'objet
88 * @param  array  $qui   Description de l'auteur demandant l'autorisation
89 * @param  array  $opt   Options de cette autorisation
90 * @return bool          true s'il a le droit, false sinon
91**/
92function autoriser_facture_modifier_dist($faire, $type, $id, $qui, $opt) {
93        return in_array($qui['statut'], array('0minirezo', '1comite'));
94}
95
96/**
97 * Autorisation de supprimer (facture)
98 *
99 * @param  string $faire Action demandée
100 * @param  string $type  Type d'objet sur lequel appliquer l'action
101 * @param  int    $id    Identifiant de l'objet
102 * @param  array  $qui   Description de l'auteur demandant l'autorisation
103 * @param  array  $opt   Options de cette autorisation
104 * @return bool          true s'il a le droit, false sinon
105**/
106function autoriser_facture_supprimer_dist($faire, $type, $id, $qui, $opt) {
107        return $qui['statut'] == '0minirezo' AND !$qui['restreint'];
108}
109
110
111// -----------------
112// Objet lignes_factures
113
114
115/**
116 * Autorisation de voir un élément de menu (lignesfactures)
117 *
118 * @param  string $faire Action demandée
119 * @param  string $type  Type d'objet sur lequel appliquer l'action
120 * @param  int    $id    Identifiant de l'objet
121 * @param  array  $qui   Description de l'auteur demandant l'autorisation
122 * @param  array  $opt   Options de cette autorisation
123 * @return bool          true s'il a le droit, false sinon
124**/
125function autoriser_lignesfactures_menu_dist($faire, $type, $id, $qui, $opt){
126        return true;
127} 
128
129
130/**
131 * Autorisation de voir le bouton d'accès rapide de création (ligne)
132 *
133 * @param  string $faire Action demandée
134 * @param  string $type  Type d'objet sur lequel appliquer l'action
135 * @param  int    $id    Identifiant de l'objet
136 * @param  array  $qui   Description de l'auteur demandant l'autorisation
137 * @param  array  $opt   Options de cette autorisation
138 * @return bool          true s'il a le droit, false sinon
139**/
140function autoriser_lignecreer_menu_dist($faire, $type, $id, $qui, $opt){
141        return autoriser('creer', 'ligne', '', $qui, $opt);
142} 
143
144/**
145 * Autorisation de créer (ligne)
146 *
147 * @param  string $faire Action demandée
148 * @param  string $type  Type d'objet sur lequel appliquer l'action
149 * @param  int    $id    Identifiant de l'objet
150 * @param  array  $qui   Description de l'auteur demandant l'autorisation
151 * @param  array  $opt   Options de cette autorisation
152 * @return bool          true s'il a le droit, false sinon
153**/
154function autoriser_ligne_creer_dist($faire, $type, $id, $qui, $opt) {
155        return in_array($qui['statut'], array('0minirezo', '1comite')); 
156}
157
158/**
159 * Autorisation de voir (ligne)
160 *
161 * @param  string $faire Action demandée
162 * @param  string $type  Type d'objet sur lequel appliquer l'action
163 * @param  int    $id    Identifiant de l'objet
164 * @param  array  $qui   Description de l'auteur demandant l'autorisation
165 * @param  array  $opt   Options de cette autorisation
166 * @return bool          true s'il a le droit, false sinon
167**/
168function autoriser_ligne_voir_dist($faire, $type, $id, $qui, $opt) {
169        return true;
170}
171
172/**
173 * Autorisation de modifier (ligne)
174 *
175 * @param  string $faire Action demandée
176 * @param  string $type  Type d'objet sur lequel appliquer l'action
177 * @param  int    $id    Identifiant de l'objet
178 * @param  array  $qui   Description de l'auteur demandant l'autorisation
179 * @param  array  $opt   Options de cette autorisation
180 * @return bool          true s'il a le droit, false sinon
181**/
182function autoriser_ligne_modifier_dist($faire, $type, $id, $qui, $opt) {
183        return in_array($qui['statut'], array('0minirezo', '1comite'));
184}
185
186/**
187 * Autorisation de supprimer (ligne)
188 *
189 * @param  string $faire Action demandée
190 * @param  string $type  Type d'objet sur lequel appliquer l'action
191 * @param  int    $id    Identifiant de l'objet
192 * @param  array  $qui   Description de l'auteur demandant l'autorisation
193 * @param  array  $opt   Options de cette autorisation
194 * @return bool          true s'il a le droit, false sinon
195**/
196function autoriser_ligne_supprimer_dist($faire, $type, $id, $qui, $opt) {
197        return $qui['statut'] == '0minirezo' AND !$qui['restreint'];
198}
199
200
201
202
203?>
Note: See TracBrowser for help on using the repository browser.