-
Notifications
You must be signed in to change notification settings - Fork 22
/
Copy pathbank_autorisations.php
157 lines (138 loc) · 3.77 KB
/
bank_autorisations.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
<?php
/*
* Paiement Bancaire
* module de paiement bancaire multi prestataires
* stockage des transactions
*
* Auteurs :
* Cedric Morin, Nursit.com
* (c) 2012-2019 - Distribue sous licence GNU/GPL
*
*/
if (!defined('_ECRIRE_INC_VERSION')){
return;
}
// pipeline de chargement
function bank_autoriser($flux){
return $flux;
}
function autoriser_bank_configurer($faire, $mode = '', $id = 0, $qui = NULL, $opt = NULL){
return autoriser('webmestre');
}
function autoriser_utilisermodepaiement_dist($faire, $mode = '', $id = 0, $qui = NULL, $opt = NULL){
include_spip("presta/$mode/config");
$fonctions = array('autoriser_' . $mode . '_' . $faire, 'autoriser_' . $mode . '_' . $faire . '_dist', 'autoriser_' . $mode, 'autoriser_' . $mode . '_dist');
foreach ($fonctions as $f){
if (function_exists($f)){
return $f($faire, $mode, $id, $qui, $opt);
}
}
return true;
}
function autoriser_utilisermodepaiementabo_dist($faire, $mode = '', $id = 0, $qui = NULL, $opt = NULL){
include_spip("presta/$mode/config");
$fonctions = array('autoriser_' . $mode . '_' . $faire, 'autoriser_' . $mode . '_' . $faire . '_dist', 'autoriser_' . $mode, 'autoriser_' . $mode . '_dist');
foreach ($fonctions as $f){
if (function_exists($f)){
return $f($faire, $mode, $id, $qui, $opt);
}
}
return true;
}
function autoriser_transaction_iconifier_dist($faire, $mode = '', $id = 0, $qui = NULL, $opt = NULL){
return false;
}
function autoriser_bankrecurrence_iconifier_dist($faire, $mode = '', $id = 0, $qui = NULL, $opt = NULL){
return false;
}
function autoriser_bankrecurrence_modifier_dist($faire, $mode = '', $id = 0, $qui = NULL, $opt = NULL){
return false;
}
function autoriser_bankrecurrence_annuler_dist($faire, $mode = '', $id = 0, $qui = NULL, $opt = NULL){
if (!autoriser('webmestre')) {
return false;
}
if (intval($id) and sql_countsel('spip_bank_recurrences', 'id_bank_recurrence='.intval($id)." AND statut='valide'")) {
return true;
}
return false;
}
/**
* Seuls les webmestres peuvent encaisser un cheque
* webmaster.
* @param $faire
* @param $type
* @param $id_transaction
* @param $qui
* @param $opt
* @return bool
*/
function autoriser_transaction_encaissercheque_dist($faire, $type, $id_transaction, $qui, $opt){
return autoriser('webmestre');
}
/**
* Seuls les webmestres peuvent encaisser un virement
* webmaster.
* @param $faire
* @param $type
* @param $id_transaction
* @param $qui
* @param $opt
* @return bool
*/
function autoriser_transaction_encaisservirement_dist($faire, $type, $id_transaction, $qui, $opt){
return autoriser('webmestre');
}
/**
* Tout le monde peut encaisser sa simu de virement
*
* @param $faire
* @param $type
* @param $id_transaction
* @param $qui
* @param $opt
* @return bool
*/
function autoriser_transaction_encaissersimu_dist($faire, $type, $id_transaction, $qui, $opt){
return true;
}
/**
* Seuls les webmestres peuvent rembourser une transaction
* webmaster.
* @param $faire
* @param $type
* @param $id_transaction
* @param $qui
* @param $opt
* @return bool
*/
function autoriser_transaction_rembourser_dist($faire, $type, $id_transaction, $qui, $opt){
return autoriser('webmestre');
}
/**
* @param $faire
* @param $mode
* @param $id
* @param $qui
* @param $opt
* @return false
*/
function autoriser_transaction_abandonner_dist($faire, $mode = '', $id = 0, $qui = NULL, $opt = NULL){
if (!$id) {
return false;
}
$transaction = sql_fetsel('id_auteur, statut', 'spip_transactions', 'id_transaction='.intval($id));
if (empty($opt['statut'])) {
$statut = $transaction['statut'];
}
else {
$statut = $opt['statut'];
}
if ($statut === 'commande' and in_array($transaction['id_auteur'], array(0, $qui['id_auteur']))) {
return true;
}
if ($statut === 'attente') {
return autoriser('webmestre');
}
return false;
}