Subversion Repositories Applications.papyrus

Rev

Rev 603 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 603 Rev 606
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: inscription.fonct.php,v 1.4 2005-11-17 18:48:02 florian Exp $
22
// CVS : $Id: inscription.fonct.php,v 1.5 2005-11-18 16:04:15 florian Exp $
23
// CVS : $Id: inscription.fonct.php,v 1.4 2005-11-17 18:48:02 florian Exp $
23
// CVS : $Id: inscription.fonct.php,v 1.5 2005-11-18 16:04:15 florian Exp $
24
/**
24
/**
25
* Fonctions du module inscription
25
* Fonctions du module inscription
26
*
26
*
27
* Fonctions du module inscription
27
* Fonctions du module inscription
28
*
28
*
Line 30... Line 30...
30
//Auteur original :
30
//Auteur original :
31
*@author        Alexandre Granier <alexandre@tela-botanica.org>
31
*@author        Alexandre Granier <alexandre@tela-botanica.org>
32
//Autres auteurs :
32
//Autres auteurs :
33
*@author        Aucun
33
*@author        Aucun
34
*@copyright     Tela-Botanica 2000-2004
34
*@copyright     Tela-Botanica 2000-2004
35
*@version       $Revision: 1.4 $ $Date: 2005-11-17 18:48:02 $
35
*@version       $Revision: 1.5 $ $Date: 2005-11-18 16:04:15 $
36
*@version       $Revision: 1.4 $ $Date: 2005-11-17 18:48:02 $
36
*@version       $Revision: 1.5 $ $Date: 2005-11-18 16:04:15 $
37
// +------------------------------------------------------------------------------------------------------+
37
// +------------------------------------------------------------------------------------------------------+
38
*/
38
*/
Line 39... Line 39...
39
 
39
 
40
// +------------------------------------------------------------------------------------------------------+
40
// +------------------------------------------------------------------------------------------------------+
Line 56... Line 56...
56
 *
56
 *
57
 * @param   array   les valeurs renvoyés par le formulaire
57
 * @param   array   les valeurs renvoyés par le formulaire
58
 * @return
58
 * @return
59
 */
59
 */
Line 60... Line 60...
60
 
60
 
