login: fix when user statut is equal to only '0'

This commit is contained in:
Jérôme Schneider 2013-06-21 16:25:37 +02:00
parent f822bd5cc5
commit 539bffc866
1 changed files with 6 additions and 3 deletions

View File

@ -89,18 +89,21 @@ function login_saml_successfull()
{ {
spip_log("[auth_saml] creating user [" . $login . "]"); spip_log("[auth_saml] creating user [" . $login . "]");
spip_log("[auth_saml] display name : $display_name and email : $email"); spip_log("[auth_saml] display name : $display_name and email : $email");
$pass = generate_password(); $pass = hash('sha256', generate_password());
spip_query("INSERT INTO spip_auteurs (nom, login, email, pass, statut) VALUES ('$display_name', '$login', '$email', '$pass', '6forum')"); spip_query("INSERT INTO spip_auteurs (nom, login, email, pass, statut, webmestre) VALUES
('$display_name', '$login', '$email', '$pass', '6forum', 'non')");
// On recupere l('utilisateur // On recupere l('utilisateur
$result = spip_query("SELECT * FROM spip_auteurs WHERE email=" ._q($email). " AND statut<>'6forum'" ); $result = spip_query("SELECT * FROM spip_auteurs WHERE email=" ._q($email). " AND statut<>'6forum'" );
$row_auteur = spip_fetch_array($result); $row_auteur = spip_fetch_array($result);
} }
// Debug
spip_log('[auth_saml] login :' . $row_auteur['login'] . ' status : ' . $row_auteur['statut'] . ' email : ' . $row_auteur['email']);
// chargement de l'utilisateur en session // chargement de l'utilisateur en session
$GLOBALS['auteur_session'] = $row_auteur; $GLOBALS['auteur_session'] = $row_auteur;
$session = charger_fonction('session', 'inc'); $session = charger_fonction('session', 'inc');
$cookie_session = $session($row_auteur); $cookie_session = $session($row_auteur);
spip_setcookie('spip_session', $cookie_session); spip_setcookie('spip_session', $cookie_session);
if ($row_auteur['statut'][0] < 6) if (($row_auteur['statut'][0] < 6) and ($row_auteur['statut'] != '0'))
$redirect = _DIR_RESTREINT_ABS. "?bonjour=oui"; $redirect = _DIR_RESTREINT_ABS. "?bonjour=oui";
else else
$redirect = '/'; $redirect = '/';