X-Git-Url: http://git.cyclocoop.org/?p=velocampus%2Fweb%2Fwww.git;a=blobdiff_plain;f=www%2Fecrire%2Finc%2Fauth.php;fp=www%2Fecrire%2Finc%2Fauth.php;h=bd6e762f9ef3296fa4e122b3cf4fee3929595e82;hp=31cb420b427194d348e4d8270e00fea7cf7d8ede;hb=e99f0878011913365e49b30d90e496c24c301393;hpb=80b4d3e85f78d402ed2e73f8f5d1bf4c19962eed diff --git a/www/ecrire/inc/auth.php b/www/ecrire/inc/auth.php index 31cb420..bd6e762 100644 --- a/www/ecrire/inc/auth.php +++ b/www/ecrire/inc/auth.php @@ -3,7 +3,7 @@ /***************************************************************************\ * SPIP, Systeme de publication pour l'internet * * * - * Copyright (c) 2001-2011 * + * Copyright (c) 2001-2014 * * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James * * * * Ce programme est un logiciel libre distribue sous licence GNU/GPL. * @@ -48,14 +48,15 @@ function acces_statut($id_auteur, $statut, $bio) { if ($statut != 'nouveau') return $statut; include_spip('inc/filtres'); - if (!($s = tester_config('', $bio))) return $statut; + include_spip('inc/autoriser'); + if (!autoriser('inscrireauteur', $bio)) return $statut; //i.e. "nouveau" include_spip('action/editer_auteur'); - instituer_auteur($id_auteur,array('statut'=> $s)); + instituer_auteur($id_auteur,array('statut'=> $bio)); include_spip('inc/modifier'); revision_auteur($id_auteur, array('bio'=>'')); include_spip('inc/session'); - session_set('statut',$s); - return $s; + session_set('statut',$bio); + return $bio; } // Fonction d'authentification. Retourne: @@ -220,6 +221,9 @@ function auth_init_droits($row) $connect_login = $row['login']; $connect_statut = acces_statut($connect_id_auteur, $row['statut'], $row['bio']); + // on force l'écriture de cette info dans le fichier de session + // pour pouvoir récupérer #SESSION{en_ligne} dans les squelettes + session_set('en_ligne', $row['en_ligne']); $GLOBALS['visiteur_session'] = array_merge((array)$GLOBALS['visiteur_session'], $row); $r = @unserialize($row['prefs']); @@ -657,10 +661,11 @@ function lire_php_auth($login, $pw, $serveur=''){ * @param $re * @param $lien */ -function ask_php_auth($pb, $raison, $retour, $url='', $re='', $lien='') { +function ask_php_auth($pb, $raison, $retour='', $url='', $re='', $lien='') { @Header("WWW-Authenticate: Basic realm=\"espace prive\""); @Header("HTTP/1.0 401 Unauthorized"); $ici = generer_url_ecrire(); + $retour = $retour?$retour:_T('icone_retour'); echo "$pb

$raison

[$retour] "; if ($url) { echo "[$re]";