source: spip-zone/_plugins_/Association/Associaspip/association_options.php @ 47991

Last change on this file since 47991 was 47477, checked in by jeannolapin@…, 10 years ago

Associaspip Gestion des membres: les champs civilité et prénom deviennent optionnels.

File size: 7.3 KB
Line 
1<?php
2/***************************************************************************\
3 *  Associaspip, extension de SPIP pour gestion d'associations             *
4 *                                                                         *
5 *  Copyright (c) 2007 Bernard Blazin & François de Montlivault            *
6 *  Copyright (c) 2010 Emmanuel Saint-James                                *
7 *                                                                         *
8 *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *
9 *  Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne.   *
10\***************************************************************************/
11
12if (!defined("_ECRIRE_INC_VERSION")) return;
13
14// Le premier element indique un ancien membre
15$GLOBALS['association_liste_des_statuts'] =
16  array('sorti','prospect','ok','echu','relance');
17
18$GLOBALS['association_styles_des_statuts'] = array(
19        "echu" => "impair",
20        "ok" => "valide",
21        "prospect" => "prospect",
22        "relance" => "pair",
23        "sorti" => "sortie"
24);
25
26
27define('_DIR_PLUGIN_ASSOCIATION_ICONES', _DIR_PLUGIN_ASSOCIATION.'img_pack/');
28
29function association_icone($texte, $lien, $image, $sup='rien.gif')
30{
31        return icone_horizontale($texte, $lien, _DIR_PLUGIN_ASSOCIATION_ICONES. $image, $sup, false);
32}
33
34function association_bouton($texte, $image, $script, $args='', $img_attributes='')
35{
36        return '<a href="'
37        . generer_url_ecrire($script, $args)
38        . '"><img src="'
39        . _DIR_PLUGIN_ASSOCIATION_ICONES. $image 
40        . '" alt=" " title="'
41        . $texte
42        . '" '
43        . $img_attributes
44        .' /></a>';
45}
46
47function association_retour()
48{
49        return bloc_des_raccourcis(association_icone(_T('asso:bouton_retour'),  str_replace('&', '&amp;', $_SERVER['HTTP_REFERER']), "retour-24.png"));
50}
51
52function request_statut_interne()
53{
54        $statut_interne = _request('statut_interne');
55        if (in_array($statut_interne, $GLOBALS['association_liste_des_statuts'] ))
56                return "statut_interne=" . sql_quote($statut_interne);
57        elseif ($statut_interne == 'tous')
58                return "statut_interne LIKE '%'";
59        else {
60                set_request('statut_interne', 'defaut');
61                $a = $GLOBALS['association_liste_des_statuts'];
62                array_shift($a);
63                return sql_in("statut_interne", $a);
64        }
65}
66
67function association_ajouterBoutons($boutons_admin) {
68                // si on est admin
69        if ($GLOBALS['connect_statut'] == "0minirezo" && $GLOBALS["connect_toutes_rubriques"]) {
70
71                $boutons_admin['naviguer']->sousmenu['association']= new Bouton(
72                        _DIR_PLUGIN_ASSOCIATION_ICONES."annonce.gif",  // icone
73                        _T('asso:titre_menu_gestion_association') //titre
74                        );
75                       
76        }
77        return $boutons_admin;
78}
79       
80
81function association_mode_de_paiement($journal, $label)
82{
83        $sel = '';
84        $sql = sql_select("code,intitule", "spip_asso_plan", "classe=".sql_quote($GLOBALS['association_metas']['classe_banques']), '', "code") ;
85        while ($banque = sql_fetch($sql)) {
86                $c = $banque['code'];
87                $sel .= "<option value='$c'"
88                . (($journal==$c) ? ' selected="selected"' : '')
89                . '>' . $banque['intitule'] ."</option>\n";
90        }
91
92        return '<label for="journal"><strong>'
93          . $label
94          . "&nbsp;:</strong></label>\n"
95          . (!$sel 
96              ? "<input name='journal' id='journal' class='formo' />"
97              : "<select name='journal' id='journal' class='formo'>$sel</select>\n");
98}
99
100// affichage du nom des membres
101function association_calculer_nom_membre($civilite, $prenom, $nom) {
102        $res = ($GLOBALS['association_metas']['civilite']=="on")?$civilite.' ':'';
103        $res .= ($GLOBALS['association_metas']['prenom']=="on")?$prenom.' ':'';
104        $res .= $nom;
105        return $res;
106}
107
108//Conversion de date
109function association_datefr($date) { 
110                $split = explode('-',$date); 
111                $annee = $split[0]; 
112                $mois = $split[1]; 
113                $jour = $split[2]; 
114                return $jour.'/'.$mois.'/'.$annee; 
115        }
116
117function association_verifier_date($date) {
118        if (!preg_match('/^\d{4}\-\d{2}\-\d{2}$/', $date)) return _T('asso:erreur_format_date');
119        list($annee, $mois, $jour) = explode("-",$date);
120        if (!checkdate($mois, $jour, $annee)) return _T('asso:erreur_date');
121        return;
122}
123       
124function association_nbrefr($montant) {
125                $montant = number_format(floatval($montant), 2, ',', ' ');
126                return $montant;
127        }
128
129/* prend en parametre le nom de l'argument a chercher dans _request et retourne un float */
130function association_recupere_montant ($valeur) {
131        if ($valeur != '') {
132                $valeur = str_replace(" ", "", $valeur); /* suppprime les espaces separateurs de milliers */
133                $valeur = str_replace(",", ".", $valeur); /* convertit les , en . */
134                $valeur = floatval($valeur);
135        } else $valeur = 0.0;
136        return $valeur;
137}
138
139        //Affichage du message indiquant la date
140function association_date_du_jour($heure=false) {
141                return '<p>'.($heure ? _T('asso:date_du_jour_heure') : _T('asso:date_du_jour')).'</p>';
142        }
143       
144function association_flottant($s)
145{
146        return number_format(floatval($s), 2, ',', ' ');
147}
148
149function association_header_prive($flux){
150        $c = direction_css(find_in_path('association.css'));
151        return "$flux\n<link rel='stylesheet' type='text/css' href='$c' />";
152}
153
154function association_delete_tables($flux){
155  spip_unlink(cache_meta('association_metas'));
156}
157
158
159// Pour ne pas avoir a ecrire le prefixe "spip_" dans les squelettes etc
160// (cf trouver_table)
161global $table_des_tables;
162$table_des_tables['asso_dons'] = 'asso_dons';
163$table_des_tables['asso_ventes'] = 'asso_ventes';
164$table_des_tables['asso_comptes'] = 'asso_comptes';
165$table_des_tables['comptes'] = 'asso_comptes';
166$table_des_tables['asso_categories'] = 'asso_categories';
167$table_des_tables['asso_plan'] = 'asso_plan';
168$table_des_tables['asso_ressources'] = 'asso_ressources';
169$table_des_tables['asso_prets'] = 'asso_prets';
170$table_des_tables['asso_activites'] = 'asso_activites';
171$table_des_tables['asso_membres'] = 'asso_membres';
172$table_des_tables['association_metas'] = 'association_metas';
173$table_des_tables['asso_destination'] = 'asso_destination';
174$table_des_tables['asso_destination_op'] = 'asso_destination_op';
175
176// Pour que les raccourcis ci-dessous heritent d'une zone de clic pertinente
177global $table_titre;
178$table_titre['asso_membres']= "nom_famille AS titre, '' AS lang";
179$table_titre['asso_dons']= "CONCAT('don ', id_don) AS titre, '' AS lang";
180
181// Toujours charger la description des tables (a ameliorer)
182include _DIR_PLUGIN_ASSOCIATION . 'base/association.php';
183
184// Raccourcis
185// Les tables ayant 2 prefixes ("spip_asso_")
186// le raccourci "don" implique de declarer le raccourci "asso_don" etc.
187
188function generer_url_asso_don($id, $param='', $ancre='') {
189        return  generer_url_ecrire('edit_don', "id=" . intval($id));
190}
191
192function generer_url_don($id, $param='', $ancre='') {
193        return  array('asso_don', $id);
194}
195
196function generer_url_asso_membre($id, $param='', $ancre='') {
197        return  generer_url_ecrire('voir_adherent', "id=" . intval($id));
198}
199
200function generer_url_membre($id, $param='', $ancre='') {
201        return  array('asso_membre', $id);
202}
203
204function generer_url_asso_vente($id, $param='', $ancre='') {
205        return  generer_url_ecrire('edit_vente', "id=" . intval($id));
206}
207
208function generer_url_vente($id, $param='', $ancre='') {
209        return  array('asso_vente', $id);
210}
211
212
213// pour executer les squelettes comportant la balise Meta
214include_spip('balise/meta');
215// charger les metas donnees
216$inc_meta = charger_fonction('meta', 'inc'); // inc_version l'a deja chargee
217$inc_meta('association_metas'); 
218?>
Note: See TracBrowser for help on using the repository browser.