Subversion Repositories Applications.papyrus

Rev

Rev 244 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 244 Rev 311
Line 17... Line 17...
17
// |                                                                                                      |
17
// |                                                                                                      |
18
// | You should have received a copy of the GNU Lesser General Public                                     |
18
// | You should have received a copy of the GNU Lesser General Public                                     |
19
// | License along with this library; if not, write to the Free Software                                  |
19
// | License along with this library; if not, write to the Free Software                                  |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
20
// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                            |
21
// +------------------------------------------------------------------------------------------------------+
21
// +------------------------------------------------------------------------------------------------------+
22
// CVS : $Id: annuaire.fonct.php,v 1.2 2005-01-06 15:18:31 alex Exp $
22
// CVS : $Id: annuaire.fonct.php,v 1.3 2005-03-24 08:24:29 alex Exp $
23
/**
23
/**
24
* Fonctions du module annuaire
24
* Fonctions du module annuaire
25
*
25
*
26
* Fonctions du module annuaire
26
* Fonctions du module annuaire
27
*
27
*
Line 29... Line 29...
29
//Auteur original :
29
//Auteur original :
30
*@author        Alexandre Granier <alexandre@tela-botanica.org>
30
*@author        Alexandre Granier <alexandre@tela-botanica.org>
31
//Autres auteurs :
31
//Autres auteurs :
32
*@author        Aucun
32
*@author        Aucun
33
*@copyright     Tela-Botanica 2000-2004
33
*@copyright     Tela-Botanica 2000-2004
34
*@version       $Revision: 1.2 $
34
*@version       $Revision: 1.3 $
35
// +------------------------------------------------------------------------------------------------------+
35
// +------------------------------------------------------------------------------------------------------+
36
*/
36
*/
Line 37... Line 37...
37
 
37
 
38
// +------------------------------------------------------------------------------------------------------+
38
// +------------------------------------------------------------------------------------------------------+
Line 54... Line 54...
54
    $form->addElement ('password', 'password', ANN_MOT_DE_PASSE) ;
54
    $form->addElement ('password', 'password', ANN_MOT_DE_PASSE) ;
55
    $form->addElement('submit', 'valider', ANN_VALIDER);
55
    $form->addElement('submit', 'valider', ANN_VALIDER);
Line 56... Line 56...
56
    
56
    
Line 57... Line 57...
57
    $res .= $form->toHTML() ;
57
    $res .= $form->toHTML() ;
58
 
58
 
59
    $res .= "<tr class=\"texte_tb\"><td>".ANN_TEXTE_PERDU."</td></tr>\n" ;
59
    $res .= "<div>".ANN_TEXTE_PERDU."</div>\n" ;
Line 60... Line 60...
60
    return $res;
60
    return $res;
61
}
61
}
Line 66... Line 66...
66
*
66
*
67
*	@return string HTML
67
*	@return string HTML
68
*/
68
*/
Line 69... Line 69...
69
 
69
 
