[ Index ] |
|
Code source de SPIP Agora 1.4 |
1 <?php 2 /***************************************************** 3 * This file is part of Agora, web based content management system. 4 * 5 * Agora is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation; version 2 of the License. 8 * 9 * Agora is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details (file "COPYING"). 13 * 14 * Copyright © Arnaud Martin, Antoine Pitrou et Philippe Rivière. 15 * List of authors detailed in "copyright_fr.html" file. 16 * E-mail : agora@sig.premier-ministre.gouv.fr 17 * Web site : http://www.agora.gouv.fr 18 *****************************************************/ 19 require_once dirname(__FILE__). '/ecrire/include/bd/inc_auteur_factory.php'; 20 21 require_once dirname(__FILE__). '/ecrire/inc_version.php'; 22 require_once dirname(__FILE__). '/ecrire/inc_meta.php'; 23 require_once dirname(__FILE__). '/ecrire/inc_presentation.php'; 24 require_once dirname(__FILE__). '/ecrire/inc_session.php'; 25 require_once dirname(__FILE__). '/ecrire/inc_filtres.php'; 26 require_once dirname(__FILE__). '/ecrire/inc_texte.php'; 27 require_once dirname(__FILE__). '/ecrire/inc_meta.php'; 28 require_once dirname(__FILE__). '/ecrire/inc_mail.php'; 29 require_once dirname(__FILE__). '/ecrire/inc_acces.php'; 30 31 include_once ("inc-formulaires.php"); 32 33 utiliser_langue_site(); 34 35 $inscriptions_ecrire = (lire_meta("accepter_inscriptions") == "oui"); 36 unset($erreur); 37 38 // recuperer le cookie de relance 39 if ($p = addslashes($p)) { 40 $oubli_pass = 'oui'; 41 $profilMetier = &recuperer_instance_profil(); 42 $monProfil = $profilMetier->getProfilForIntitule('texte_statut_poubelle'); 43 44 if (PEAR::isError($monProfil)) { 45 die($monProfil->getMessage()); 46 } 47 48 $auteurMetier = &recuperer_instance_auteur(); 49 $allAuteurs = $auteurMetier->getAllForCookieOubliAndNotProfilAndNotPass($p, $monProfil->getPoids(), ""); 50 51 if (PEAR::isError($allAuteurs)) { 52 die($allAuteurs->getMessage()); 53 } 54 if (list(, $monAuteur) = each($allAuteurs)) { 55 if ($pass) { 56 $mdpass = md5($pass); 57 $htpass = generer_htpass($pass); 58 59 $updateOK = $auteurMetier->updateHtPassAndPassAndAleaActuelAndCookieOubliForCookieOubli( 60 $htpass, $mdpass, '', '', $p); 61 62 if (PEAR::isError($updateOK)) { 63 die($updateOK->getMessage()); 64 } 65 66 $login = $monAuteur->getLogin(); 67 $erreur = "<b>" . _T('pass_nouveau_enregistre'). "</b>" . "<p>" . _T('pass_rappel_login', 68 array('login' => $login)); 69 } 70 else { 71 install_debut_html(_T('pass_nouveau_pass')); 72 echo "<p><br>"; 73 echo "<form action='spip_pass.php' method='post'>"; 74 echo "<input type='hidden' name='p' value='$p'>"; 75 echo _T('pass_choix_pass'). "<br>\n"; 76 echo "<input type='password' name='pass' value=''>"; 77 echo "</form>\n"; 78 install_fin_html(); 79 exit; 80 } 81 } 82 else 83 $erreur = _T('pass_erreur_code_inconnu'); 84 } 85 86 // envoyer le cookie de relance mot de passe 87 if ($email_oubli) { 88 if (email_valide($email_oubli)) { 89 $email = addslashes($email_oubli); 90 //-----------Zone de modification Clever Age elebescond--------------- 91 $auteurMetier = &recuperer_instance_auteur(); 92 $allAuteurs = $auteurMetier->getAllForEmail($email); 93 94 if (PEAR::isError($allAuteurs)) { 95 die($allAuteurs->getMessage()); 96 } 97 if (list(, $monAuteur) = each($allAuteurs)) { 98 if ($monAuteur->getStatut() == '5poubelle') 99 $erreur = _T('pass_erreur_acces_refuse'); 100 else { 101 $cookie = creer_uniqid(); 102 $updateOK = $auteurMetier->updateCookieOubliForEmail($cookie, $email); 103 104 if (PEAR::isError($updateOK)) { 105 die($updateOK->getMessage()); 106 } 107 108 $nom_site_spip = lire_meta("nom_site"); 109 $adresse_site = lire_meta("adresse_site"); 110 111 $message = _T('pass_mail_passcookie', 112 array('nom_site_spip' => $nom_site_spip, 'adresse_site' => $adresse_site, 113 'cookie' => $cookie)); 114 if (envoyer_mail($email, "[$nom_site_spip] " . _T('pass_oubli_mot'), $message)) 115 $erreur = _T('pass_recevoir_mail'); 116 else 117 $erreur = _T('pass_erreur_probleme_technique'); 118 } 119 } 120 else 121 $erreur = _T('pass_erreur_non_enregistre', array('email_oubli' => htmlspecialchars($email_oubli))); 122 } 123 else 124 $erreur = _T('pass_erreur_non_valide', array('email_oubli' => htmlspecialchars($email_oubli))); 125 } 126 127 if ($oubli_pass == 'oui') { 128 // debut presentation 129 install_debut_html(_T('pass_mot_oublie')); 130 131 echo "<p>"; 132 if ($erreur) 133 echo $erreur; 134 else { 135 echo _T('pass_indiquez_cidessous'); 136 137 echo "<p>"; 138 echo '<form action="spip_pass.php" method="post">'; 139 echo '<div align="right">'; 140 echo '<input type="text" class="fondo" name="email_oubli" value="">'; 141 echo '<input type="hidden" name="oubli_pass" value="oui">'; 142 echo ' <input type=submit class="fondl" name="oubli" value="' . _T('pass_ok'). '"></div></form>'; 143 } 144 } 145 else if ($inscriptions_ecrire || (lire_meta('accepter_visiteurs') == 'oui')OR (lire_meta('forums_publics') == 'abo')) { 146 // debut presentation 147 install_debut_html(_T('pass_vousinscrire')); 148 echo "<p>"; 149 150 if ($inscriptions_ecrire) 151 echo _T('pass_espace_prive_bla'); 152 else 153 echo _T('pass_forum_bla'); 154 155 echo "\n<p>"; 156 157 formulaire_inscription(($inscriptions_ecrire) ? 'redac' : 'forum'); 158 } 159 else { 160 install_debut_html(_T('pass_erreur')); 161 echo "<p>" . _T('pass_rien_a_faire_ici'); 162 } 163 164 echo "<p align='right'>\n" . 165 "<script type='text/javascript'>\n" . 166 " <!--\n" . 167 " if (window.opener) document.write(\"<a href='javascript:close();'>\");\n" . 168 " else document.write(\"<a href='./'>\");\n" . 169 " document.write(\"" . _T('pass_quitter_fenetre'). "</a>\");\n" . 170 " //-->\n" . 171 "</script>\n" . 172 "<noscript>[<a href='./'>" . _T('pass_retour_public'). "</a>]</noscript>\n" . 173 "</p>"; 174 175 install_fin_html(); 176 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Sat Feb 24 14:40:03 2007 | par Balluche grâce à PHPXref 0.7 |