61
function demande_inscription ($valeurs) {
61
function demande_inscription($valeurs) {
62
    // On stocke les informations dans un variable de session
62
    // On stocke les informations dans un variable de session
63
    // On coupe l'identifiant de session pour ne prendre que les 8 premiers caractères
63
    // On coupe l'identifiant de session pour ne prendre que les 8 premiers caractères
64
    // afin d'éviter d'obtenir une url trop longue
64
    // afin d'éviter d'obtenir une url trop longue
65
    $chaine = substr (session_id(), 0, 8) ;
65
    $chaine = substr (session_id(), 0, 8) ;
Line 110... Line 110...
110
*   Réalise l'insertion dans la base de donnée
110
*   Réalise l'insertion dans la base de donnée
111
*
111
*
112
*   @param  array   un tableau de valeur avec en clé les noms des champs du formulaire
112
*   @param  array   un tableau de valeur avec en clé les noms des champs du formulaire
113
*   @return void
113
*   @return void
114
*/
114
*/
115
 
-
 
116
function AUTH_formulaire_login($msg = '') {
115
function AUTH_formulaire_login($msg = '') {
117
    //--------------------------------------------------------------------------
116
    //--------------------------------------------------------------------------
118
    // Le formulaire
117
    // Le formulaire
119
    //--------------------------------------------------------------------------
118
    //--------------------------------------------------------------------------
120
    $res = '';
119
    $res = '';
121
    if ($msg!='') {$res .= $msg.'<br /><br />';}
120
    if ($msg!='') {$res .= $msg.'<br /><br />';}
122
    $res .= '<h2>'.INS_DEJA_INSCRIT.'</h2>'."\n" ;
121
    $res .= '<h2>'.INS_DEJA_INSCRIT.'</h2>'."\n" ;
123
    $res .= '<p class="info">'.INS_TEXTE_PERDU.'</p>'."\n" ;
-
 
124
    $GLOBALS['ins_url']->removeQueryString('action') ;
122
    $GLOBALS['ins_url']->removeQueryString('action') ;
125
    $form = new HTML_QuickForm('inscription_identification', 'post', preg_replace ('/&amp;/', '&', $GLOBALS['ins_url']->getURL())) ;
123
    $form = new HTML_QuickForm('inscription_identification', 'post', preg_replace ('/&amp;/', '&', $GLOBALS['ins_url']->getURL())) ;
126
    $squelette =& $form->defaultRenderer();
124
    $squelette =& $form->defaultRenderer();
127
    $squelette->setFormTemplate("\n".'<form {attributes} style="width:300px;">'."\n".'{content}'."\n".'</form>'."\n");
125
    $squelette->setFormTemplate("\n".'<form {attributes} style="width:300px;">'."\n".'{content}'."\n".'</form>'."\n");
128
    $squelette->setElementTemplate( '<p class="label100">{label}&nbsp;</p>'."\n".'{element}<br />'."\n");
126
    $squelette->setElementTemplate( '<p class="label100">{label}&nbsp;</p>'."\n".'{element}<br />'."\n");
Line 138... Line 136...
138
    }
136
    }
139
    $res .= '</ul>'."\n".'<br />'."\n".'<div>'.INS_LAIUS_INSCRIPTION_2.'</div>'."\n" ;
137
    $res .= '</ul>'."\n".'<br />'."\n".'<div>'.INS_LAIUS_INSCRIPTION_2.'</div>'."\n" ;
140
    return $res;
138
    return $res;
141
}
139
}
Line -... Line 140...
-
 
140
 
142
 
141
 
143
/** message_erreur () - Renvoie le code HTML d'un message d'erreur
142
/** formulaire_envoi_passe() - Renvoie le code HTML d'un formulaire d'envoi de mot de passe par mail 
144
*
143
*
145
* @return   string  HTML
144
* @return   string  HTML
146
*/
-
 
147
 
145
*/
148
function message_erreur() {
-
 
149
    $res = '';
-
 
150
    $url = preg_replace ('/&amp;/', '&', $GLOBALS['ins_url']->getURL()) ;
-
 
151
    $res .= "<div class=\"inscription_erreur\">".INS_ERREUR_LOGIN."</div>\n" ;
146
function formulaire_envoi_passe() {
152
    $res .= "<div>".INS_SI_PASSE_PERDU."</div>\n" ;
-
 
153
    $res .= '<div>' ;
147
    $res = '<h2>'.INS_SI_PASSE_PERDU.'</h2>'."\n" ;
154
    $res .= '<form action="'.$url.'&action=sendpasswd" method="post">'."\n" ;
-
 
155
    $res .= INS_EMAIL.'&nbsp;' ;
-
 
156
    $res .= '<input type="text" value="'.$_POST['username'].'" name="mail" size="32" /></li></ul>'."\n" ;
148
    $res .= '<form action="'.$GLOBALS['ins_url']->getURL().'&amp;action=sendpasswd" method="post">'."\n" ;
157
    $res .= "<input type=\"submit\" value=\"".INS_ENVOIE_PASSE."\" />" ;
149
    $res .= '<p class="label100">'.INS_EMAIL.' : </p>'."\n" ;
158
    $res .= "</form></div>\n" ;
-
 
159
 
150
    $res .= '<input type="text" value="';
160
    // On remet le formulaire d'inscription mais un peu réduit
-
 
161
    $res .= '<br /><h3 class="titre2_inscription">'.INS_DEJA_INSCRIT.'</h3>' ;
-
 
162
    $form = new HTML_QuickForm ('inscription', 'post', $url) ;
151
    if (isset($_POST['username'])) $res .= $_POST['username'];
163
    $form->addElement ('text', 'username', INS_EMAIL) ;
152
    $res .= '" name="mail" size="32" />'."\n" ;
164
    $form->addElement ('password', 'password', INS_MOT_DE_PASSE) ;
-
 
165
    $form->addElement('submit', 'valider', INS_VALIDER);
153
    $res .= '<input type="submit" value="'.INS_ENVOIE_PASSE.'" />' ;
166
    $res .= $form->toHTML() ;
-
 
167
    
-
 
168
    $res .= '<h3 class="titre2_inscription">'.INS_PAS_INSCRIT.'</h3>' ;
-
 
169
    $GLOBALS['ins_url']->addQueryString('action', 'inscription') ;
-
 
170
    $form = new HTML_QuickForm('inscription', 'post', preg_replace ('/&amp;/', '&', str_replace ('&amp;', '&', $GLOBALS['ins_url']->getURL()))) ;
-
 
171
    $form->addElement('submit', 'Inscription', INS_INSCRIPTION) ;
-
 
172
    if (INS_FORMULAIRE_STRUCTURE) $form->addElement('submit', 'form_structure', INS_INSCRIPTION_STRUCTURE) ;
-
 
173
    $res .= "<br /><div>".INS_LAIUS_INSCRIPTION_2."</div>\n" ;
154
    $res .= '</form><br />'."\n" ;
174
    $res .= $form->toHTML() ;
155
    $res .= AUTH_formulaire_login() ;
175
    return $res;
156
    return $res;
Line -... Line 157...
-
 
157
}
176
}
158
 