70
function parcourrirAnnu($event) {
-
 
71
    global $baseURL, $lettre, $menuProjet, $db, $HTTP_USER_AGENT ;
-
 
72
    $res = "" ;
70
function parcourrirAnnu($event) {
73
    
71
 
74
    $res .= "<div><table align=\"center\">";
-
 
Line 75... Line 72...
75
    $res .= "<tr class=\"texte_tb\">";
72
    $res = '<div><table><tr>';
76
 
73
 
77
    // ecrire toutes les lettres avec un lien
74
    // ecrire toutes les lettres avec un lien
78
    for ($i = 65 ; $i <91 ; $i++) {
75
    for ($i = 65 ; $i <91 ; $i++) {
79
        $res .= "    <td><a style=\"font-size:15px;\" href=\"$baseURL&amp;lettre=";
76
        $res .= '<td><a style="font-size:15px;" href="'.$GLOBALS['ann_url']->getURL().'&amp;lettre=';
80
        $res .= chr($i) ;
77
        $res .= chr($i) ;
81
        $res .= "\">";
78
        $res .= '">';
82
        $res .= chr($i) ;
79
        $res .= chr($i) ;
83
        $res .= "</a></td>\n";
80
        $res .= "</a></td>\n";
Line 84... Line 81...
84
    }
81
    }
85
    $res .= "</tr></table></div>\n";
82
    $res .= "</tr></table></div>\n";
86
 
83
 
87
    // si une lettre est selectionne
84
    // si une lettre est selectionne
-
 
85
    if (!empty($_REQUEST['lettre'])) {
-
 
86
        $requete = "SELECT ".ANN_ANNUAIRE.".* from ".ANN_ANNUAIRE." WHERE";
-
 
87
        if ($_REQUEST['lettre'] != "tous") $requete .= " ".ANN_CHAMPS_NOM." LIKE \"".$_REQUEST['lettre']."%\"" ;
-
 
88
        $requete .= " ORDER BY ".ANN_CHAMPS_NOM ;
-
 
89
        
-
 
90
        $res .= listes_inscrit ($requete, $GLOBALS['ann_url']->getURL(), $select, '', $GLOBALS['ann_db'], $niveau = 'pays').carto_texte_cocher().
-
 
91
                        carto_formulaire($_POST['titre'], $_POST['corps']) ;
-
 
92
    }
-
 
93
    return $res ;
-
 
94
}
-
 
95
 
-
 
96
/**
-
 
97
 *  Renvoie le code HTML de la liste des inscrits
-
 
98
 *  en fonction de la requete passé en parametre
-
 
99
 *
-
 
100
 * @return  Renvoie le code HTML de la liste des inscrits
-
 
101
 */
-
 
102
 
-
 
103
function listes_inscrit ($requete, $url, $select, $argument, &$db, $niveau = 'pays') {
-
 
104
    $res = "<div>";
-
 
105
    $res .= "<form action=\"$url&amp;mailer=1"."&amp;select=$select&amp;lettre=".$_REQUEST['lettre']."\" method=\"post\" name=\"formmail\">\n
-
 
106
                <table id=\"table_inscrit\">\n
-
 
107
                    <colgroup>
-
 
108
                        <col />
-
 
109
                        <col />
-
 
110
                        <col />
-
 
111
                        <col />
-
 
112
                        <col />
88
    if (!empty($lettre)) {
113
                        <col />
-
 
114
                    </colgroup>
89
        $query = "SELECT ".ANN_ANNUAIRE.".".ANN_CHAMPS_NOM.",".ANN_ANNUAIRE.".".ANN_CHAMPS_PRENOM.
115
                        <thead>\n
-
 
116
                                <th>&nbsp;</th>
90
                ",".ANN_ANNUAIRE.".".ANN_CHAMPS_ID.",".ANN_ANNUAIRE.".".ANN_CHAMPS_MAIL.
117
                                <th>".ANN_NOM."</th>
-
 
118
                                <th>".ANN_PRENOM."</th>
-
 
119
                                <th>".ANN_DATE_INS."</th>
91
                " from ".ANN_ANNUAIRE." WHERE";
120
                                <th>".ANN_VILLE."</th>
92
        if ($lettre != "tous") $query .= " ".ANN_CHAMPS_NOM." LIKE \"$lettre%\"" ;
121
                        </thead>";
93
        $query .= " ORDER BY ".ANN_CHAMPS_NOM ;
122
 
-
 
123
    $resultat= $GLOBALS['ann_db']->query($requete);
-
 
124
    if (DB::isError($resultat)) {
-
 
125
        die ($resultat->getMessage().'<br />'.$resultat->getDebugInfo()) ;
-
 
126
    }
-
 
127
    $indic=0;
-
 
128
    $i=1;
-
 
129
    while ($ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC)) {
94
        $result = $db->query($query) ;
130
        if ($indic==0) {
95
        if (DB::isError($result)) {
131
            $res.="<tr class=\"ligne_impaire\">\n";
96
            die ($result->getMessage().'<br />'.$result->getDebugInfo()) ;
132
            $indic=1;
-
 
133
        }
-
 
134
        else {
-
 
135
            $res.="<tr class=\"ligne_paire\">\n";
-
 
136
            $indic=0;
-
 
137
        }
-
 
138
        $res.="<td><input type=\"checkbox\" name=\"select[]\" value=\"".$ligne[ANN_CHAMPS_MAIL]."\"></td>\n
-
 
139
                        <td>".$ligne[ANN_CHAMPS_NOM]."&nbsp;</td>\n
-
 
140
                        <td>".$ligne[ANN_CHAMPS_PRENOM]."&nbsp;</td>\n
-
 
141
                        <td>".date("d m Y", strtotime($ligne[ANN_CHAMPS_DATE_INS]))."&nbsp;</td>\n
-
 
142
                        <td>".$ligne[ANN_CHAMPS_VILLE]."&nbsp;</td>\n" ;
-
 
143
        $res .= "</tr>\n";
-
 
144
    }
Line 97... Line -...
97
        }
-
 
98
        if ($result->numRows() != 0) {
-
 
99
            // pour chaque nom, on inscrit les infos
-
 
100
 
-
 
101
            $res .= "<tr class=\"insTitle1\"><td>".ANN_LISTE_INSCRIT_LETTRE." : $lettre</td></tr>\n";
-
 
102
            $res .= "<tr><td><form action=\"$baseURL&action=".ENVOIE_MAIL."&lettre=$lettre\" method=\"POST\" name=\"formmail\"><table width=\"100%\">" ;
-
 
103
            $res .= "<tr><td><table width=\"100%\" id=\"table_annuaire\">";
-
 
104
            $res .= '<colgroup><col width="10%" /><col width="45%" /><col width="45%" /></colgroup>' ;
-
 
105
            $res .= "<thead><th>&nbsp;</th><th>".ANN_NOM."</th>";
-
 
106
            $res .= "<th>".ANN_PRENOM."</th>\n";
-
 
107
            $pair = true ;
-
 
108
            while ($row = $result->fetchRow(DB_FETCHMODE_ASSOC)) {
-
 
109
                $res .= "<tr ";
-
 
110
                if ($pair) {
-
 
111
                    $res .= " class=\"ligne_impaire\"";
-
 
112
                    $pair = false ;
-
 
113
                    } else {
-
 
114
                    $res .= " class=\"ligne_paire\"" ;
-
 
115
                    $pair = true ;
-
 
116
                }
-
 
117
                $res .= ">" ;
-
 
118
                $res .= "<td><input type=\"checkbox\" name=\"select[]\" value=\"$row->U_ID\"></td>\n" ;
-
 
119
                $res .= "<td>".$row[ANN_CHAMPS_NOM]."</td><td>".$row[ANN_CHAMPS_PRENOM]."</td>\n";
-
 
120
                $res .= "</tr>\n";
-
 
121
            }
-
 
122
            $res .= "</table></td></tr>" ;
-
 
123
 
-
 
124
            // Raccourci pour sélectionner tous les adhérents d'un coup
-
 
125
            $res .= "<tr class=\"texte_tb\" align=\"center\"><td>".ANN_CHECK_UNCHECK ;
-
 
126
            $res .= "&nbsp;<input type=\"checkbox\" name=\"selecttotal\" onclick=\"javascript:setCheckboxes('formmail');\"></td></tr>";
-
 
127
            $res .= "<tr><td>&nbsp;</td></tr>\n" ;
-
 
128
            $res .= "<tr class=\"annuaire_titre2\"><td>".ANN_ENVOYER_MAIL."</td></tr>\n";
-
 
129
            $res .= "<tr><td>\n<table width=\"100%\" border=\"0\">\n" ;
-
 
130
            $res .= "<tr><td class=\"insLabel\">".ANN_SUJET." :</td>\n
-
 
131
                         <td><input class=\"formInput\" type=\"text\" name=\"titre\" size=\"80\" value=\"\"></td>\n
-
 
132
                     </tr>\n
-
 
133
                     <tr>
-
 
134
                         <td class=\"insLabel\" valign=\"top\">".ANN_MESSAGE." :</td>\n
-
 
135
                         <td><textarea class=\"formInput\" name=\"corps\" rows=\"5\" cols=\"80\"></textarea></td>\n
-
 
136
                     </tr>\n
-
 
137
                     <tr>
-
 
138
                         <td></td>\n
-
 
139
                         <td align=\"center\">";
-
 
140
 
-
 
141
            if (ereg ("Gecko",$HTTP_USER_AGENT)) {
-
 
142
                $res .= "<input class=\"texte_tb\" type=\"submit\" value=\"".ANN_ENVOYER."\">";
-
 
143
            } else {
-
 
144
                $res .= "<input class=\"texte_tb\" type=\"submit\" onclick=\"javascript:confirmer();\" value=\"".ANN_ENVOYER."\">";
-
 
145
            }
-
 
146
            $res.="<input class=\"texte_tb\" type=\"button\" ".
-
 
147
                    "onclick=\"javascript:if (window.confirm ('".ANN_CLIC_CONFIRMATION.".')) ".
-
 
148
                    "window.location.href='$baseURL&amp;fin=true&amp;logout=1';\"
-
 
149
                                        \nvalue=\"Deconnexion\">
-
 
150
                            </td>\n
-
 
151
                        </tr>\n
-
 
152
                    </table>\n
-
 
153
                </td>
-
 
154
            </tr>" ;
-
 
Line -... Line 145...
-
 
145
    $res .= "</table></div>\n";
-
 
146
    return $res ;
-
 
147
}
-
 
148
 
-
 
149
 
-
 
150
function carto_formulaire ($titre_mail="", $corps = "") {
-
 
151
    global $HTTP_USER_AGENT ;
-
 
152
    $res .= "<div class=\"chapo\">".ANN_ENVOYER_MAIL."</div>\n";
-
 
153
    $res .= "<div>\n<table border=\"0\">\n"
-
 
154
            .'<tr><td class="texte">'.ANN_SUJET.' :</td>'."\n"
-
 
155
            .'<td><input class="forml" type="text" name="titre_mail" size="60" value="'.$GLOBALS['titre_mail'].'"></td>'."\n"
-
 
156
            .'</tr><tr><td class="texte" valign="top">'.ANN_MESSAGE.'&nbsp;:&nbsp;</td>'."\n"
-
 
157
            .'<td><textarea class="forml" name="corps" rows="5" cols="60">'.$GLOBALS['corps'].'</textarea></td>'."\n"
155
            $res .= "</table></form></td></tr>\n";
158
            .'</tr><tr><td></td><td align="center">';
-
 
159
    if (ereg ("Gecko",$HTTP_USER_AGENT)) {
156
		} else {
160
        $res.='<input class="spip_bouton" type="submit" value="'.ANN_ENVOYER.'">';
-
 
161
    } else {
-
 
162
        $res.='<input class="spip_bouton" type="submit" onclick="javascript:confirmer();" value="'.ANN_ENVOYER.'">';
Line -... Line 163...
-
 
163
    }
-
 
164
    $res.="</td>\n</tr>\n</table>\n</div></form>\n";
-
 
165
    return $res ;
-
 
166
}
-
 
167
 
-
 
168
 
-
 
169
/** function carto_texte_cocher ()
-
 
170
*
-
 
171
*
-
 
172
*	@return string  HTML
-
 
173
*/
-
 
174
 
-
 
175
function carto_texte_cocher () {
-
 
176
    $res .= '<div class="texte">'.ANN_CHECK_UNCHECK ;
-
 
177
    $res .= "&nbsp;<input type=\"checkbox\" name=\"selecttotal\" onclick=\"javascript:setCheckboxes('formmail');\"></div>";
-
 
178
    return $res ;
-
 
179
}
-
 
180
 
-
 
181
 
-
 
182
/** envoie_mail()
-
 
183
 *
-
 
184
 *
-
 
185
 * @return  envoie l'email
-
 
186
 */
-
 
187
 
-
 
188
function envoie_mail () {
-
 
189
    $requete = "select ".ANN_CHAMPS_MAIL." from ".ANN_ANNUAIRE.
-
 
190
            " where ".ANN_CHAMPS_ID."='".$GLOBALS['AUTH']->getAuthData (ANN_CHAMPS_ID)."'";
-
 
191
    $resultat = $GLOBALS['ann_db']->query($requete);
-
 
192
    if (DB::isError($resultat)) {
-
 
193
        die ($resultat->getMessage().'<br />'.$resultat->getDebugInfo());
-
 
194
    }
-
 
195
    $ligne = $resultat->fetchRow(DB_FETCHMODE_ASSOC);
-
 
196
    $entete = "From: <".$ligne[ANN_CHAMPS_MAIL].">\n";
-
 
197
    
-
 
198
    $_POST['corps'] .= ANN_PIED_MESSAGE;
-
 
199
    $_POST['corps'] = stripslashes($_POST['corps']) ;
-
 
200
    $liste = "" ;
-
 
201
    foreach ($_POST['select'] as $key => $value) {
-
 
202
        mail ($value, stripslashes($_POST['titre_mail']), $_POST['corps'] , $entete) ;
-
 
203
        $liste .= $value."\n" ;
-
 
204
    }
-
 
205
    
-
 
206
    $_POST['corps'] .= "\n----------------------------------------------------------------------------";
157
            $res .= "<div>".ANN_PAS_D_INSCRIT."</div>\n";
207
    $_POST['corps'] .= "\n".ANN_MESSAGE_ENVOYE_A." :\n $liste" ;
Line 158... Line 208...
158
		}
208
    
159
 
209
    mail (CAR_MAIL_ADMIN, stripslashes($_POST['titre_mail']), $_POST['corps'], $entete);
160
	}
210
    $_POST['corps'] = '';
-
 
211
    $_POST['titre_mail'] = '';
-
 
212
    return '<div>'.ANN_MAIL_ENVOYER.'</div>' ;
-
 
213
}
161
	return $res ;
214
 
162
 
215
/* +--Fin du code ----------------------------------------------------------------------------------------+
163
}
216
*
164
 
217
* $Log: not supported by cvs2svn $
165
/* +--Fin du code ----------------------------------------------------------------------------------------+
218
* Revision 1.2  2005/01/06 15:18:31  alex
166
*
219
* modification de la fonction de formulaire d'authentification
167
* $Log: not supported by cvs2svn $
220
*
168
* Revision 1.1.1.1  2005/01/03 17:27:49  alex
221
* Revision 1.1.1.1  2005/01/03 17:27:49  alex
169
* Import initial
222
* Import initial
170
*
223
*
171
* Revision 1.1  2005/01/03 17:18:49  alex
-
 
172
* retour vers la liste des participants après un ajout.
224
* Revision 1.1  2005/01/03 17:18:49  alex
173
*
225
* retour vers la liste des participants après un ajout.