Skip to content
Extraits de code Groupes Projets
spip_pass.php3 3,93 ko
Newer Older
<?php
Yannick Patois's avatar
Yannick Patois a validé

include ("ecrire/inc_version.php3");
Fil's avatar
Fil a validé

include_ecrire("inc_meta.php3");
include_ecrire("inc_presentation.php3");
include_ecrire("inc_session.php3");
include_ecrire("inc_filtres.php3");
include_ecrire("inc_texte.php3");
include_ecrire("inc_meta.php3");
include_ecrire("inc_mail.php3");
include_ecrire("inc_acces.php3");
utiliser_langue_site();
utiliser_langue_visiteur();
Fil's avatar
Fil a validé
unset($erreur);
$mode = $GLOBALS['mode'];

// recuperer le cookie de relance
if ($p = addslashes($p)) {
esj's avatar
esj a validé
	$mode = 'oubli_pass';
Fil's avatar
Fil a validé
	$res = spip_query ("SELECT * FROM spip_auteurs WHERE cookie_oubli='$p' AND statut<>'5poubelle' AND pass<>''");
	if ($row = spip_fetch_array($res)) {
		if ($pass) {
			$mdpass = md5($pass);
			$htpass = generer_htpass($pass);
			spip_query ("UPDATE spip_auteurs SET htpass='$htpass', pass='$mdpass', alea_actuel='',
				cookie_oubli='' WHERE cookie_oubli='$p'");

			$erreur = "<b>"._T('pass_nouveau_enregistre')."</b>".
			"<p>"._T('pass_rappel_login', array('login' => $login));
			install_debut_html(_T('pass_nouveau_pass'));
			echo "<p><br>";
			echo "<form action='spip_pass.php3' method='post'>";
Fil's avatar
Fil a validé
			echo "<input type='hidden' name='p' value='".htmlspecialchars($p)."'>";
			echo _T('pass_choix_pass')."<br>\n";
			echo "<input type='password' name='pass' value=''>";
esj's avatar
esj a validé
			echo '  <input type=submit class="fondl" value="'._T('pass_ok').'"></div></form>';
		$erreur = _T('pass_erreur_code_inconnu');
Yannick Patois's avatar
Yannick Patois a validé

// envoyer le cookie de relance mot de passe
if ($email_oubli) {
	if (email_valide($email_oubli)) {
		$email = addslashes($email_oubli);
		$res = spip_query("SELECT * FROM spip_auteurs WHERE email ='$email'");
		if ($row = spip_fetch_array($res)) {
			if ($row['statut'] == '5poubelle' OR $row['pass'] == '')
				$erreur = _T('pass_erreur_acces_refuse');
			else {
				$cookie = creer_uniqid();
				spip_query("UPDATE spip_auteurs SET cookie_oubli = '$cookie' WHERE email ='$email'");

				$nom_site_spip = lire_meta("nom_site");
				$adresse_site = lire_meta("adresse_site");

				$message = _T('pass_mail_passcookie', array('nom_site_spip' => $nom_site_spip, 'adresse_site' => $adresse_site, 'cookie' => $cookie));
				if (envoyer_mail($email, "[$nom_site_spip] "._T('pass_oubli_mot'), $message))
					$erreur = _T('pass_recevoir_mail');
					$erreur = _T('pass_erreur_probleme_technique');
Fil's avatar
Fil a validé
			$erreur = _T('pass_erreur_non_enregistre', array('email_oubli' => htmlspecialchars($email_oubli)));
Fil's avatar
Fil a validé
		$erreur = _T('pass_erreur_non_valide', array('email_oubli' => htmlspecialchars($email_oubli)));
Yannick Patois's avatar
Yannick Patois a validé

esj's avatar
esj a validé
if ($mode == 'oubli_pass') {
	// debut presentation
	install_debut_html(_T('pass_mot_oublie'));
Yannick Patois's avatar
Yannick Patois a validé

	echo "<p>";
	if ($erreur)
		echo $erreur;
	else {
		echo _T('pass_indiquez_cidessous');

		echo "<p>";
		echo '<form action="spip_pass.php3" method="post">';
		echo '<div align="right">';
		echo '<input type="text" class="fondo" name="email_oubli" value="">';
esj's avatar
esj a validé
		echo '<input type="hidden" name="mode" value="oubli_pass">';
		echo '  <input type=submit class="fondl" value="'._T('pass_ok').'"></div></form>';
esj's avatar
esj a validé
 else {
	$inscriptions_ecrire = (lire_meta("accepter_inscriptions") == "oui");
esj's avatar
esj a validé
	if ($inscriptions_ecrire || (lire_meta('accepter_visiteurs') == 'oui') OR (lire_meta('forums_publics') == 'abo')) {
	// debut presentation
esj's avatar
esj a validé
		install_debut_html(_T('pass_vousinscrire'));
		echo "<p>";
		
		if ($mode != 'forum')
		  echo _T('pass_espace_prive_bla');
		else
		  echo _T('pass_forum_bla');
		echo "\n<p>";
Yannick Patois's avatar
Yannick Patois a validé

esj's avatar
esj a validé
		include_local("inc-inscription.php3");
Fil's avatar
Fil a validé
		echo inscription_dyn($mode);
esj's avatar
esj a validé
	}
	else {
		install_debut_html(_T('pass_erreur'));
		echo "<p>"._T('pass_rien_a_faire_ici');
	}
 }
echo "<p align='right'>",
  http_script("if (window.opener) document.write(\"<a href='javascript:close();'>\");
Fil's avatar
Fil a validé
	else document.write(\"<a href='./'>\");
	document.write(\""._T('pass_quitter_fenetre')."</a>\");"),
  "<noscript>[<a href='./'>"._T('pass_retour_public')."</a>]</noscript>
Fil's avatar
Fil a validé
</p>";
Yannick Patois's avatar
Yannick Patois a validé

Yannick Patois's avatar
Yannick Patois a validé