/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2017 *
+ * Copyright (c) 2001-2019 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
if (!isset($auteur['date_session'])) {
$auteur['date_session'] = time();
}
- if (isset($auteur['prefs']) and is_string($auteur['prefs'])) {
- $auteur['prefs'] = unserialize($auteur['prefs']);
+ if (isset($auteur['prefs'])
+ and is_string($auteur['prefs'])
+ and $prefs = @unserialize($auteur['prefs'])) {
+ $auteur['prefs'] = $prefs;
}
$fichier_session = "";
include_spip('inc/autoriser');
}
if (autoriser('ecrire','','',$auteur) and _DUREE_COOKIE_ADMIN) {
- spip_setcookie('spip_admin', '@' . $auteur['login'], time() + max(_DUREE_COOKIE_ADMIN, $duree));
+ spip_setcookie('spip_admin', '@' . ($auteur['email'] ?: $auteur['login']), time() + max(_DUREE_COOKIE_ADMIN, $duree));
} // sinon le supprimer ...
else {
spip_setcookie('spip_admin', '', 1);
// enregistrer les autres donnees du visiteur
$texte = "<" . "?php\n";
foreach ($auteur as $var => $val) {
- $texte .= '$GLOBALS[\'visiteur_session\'][\'' . $var . '\'] = '
+ $texte .= '$GLOBALS[\'visiteur_session\'][' . var_export($var, true) . '] = '
. var_export($val, true) . ";\n";
}
$texte .= "?" . ">\n";