source: spip-zone/_plugins_/Association/Associaspip/exec/edit_relances.php @ 61063

Last change on this file since 61063 was 61063, checked in by gildas.cotomale@…, 9 years ago

harmonisation, correction et extension du filtrage des listes principales

File size: 4.2 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 (V1)       *
6 *  Copyright (c) 2010-2011 Emmanuel Saint-James & Jeannot Lapin (V2)       *
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
12
13if (!defined('_ECRIRE_INC_VERSION'))
14        return;
15
16include_spip ('inc/navigation_modules');
17
18function exec_edit_relances()
19{
20        if (!autoriser('editer_membres', 'association')) {
21                        include_spip('inc/minipres');
22                        echo minipres();
23        } else {
24                onglets_association('titre_onglet_membres');
25                // notice
26                echo _T('asso:aide_relances');
27                // datation et raccourcis
28                icones_association(array('adherents'));
29                $statut_interne = _request('statut_interne');
30                if (!$statut_interne)
31                        $statut_interne = 'echu';
32                $id_groupe = intval(_request('groupe'));
33                debut_cadre_association('relance-24.png', 'tous_les_membres_a_relancer');
34                // Filtres
35                filtres_association(array(
36                        'groupe'=>$id_groupe,
37                        'statut'=>$statut_interne,
38                ), 'edit_relances');
39                // MAILING
40                $res = '<div class="formulaire_spip formulaire_edit_relance"><form>'
41                        // message (objet/titre et corps)
42                        . '<ul>'
43                        . '<li class="editer_sujet">'
44                        . '<label for="sujet">'. _T('asso:sujet') . '</label>'
45                        . '<input name="sujet" type="text" value="'.stripslashes(_T('asso:titre_relance')).'" id="sujet" class="text" />'
46                        . "</li>\n"
47                        . '<li class="editer_message">'
48                        . '<label for="message">'. _T('asso:message') . '</label>'
49                        . '<textarea name="message" rows="15" id="message">'.stripslashes(_T('asso:message_relance')).'</textarea>'
50                        . "</li>\n"
51                        . "</ul>\n"
52                        // destinataires (liste des resultats de filtrage, a affiner en decochant les membres a exclure)
53                        . "<table width='100%' class='asso_tablo' id='asso_tablo_relances'>\n"
54#                       . '<caption>'. _T('asso:adherent_entete_statut_'.$statut_interne) .'</caption>'
55                        . "<thead>\n<tr>"
56                        . '<th>'. _T('asso:entete_id') .'</th>'
57                        . '<th>' . _T('asso:entete_nom') .'</th>'
58                        . '<th>' . _T('asso:adherent_libelle_validite') .'</th>' // comme il s'agit initialement de faire des relances, cette information est rajoutee
59                        . '<th>' . _T('asso:envoi') .'</th>'
60                        . "</tr>\n</thead><tbody>"
61                        .  relances_while($statut_interne, $groupe)
62                        . "</tbody>\n</table>\n";
63                $res .= '<p class="boutons"><input type="submit" value="'. ( isset($action) ? _T('asso:bouton_'.$action) : _T('asso:bouton_envoyer') ) .'" /></p>';
64                echo generer_form_ecrire('action_relances', $res, '', '');
65                fin_page_association();
66        }
67}
68
69function relances_while($statut_interne, $id_groupe=0)
70{
71        $query = sql_select(
72                'id_auteur, sexe, nom_famille, prenom, statut_interne, validite', // select
73                'spip_asso_membres AS a_m'. ($id_groupe?' LEFT JOIN spip_asso_groupes_liaisons a_g_l ON a_m.id_auteur=a_g_l.id_auteur ':''), // from
74                " statut_interne LIKE '$statut_interne' AND statut_interne <> 'sorti'". ($id_groupe?' AND id_groupe='.intval($id_groupe):''), //where
75                '', // limit
76                'nom_famille, prenom, validite' // order by
77        );
78        $res = '';
79        while ($data = sql_fetch($query)) {
80                $res .= '<tr class="'.$GLOBALS['association_styles_des_statuts'][$data['statut_interne']].'" id="'.$data['id_auteur'].'">'
81                .'<td class="integer"><label for="mbr'.$data['id_auteur'].'">'.$data['id_auteur'].'</label></td>'
82                .'<td class="text"><label for="mbr'.$data['id_auteur'].'">'. association_calculer_nom_membre($data['sexe'], $data['prenom'], $data['nom_famille']) .'</label></td>'
83                .'<td class="date"><label for="mbr'.$data['id_auteur'].'">'. association_datefr($data['validite']) .'</label></td>'
84                .'<td class="action"><input name="id[]" type="checkbox" id="mbr'.$data['id_auteur'].'" value="'.$data['id_auteur'].'" checked="checked" /><input name="statut['.$data['id_auteur'].']" type="hidden" value="'.$data['statut_interne'].'" /></td>'
85                ."</tr>\n";
86        }
87        return $res;
88}
89
90?>
Note: See TracBrowser for help on using the repository browser.