177
 
159
 
178
function insertion($valeur) {
160
function insertion($valeur) {
179
        // ===========  Insertion dans l'annuaire gen_annuaire ===================
161
        // ===========  Insertion dans l'annuaire gen_annuaire ===================
180
		// Génération du nom wikini à partir du nom et du prénom
162
		// Génération du nom wikini à partir du nom et du prénom
Line 209... Line 191...
209
	unset($resultat) ;
191
	unset($resultat) ;
Line 210... Line 192...
210
	
192
	
Line -... Line 193...
-
 
193
	
211
	
194
}
212
}
195
 
213
 
196
 
214
/**
197
/**
215
*   Réalise une mise à jour dans la base de donnée
198
*   Réalise une mise à jour dans la base de donnée
Line 238... Line 221...
238
*
221
*
239
* @return   string  une requete du type champs="valeur",...
222
* @return   string  une requete du type champs="valeur",...
240
*/
223
*/
Line 241... Line 224...
241
 
224
 
242
function requete_annuaire($valeur) {
225
function requete_annuaire($valeur) {
243
    $req = INS_CHAMPS_NOM.'="'.$valeur['nom'].'", ';
226
    $req = INS_CHAMPS_NOM.'="'.addslashes($valeur['nom']).'", ';
244
    if (isset($valeur['prenom'])) {
227
    if (isset($valeur['prenom'])) {
245
    	$req .= INS_CHAMPS_PRENOM.'="'.$valeur['prenom'].'", ';
228
    	$req .= INS_CHAMPS_PRENOM.'="'.$valeur['prenom'].'", ';
246
    	if (INS_UTILISE_WIKINI) $req .= INS_CHAMPS_NOM_WIKINI.'="'.ucfirst(strtolower($valeur['prenom'])).ucfirst(strtolower($valeur['nom'])).'", ' ;
229
    	if (INS_UTILISE_WIKINI) $req .= INS_CHAMPS_NOM_WIKINI.'="'.genere_nom_wiki($valeur['prenom'],$valeur['nom']).'", ' ;
247
    } elseif (INS_UTILISE_WIKINI) {
230
    } elseif (INS_UTILISE_WIKINI) {
248
    	$req .= INS_CHAMPS_NOM_WIKINI.'="Structure'.ucfirst(strtolower($valeur['nom'])).'", ' ;
231
    	$req .= INS_CHAMPS_NOM_WIKINI.'="'.genere_nom_wiki('Structure',$valeur['nom']).'", ' ;
249
    }
232
    }
250
    $req .=      INS_CHAMPS_MAIL.'="'.$valeur['email'].'", ' ;
233
    $req .= INS_CHAMPS_MAIL.'="'.addslashes($valeur['email']).'", ' ;
251
    $req .= INS_CHAMPS_PASSE.'="'.md5 ($valeur['mot_de_passe']).'", '.
234
    $req .= INS_CHAMPS_PASSE.'="'.md5($valeur['mot_de_passe']).'", '.
252
                INS_CHAMPS_PAYS.'="'.$valeur['pays'].'", '.
235
            INS_CHAMPS_PAYS.'="'.addslashes($valeur['pays']).'", '.
253
                INS_CHAMPS_ADRESSE_1.'="'.$valeur['adresse_1'].'", '.
236
            INS_CHAMPS_ADRESSE_1.'="'.addslashes($valeur['adresse_1']).'", '.
254
                INS_CHAMPS_ADRESSE_2.'="'.$valeur['adresse_2'].'", '.
237
            INS_CHAMPS_ADRESSE_2.'="'.addslashes($valeur['adresse_2']).'", '.
255
                INS_CHAMPS_DATE_INSCRIPTION.'=NOW(), '.
238
            INS_CHAMPS_DATE_INSCRIPTION.'=NOW(), '.
256
                INS_CHAMPS_CODE_POSTAL.'="'.$valeur['cp'].'", '.
239
            INS_CHAMPS_CODE_POSTAL.'="'.addslashes($valeur['cp']).'", '.
257
				INS_CHAMPS_VILLE.'="'.$valeur['ville'].'", '.
240
			INS_CHAMPS_VILLE.'="'.addslashes($valeur['ville']).'", '.
258
				INS_CHAMPS_EST_STRUCTURE.'="'.$valeur['est_structure'].'", '.
241
			INS_CHAMPS_EST_STRUCTURE.'="'.addslashes($valeur['est_structure']).'", '.
259
				INS_CHAMPS_TELEPHONE.'="'.$valeur['telephone'].'", '.
242
			INS_CHAMPS_TELEPHONE.'="'.addslashes($valeur['telephone']).'", '.
260
				INS_CHAMPS_FAX.'="'.$valeur['fax'].'", '.
243
			INS_CHAMPS_FAX.'="'.addslashes($valeur['fax']).'", '.
-
 
244
			INS_CHAMPS_SITE_INTERNET.'="'.addslashes($valeur['site']).'" ';
-
 
245
			
-
 
246
	if (isset($valeur['visible'])) $req .= ', '.INS_CHAMPS_VISIBLE.'="'.$valeur['visible'].'"';
Line 261... Line 247...
261
				INS_CHAMPS_SITE_INTERNET.'="'.$valeur['site'].'" ';
247
	else $req .= ', '.INS_CHAMPS_VISIBLE.'=0';
262
	
248
	
263
	if (INS_CHAMPS_LETTRE != '') {
249
	if (INS_CHAMPS_LETTRE != '') {
-
 
250
		if (isset($valeur['lettre'])) {
264
		if (isset($valeur['lettre'])) {
251
			$req .= ', '.INS_CHAMPS_LETTRE.'="'.$valeur['lettre'].'"';
-
 
252
			inscription_lettre('inscrire');
265
			$req .= ', '.INS_CHAMPS_LETTRE.'="'.$valeur['lettre'].'"';
253
		}
-
 
254
		else {
-
 
255
			$req .= ', '.INS_CHAMPS_LETTRE.'=0';
266
		}
256
			inscription_lettre('desinscrire');
Line 267... Line -...
267
		else 	$req .= ', '.INS_CHAMPS_LETTRE.'=0';
-
 
268
	}
-
 
269
	
-
 
270
	if (isset($valeur['visible'])) {
257
		} 
271
		$req .= ', '.INS_CHAMPS_VISIBLE.'="'.$valeur['visible'].'"';
258
	}
272
	} else 	$req .= ', '.INS_CHAMPS_VISIBLE.'=0';
259
	
273
    if (isset($valeur['sigle_structure'])) {
260
	if (isset($valeur['sigle_structure'])) {
274
        $req .= ','.INS_CHAMPS_SIGLE_STRUCTURE.'="'.$valeur['sigle_structure'].'"' ;
261
        $req .= ', '.INS_CHAMPS_SIGLE_STRUCTURE.'="'.addslashes($valeur['sigle_structure']).'"' ;
275
    }
262
    }
276
    if (isset($valeur['num_agrement'])) {
263
    if (isset($valeur['num_agrement'])) {
277
        $req .= ','.INS_CHAMPS_NUM_AGREMENT.'="'.$valeur['num_agrement'].'"' ;
264
        $req .= ', '.INS_CHAMPS_NUM_AGREMENT.'="'.addslashes($valeur['num_agrement']).'"' ;
278
    }
265
    }
279
    // traitement du numéro de département pour la france
266
    // traitement du numéro de département pour la france
Line 360... Line 347...
360
    $res .= ligne_inscription('&nbsp;', '&nbsp;') ;
347
    $res .= ligne_inscription('&nbsp;', '&nbsp;') ;
361
    if (INS_UTILISE_WIKINI) {
348
    if (INS_UTILISE_WIKINI) {
362
		$res .= ligne_inscription (INS_NOM_WIKI, $ligne[INS_CHAMPS_NOM_WIKINI]) ;
349
		$res .= ligne_inscription (INS_NOM_WIKI, $ligne[INS_CHAMPS_NOM_WIKINI]) ;
363
	}
350
	}
364
    $res .= ligne_inscription(INS_EMAIL, $ligne[INS_CHAMPS_MAIL]);
351
    $res .= ligne_inscription(INS_EMAIL, $ligne[INS_CHAMPS_MAIL]);
-
 
352
    if ($ligne[INS_CHAMPS_SITE_INTERNET]!='') {
365
    $res .= ligne_inscription(INS_SITE_INTERNET, '<a href="'.$ligne[INS_CHAMPS_SITE_INTERNET].'" onclick="javascript:window.open(this.href);return false;">'.$ligne[INS_CHAMPS_SITE_INTERNET].'</a>');
353
    	$res .= ligne_inscription(INS_SITE_INTERNET, '<a href="'.$ligne[INS_CHAMPS_SITE_INTERNET].'" onclick="javascript:window.open(this.href);return false;">'.$ligne[INS_CHAMPS_SITE_INTERNET].'</a>');
-
 
354
    }
366
    $res .= '</dl>'."\n";
355
    $res .= '</dl>'."\n";
367
    $res .= '<br />'."\n";
356
    $res .= '<br />'."\n";
368
    $res .= '<ul>'."\n";
357
    $res .= '<ul>'."\n";
369
    if ($ligne[INS_CHAMPS_VISIBLE] == 1) {
358
    if ($ligne[INS_CHAMPS_VISIBLE] == 1) {
370
    	$res .= '<li>'.INS_VOUS_APPARAISSEZ.'</li>'."\n";
359
    	$res .= '<li>'.INS_VOUS_APPARAISSEZ.'</li>'."\n";
Line 374... Line 363...
374
    } else $res .= '<li>'.INS_VOUS_RECEVEZ_PAS_LETTRE.'</li>'."\n";
363
    } else $res .= '<li>'.INS_VOUS_RECEVEZ_PAS_LETTRE.'</li>'."\n";
375
    $res .= '</ul>'."\n";
364
    $res .= '</ul>'."\n";
376
    $res .= '<br />'."\n";
365
    $res .= '<br />'."\n";
377
    $res .= '<ul>'."\n";;
366
    $res .= '<ul>'."\n";;
378
    $res .= '<li><a href="'.$GLOBALS['ins_url']->getURL().'&amp;action=modifier&amp;form_structure='.$ligne[INS_CHAMPS_EST_STRUCTURE].'">'.INS_MODIFIER_INSCRIPTION.'</a></li>'."\n" ;
367
    $res .= '<li><a href="'.$GLOBALS['ins_url']->getURL().'&amp;action=modifier&amp;form_structure='.$ligne[INS_CHAMPS_EST_STRUCTURE].'">'.INS_MODIFIER_INSCRIPTION.'</a></li>'."\n" ;
379
    $res .= '<li><a href="'.$GLOBALS['ins_url']->getURL().'&amp;action=supprimer&amp;form_structure='.$ligne[INS_CHAMPS_EST_STRUCTURE].'" onclick="javascript:return confirm(\''.INS_SUPPRIMER_INSCRIPTION.'\' ?);">'.INS_SUPPRIMER_INSCRIPTION.'</a></li>'."\n" ;
368
    $res .= '<li><a href="'.$GLOBALS['ins_url']->getURL().'&amp;action=supprimer&amp;form_structure='.$ligne[INS_CHAMPS_EST_STRUCTURE].'" onclick="javascript:return confirm(\''.INS_SUPPRIMER_INSCRIPTION.'?\');">'.INS_SUPPRIMER_INSCRIPTION.'</a></li>'."\n" ;
380
    $res .= '<li><a href="'.$GLOBALS['ins_url']->getURL().'&amp;action=deconnexion">'.INS_DECONNEXION.'</a></li>'."\n" ;
369
    $res .= '<li><a href="'.$GLOBALS['ins_url']->getURL().'&amp;action=deconnexion">'.INS_DECONNEXION.'</a></li>'."\n" ;
381
    $res .= '</ul>'."\n";
370
    $res .= '</ul>'."\n";
382
    return $res ;
371
    return $res ;
383
}
372
}
Line 391... Line 380...
391
 */
