diff --git a/spip_cookie.php3 b/spip_cookie.php3 index e6bccc360fc82534903da9d13e5c8c7033533d52..4b1b1940a3697e6c52ca9e17b8a06c36b11cd7b2 100644 --- a/spip_cookie.php3 +++ b/spip_cookie.php3 @@ -134,6 +134,7 @@ if ($essai_login == "oui") { } } + // Si la connexion a reussi if ($ok) { // Nouveau redacteur ou visiteur inscrit par mail : // 'nouveau' -> '1comite' ou '6forum' @@ -143,16 +144,23 @@ if ($essai_login == "oui") { if ($auth->login AND $auth->statut == '0minirezo') // force le cookie pour les admins $cookie_admin = "@".$auth->login; + // On est connecte : recuperer les donnees auteurs + // poser le cookie session, puis le cas echeant + // verifier que le statut correspond au minimum requis, $query = "SELECT * FROM spip_auteurs WHERE login='".addslashes($auth->login)."'"; $result = spip_query($query); - if ($row_auteur = spip_fetch_array($result)) + if ($row_auteur = spip_fetch_array($result)) { $cookie_session = creer_cookie_session($row_auteur); + } else + $ok = false; - if (ereg(_DIR_RESTREINT_ABS, $redirect)) { + // Si on se connecte dans l'espace prive, ajouter "bonjour" (inutilise) + if ($ok AND ereg(_DIR_RESTREINT_ABS, $redirect)) { $redirect .= (strpos($redirect, "?") ? "&" : "?") . 'bonjour=oui'; } } - else { + + if (!$ok) { if (ereg(_DIR_RESTREINT_ABS, $redirect)) $redirect = "spip_login.php3"; $redirect .= (strpos($redirect, "?") ? "&" : "?") . "var_login=$login";