2 if (!defined("_ECRIRE_INC_VERSION")) return;
4 function action_exporter_souscriptions_dist($arg=null) {
6 * $arg contient les différents arguments, séparés par des '/'. Une
7 * fois passés dans la fonctions split, il se présente de la manière
9 * argument en position 1 : 'paye' ou 'tous'
10 * argument en position 2 : type de souscription (dons, adhesion)
13 /* FIXME: permettre de selectionner les exports */
14 /* FIXME: améliorer la jointure... */
17 $securiser_action = charger_fonction('securiser_action', 'inc');
18 $arg = $securiser_action();
21 /* Vérification des droits de l'utilisateur. */
22 if(!autoriser("exporter", "souscriptiondon", '')) {
23 include_spip('inc/minipres');
28 $arg = explode("/", $arg);
30 $type_statut = $arg[0];
31 $type_souscription = $arg[1];
33 /* Préparation de la requête */
34 $select = "id_souscription, courriel, type_souscription,"
35 ."montant, reglee, spip_transactions.statut, date_paiement, mode, autorisation_id,"
36 ."nom, prenom, adresse, code_postal, ville, pays, telephone, recu_fiscal, envoyer_info, date_souscription,"
37 ."spip_souscription_campagnes.id_souscription_campagne, titre";
38 $from = "spip_souscriptions LEFT JOIN spip_transactions USING(id_transaction) LEFT JOIN spip_souscription_campagnes USING(id_souscription_campagne)";
41 if($type_souscription)
42 $where[] = "type_souscription='$type_souscription'";
44 $type_souscription = "tous";
47 if($type_statut == "payes") {
48 $where[] = "reglee='oui'";
50 elseif($type_statut == "tous") {
51 /* Afficher toutes les transactions du type demandé */
54 include_spip('inc/minipres');
55 echo minipres("Argument invalide");
59 $row = sql_select($select, $from, $where);
61 $entete = array("ID du don",
64 "Type de souscription",
69 "ID de l'autorisation",
77 "Souhaite reçu fiscal",
78 "Souhaite être informé",
81 "Titre de la campagne");
83 /* Utilisation de la fonction exporter_csv de Bonux */
84 $exporter_csv = charger_fonction('exporter_csv', 'inc/', true);
86 $exporter_csv("souscriptions_${type_souscription}_${type_statut}", $row, ',', $entete);