X-Git-Url: http://olivier.miskin.fr/git/?a=blobdiff_plain;f=action%2Fexporter_souscriptions.php;h=e68eac7c9281bf62af686b8b3355281730e918d2;hb=2ecf706208f0681aabe23cefc9568362ce1685b6;hp=a1228f67a3d85f2b39396e439214c721c838cb4a;hpb=1a8acfa96559fbd8e9f6081d652c69bc8c694581;p=spip_souscriptions.git diff --git a/action/exporter_souscriptions.php b/action/exporter_souscriptions.php index a1228f6..e68eac7 100644 --- a/action/exporter_souscriptions.php +++ b/action/exporter_souscriptions.php @@ -2,6 +2,13 @@ if (!defined("_ECRIRE_INC_VERSION")) return; function action_exporter_souscriptions_dist($arg=null) { + /* + * $arg contient les différents arguments, séparés par des '/'. Une + * fois passés dans la fonctions split, il se présente de la manière + * suivante : + * argument en position 1 : 'paye' ou 'tous' + * argument en position 2 : type de souscription (dons, adhesion) + */ /* FIXME: permettre de selectionner les exports */ /* FIXME: améliorer la jointure... */ @@ -18,20 +25,30 @@ function action_exporter_souscriptions_dist($arg=null) { exit; } - if($arg == "payes") { - $row = sql_select("id_souscription, courriel," - ."montant, reglee, spip_transactions.statut, date_paiement, mode, autorisation_id," - ."nom, prenom, code_postal, ville, recu_fiscal, envoyer_info, date_souscription," - ."id_souscription_campagne, titre", - "spip_souscriptions LEFT JOIN spip_transactions USING(id_transaction) LEFT JOIN spip_souscription_campagnes USING(id_souscription_campagne) ", - "reglee='oui'"); + $arg = explode("/", $arg); + + $type_statut = $arg[0]; + $type_souscription = $arg[1]; + + /* Préparation de la requête */ + $select = "id_souscription, courriel, type_souscription," + ."montant, reglee, spip_transactions.statut, date_paiement, mode, autorisation_id," + ."nom, prenom, code_postal, ville, recu_fiscal, envoyer_info, date_souscription," + ."spip_souscription_campagnes.id_souscription_campagne, titre"; + $from = "spip_souscriptions LEFT JOIN spip_transactions USING(id_transaction) LEFT JOIN spip_souscription_campagnes USING(id_souscription_campagne)"; + + $where = array(); + if($type_souscription) + $where[] = "type_souscription='$type_souscription'"; + else + $type_souscription = "tous"; + + + if($type_statut == "payes") { + $where[] = "reglee='oui'"; } - elseif($arg == "tous") { - $row = sql_select("id_souscription, courriel," - ."montant, reglee, spip_transactions.statut, date_paiement, mode, autorisation_id," - ."nom, prenom, code_postal, ville, recu_fiscal, envoyer_info, date_souscription," - ."id_souscription_campagne, titre", - "spip_souscriptions LEFT JOIN spip_transactions USING(id_transaction) LEFT JOIN spip_souscription_campagnes USING(id_souscription_campagne)"); + elseif($type_statut == "tous") { + /* Afficher toutes les transactions du type demandé */ } else { include_spip('inc/minipres'); @@ -39,9 +56,12 @@ function action_exporter_souscriptions_dist($arg=null) { exit; } + $row = sql_select($select, $from, $where); + $entete = array("ID du don", "Courriel", "Montant", + "Type de souscription", "Reglée", "Statut", "Date de paiement", @@ -60,6 +80,6 @@ function action_exporter_souscriptions_dist($arg=null) { /* Utilisation de la fonction exporter_csv de Bonux */ $exporter_csv = charger_fonction('exporter_csv', 'inc/', true); - $exporter_csv("souscriptions_${arg}", $row, ',', $entete); + $exporter_csv("souscriptions_${type_souscription}_${type_statut}", $row, ',', $entete); exit(); }