380
 */
392
function ligne_inscription($label, $valeur) {
381
function ligne_inscription($label, $valeur) {
393
    if ($valeur == '') {
382
    if ($valeur == '') {
394
        return;
383
        return;
395
    }
384
    }
-
 
385
    if (($label == '')or($label == '&nbsp;')) {
-
 
386
    	return '<dt>&nbsp;</dt>'."\n".'<dd>'.$valeur.'</dd>'."\n" ;
-
 
387
    } else {
396
    return '<dt>'.$label.' : </dt>'."\n".'<dd>'.$valeur.'</dd>'."\n" ;
388
    	return '<dt>'.$label.' : </dt>'."\n".'<dd>'.$valeur.'</dd>'."\n" ;    	
-
 
389
    }
397
}
390
}
Line 398... Line 391...
398
 
391
 
399
 
392
 
Line 422... Line 415...
422
    if ($resultat->numRows() == 0) return true ;
415
    if ($resultat->numRows() == 0) return true ;
423
    return false ;
416
    return false ;
424
}
417
}
Line 425... Line 418...
425
 
418
 
426
 
419
 
427
function envoie_passe()
-
 
428
{
-
 
429
    $headers['From']    = INS_MAIL_ADMIN_APRES_INSCRIPTION ;
-
 
430
    $headers['Subject'] = INS_NOUVEAU_MOT_DE_PASSE;
-
 
431
 
-
 
432
    $nouveau_passe = create_new_random(6) ;
-
 
433
 
-
 
434
    $body = INS_NOUVEAU_MOT_DE_PASSE_2.$nouveau_passe ;
-
 
435
    $body .= INS_NOUVEAU_MOT_DE_PASSE_LAIUS ;
-
 
436
 
420
function envoie_passe() {
437
    // modification du mot de passe dans la base
421
	$res='';
438
    $requete = "update ".INS_ANNUAIRE." set ".INS_CHAMPS_PASSE."=MD5(\"$nouveau_passe\") where ".INS_CHAMPS_MAIL."=\"".$GLOBALS['username']."\"" ;
422
	$requete = 'SELECT '.INS_CHAMPS_MAIL.' FROM '.INS_ANNUAIRE.' WHERE '.INS_CHAMPS_MAIL.'="'.$_POST['mail'].'"' ;
439
    $resultat = $GLOBALS['ins_db']->query($requete) ;
423
    $resultat = $GLOBALS['ins_db']->query($requete) ;
440
    if (DB::isError($resultat)) {
424
    if (DB::isError($resultat)) {
-
 
425
        die ("Echec de la requete<br />".$resultat->getMessage()."<br />".$resultat->getDebugInfo()) ;
-
 
426
    }
441
        die ("Echec de la requete<br />".$resultat->getMessage()."<br />".$resultat->getDebugInfo()) ;
427
    if ($resultat->numRows() == 0) {
-
 
428
    	$res .= '<p class="erreur">'.INS_MAIL_INCONNU_DANS_ANNUAIRE.'</p>'."\n" ;
-
 
429
    } else {
-
 
430
    	include_once PAP_CHEMIN_RACINE.'api/pear/Mail.php' ;
-
 
431
    	$mail = & Mail::factory('smtp') ;
-
 
432
    	$headers ['Return-Path'] = "<".INS_MAIL_ADMIN_APRES_INSCRIPTION.">" ;
-
 
433
    	$headers ['From'] = "<".INS_MAIL_ADMIN_APRES_INSCRIPTION.">" ;
-
 
434
    	$headers ['Subject'] = INS_MOT_DE_PASSE_CHANGE ;
-
 
435
    	$headers ['Reply-To'] = "<".INS_MAIL_ADMIN_APRES_INSCRIPTION.">" ;
442
    }
436
    	$headers ['To'] = "<".$_POST['mail'].">" ;
-
 
437
    	$nouveau_passe = create_new_random(6) ;
-
 
438
    	// modification du mot de passe dans la base
-
 
439
    	$requete = 'UPDATE '.INS_ANNUAIRE.' SET '.INS_CHAMPS_PASSE.'=MD5("'.$nouveau_passe.'") WHERE '.INS_CHAMPS_MAIL.'="'.$_POST['mail'].'"' ;
-
 
440
    	$resultat = $GLOBALS['ins_db']->query($requete) ;
-
 
441
    	if (DB::isError($resultat)) {
-
 
442
    		die ("Echec de la requete<br />".$resultat->getMessage()."<br />".$resultat->getDebugInfo()) ;
-
 
443
    	}
443
 
444
    	$body = INS_NOUVEAU_MOT_DE_PASSE_2.$nouveau_passe ;
444
    // création du mail
445
    	$body .= INS_NOUVEAU_MOT_DE_PASSE_LAIUS ;
-
 
446
    	$mail->send($_POST['mail'], $headers, $body) ;
-
 
447
    	if (PEAR::isError($mail)) {
-
 
448
    		$res .= '<p class="erreur">'.INS_PROBLEME_ENVOI_MAIL.'</p>'."\n" ;
-
 
449
    		return $res ;
445
    if (!mail ($GLOBALS['username'], $headers['Subject'], $body)) {
450
    	}
446
        return 'erreur lors de l\'envoie de mail' ;
-
 
447
    }
-
 
448
 
451
    	$res .= '<p class="info">'.INS_NOUVEAU_MOT_DE_PASSE_ENVOYE.'</p>'."\n" ;
449
    return "<div class=\"titre1_inscription\">".INS_MOT_DE_PASSE_ENVOYE_1.': '.$GLOBALS['mail']."</div>\n".
-
 
450
            "<div><br />".INS_MOT_DE_PASSE_ENVOYE_2."</div>\n";
452
    }
Line 451... Line 453...
451
 
453
    return $res ;
452
}
454
}
453
 
