Valider 28abfa4f rédigé par Fil's avatar Fil
Parcourir les fichiers

un test moins bourrin sur bonjour permettra de mieux distinguer une erreur de...

un test moins bourrin sur bonjour permettra de mieux distinguer une erreur de cookies (si pas de cookie, var_auth renvoie le statut 'inconnu') d'une erreur 'connexion avec un statut qui ne permet pas de se connecter dans ecrire/
parent ac9c22cf
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+5 −5
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -80,10 +80,10 @@ function action_cookie_dist() {
			spip_log("login de $session_login vers $redirect");
			// Si on se connecte dans l'espace prive, 
			// ajouter "bonjour" (repere a peu pres les cookies desactives)
			if (strpos($redirect,_DIR_RESTREINT_ABS)!==false) {
				$redirect .= ((false !== strpos($redirect, "?")) ? "&" : "?")
					. 'bonjour=oui';
			}
			if (strpos($redirect,_DIR_RESTREINT_ABS)!==false)
				$redirect = parametre_url($redirect, 'bonjour', 'oui', '&');

			// Prevoir de demander un cookie de correspondance
			if ($row_auteur['statut'] == '0minirezo')
				$set_cookie_admin = "@".$session_login;

+1 −2
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -43,8 +43,7 @@ define('DEFAUT_PARTIE', DEFAUT_PARTIE_R);
// http://doc.spip.org/@calendrier_retire_args_ancre
function calendrier_retire_args_ancre($script)
{
	$script = str_replace('&', '&', $script);
  $script = str_replace('?bonjour=oui&?','?',$script);
	$script = parametre_url($script, 'bonjour', '', '&');
  if (preg_match(',^(.*)#([^=&]*)$,',$script, $m)) {
	  $script = $m[1];
	  $ancre = $m[2];
+10 −5
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -39,11 +39,16 @@ if (autoriser_sans_cookie($exec)) {
				(_DIR_RESTREINT ? "" : _DIR_RESTREINT_ABS)
				. str_replace('&', '&', self())))
			// $var_auth indique si c'est le statut qui est insuffisant
			// un echec au "bonjour" (login initial) quand var_auth renvoie
			// 'inconnu' signale sans doute un probleme de cookies
			. ((!isset($_GET['bonjour'])) ? ''
			    : (($var_auth == '6forum') ?
				 '&var_echec_visiteur=true'
			       : '&var_echec_cookie=true')),
						       true));
			    : ($var_auth=='inconnu'
					? '&var_echec_cookie=true'
					: '&var_echec_visiteur=true'
				)
			),
			true)
		);
	}
 }