455
 
Line 468... Line 470...
468
    $headers ['Subject'] = $action ;
470
    $headers ['Subject'] = $action ;
469
    $headers ['Reply-To'] = $email ;
471
    $headers ['Reply-To'] = $email ;
Line 470... Line 472...
470
    
472
    
471
    $mail -> send ($action, $headers, "") ;
473
    $mail -> send ($action, $headers, "") ;
472
    if (PEAR::isError ($mail)) {
474
    if (PEAR::isError ($mail)) {
473
        echo '<div class="erreur">Le mail n\'est pas partie...</div>' ;
475
        echo '<p class="erreur">Le mail n\'est pas parti...</p>' ;
474
        return false ;
476
        return false ;
475
    }
477
    }
476
    return true ;
478
    return true ;
Line 534... Line 536...
534
 *  fait une requete dans la base
536
 *  fait une requete dans la base
535
 *
537
 *
536
 * @return  string un nom wiki valide
538
 * @return  string un nom wiki valide
537
 */
539
 */
Line 538... Line 540...
538
 
540
 
539
function genere_nom_wiki  ($nom, $prenom) {
541
function genere_nom_wiki($prenom, $nom) {
540
    // 1. suppression des espaces
542
    // 1. suppression des espaces
541
    $nom = trim ($nom) ;
543
    $nom = trim ($nom) ;
Line 542... Line 544...
542
    $prenom = trim ($prenom) ;
544
    $prenom = trim ($prenom) ;
543
    
545
    
544
    // 2. suppression des caractères non ascii et ajout de la première lettre en majuscule
546
    // 2. suppression des caractères non ascii et ajout de la première lettre en majuscule
Line 545... Line 547...
545
    $nom = trim_non_ascii ($nom) ;
547
    $nom = trim_non_ascii ($nom) ;
546
    $prenom = trim_non_ascii ($prenom) ;
548
    $prenom = trim_non_ascii ($prenom) ;
547
    
549
    
548
    // Vérification
550
    // Vérification
549
    $nom_wiki = $nom.$prenom ;
551
    $nom_wiki = $prenom.$nom ;
550
    if (!preg_match('/^[A-Z][a-z]+[A-Z,0-9][A-Z,a-z,0-9]*$/', $nom_wiki)) {
552
    if (!preg_match('/^[A-Z][a-z]+[A-Z,0-9][A-Z,a-z,0-9]*$/', $nom_wiki)) {
551
        $nom_wiki = chr(rand(65, 90)).$nom_wiki.chr(rand(65, 90)) ;
553
        $nom_wiki = chr(rand(65, 90)).$nom_wiki.chr(rand(65, 90)) ;
Line 645... Line 647...
645
}
647
}
Line 646... Line 648...
646
 
648
 
647
/* +--Fin du code ----------------------------------------------------------------------------------------+
649
/* +--Fin du code ----------------------------------------------------------------------------------------+
648
*
650
*
-
 
651
* $Log: not supported by cvs2svn $
-
 
652
* Revision 1.4  2005/11/17 18:48:02  florian
-
 
653
* corrections bugs + amélioration de l'application d'inscription
649
* $Log: not supported by cvs2svn $
654
*
650
* Revision 1.3  2005/10/03 09:45:21  alexandre_tb
655
* Revision 1.3  2005/10/03 09:45:21  alexandre_tb
651
* suppression d'un echo
656
* suppression d'un echo
652
*
657
*
653
* Revision 1.2  2005/09/29 13:56:48  alexandre_tb
658
* Revision 1.2  2005/09/29 13:56:48  alexandre_tb