Skip to content
Extraits de code Groupes Projets
Valider 9f5ba8ba rédigé par Fil's avatar Fil
Parcourir les fichiers

un peu de nettoyage du code + patch prefixe cookie

parent f61d1735
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -50,7 +50,7 @@ if ($prefs_mod) { ...@@ -50,7 +50,7 @@ if ($prefs_mod) {
} }
if ($set_ecran) { // on pose un cookie long car ce reglage depend plus du navigateur que de l'utilisateur if ($set_ecran) { // on pose un cookie long car ce reglage depend plus du navigateur que de l'utilisateur
setcookie('spip_ecran', $set_ecran, time() + 365 * 24 * 3600); spip_setcookie('spip_ecran', $set_ecran, time() + 365 * 24 * 3600);
$spip_ecran = $set_ecran; $spip_ecran = $set_ecran;
} }
if (!$spip_ecran) $spip_ecran = "etroit"; if (!$spip_ecran) $spip_ecran = "etroit";
...@@ -244,7 +244,7 @@ function tester_rubrique_vide($id_rubrique) { ...@@ -244,7 +244,7 @@ function tester_rubrique_vide($id_rubrique) {
// Recuperation du cookie // Recuperation du cookie
// //
$cookie_admin = $HTTP_COOKIE_VARS["spip_admin"]; $cookie_admin = $HTTP_COOKIE_VARS['spip_admin'];
......
...@@ -31,6 +31,9 @@ function creer_pass_aleatoire($longueur = 8, $sel = "") { ...@@ -31,6 +31,9 @@ function creer_pass_aleatoire($longueur = 8, $sel = "") {
$pass .= $x; $pass .= $x;
$s = substr($s, 2); $s = substr($s, 2);
} }
$pass = ereg_replace("[./]", "a", $pass);
$pass = ereg_replace("[I1l]", "L", $pass);
$pass = ereg_replace("[0O]", "o", $pass);
return $pass; return $pass;
} }
......
...@@ -14,6 +14,10 @@ define("_ECRIRE_INC_VERSION", "1"); ...@@ -14,6 +14,10 @@ define("_ECRIRE_INC_VERSION", "1");
// (a modifier pour avoir plusieurs sites SPIP dans une seule base) // (a modifier pour avoir plusieurs sites SPIP dans une seule base)
$table_prefix = "spip"; $table_prefix = "spip";
// Prefixe des cookies
// (a modifier pour installer des sites SPIP dans des sous-repertoires)
$cookie_prefix = "spip";
// faut-il loger les infos de debug dans data/spip.log ? // faut-il loger les infos de debug dans data/spip.log ?
$debug = false; $debug = false;
...@@ -175,6 +179,42 @@ function feed_post_files($table) { ...@@ -175,6 +179,42 @@ function feed_post_files($table) {
feed_post_files('HTTP_POST_FILES'); feed_post_files('HTTP_POST_FILES');
//
// Appliquer le prefixe cookie
//
function spip_setcookie ($name='', $value='', $expire='', $path='', $domain='', $secure='') {
$name = ereg_replace ('^spip', $GLOBALS['cookie_prefix'], $name);
if ($secure)
@setcookie ($name, $value, $expire, $path, $domain, $secure);
else if ($domain)
@setcookie ($name, $value, $expire, $path, $domain);
else if ($path)
@setcookie ($name, $value, $expire, $path);
else if ($expire)
@setcookie ($name, $value, $expire);
else
@setcookie ($name, $value);
}
if ($cookie_prefix <> 'spip') {
reset ($HTTP_COOKIE_VARS);
while (list($name,$value) = each($HTTP_COOKIE_VARS)) {
if (ereg('^spip', $name)) {
unset($HTTP_COOKIE_VARS[$name]);
unset($$name);
}
}
reset ($HTTP_COOKIE_VARS);
while (list($name,$value) = each($HTTP_COOKIE_VARS)) {
if (ereg('^'.$cookie_prefix, $name)) {
$spipname = ereg_replace ('^'.$cookie_prefix, 'spip', $name);
$HTTP_COOKIE_VARS[$spipname] = $value;
$$spipname = $value;
}
}
}
// //
// Infos sur l'hebergeur // Infos sur l'hebergeur
// //
......
...@@ -319,8 +319,8 @@ function formulaire_inscription($type) { ...@@ -319,8 +319,8 @@ function formulaire_inscription($type) {
// envoyer identifiants par mail // envoyer identifiants par mail
if ($continue) { if ($continue) {
include_local("inc-forum.php3"); include_ecrire("inc_acces.php3");
$pass = generer_pass_forum($mail_inscription); $pass = creer_pass_aleatoire(8,$mail_inscription);
$login = test_login($mail_inscription); $login = test_login($mail_inscription);
$mdpass = md5($pass); $mdpass = md5($pass);
$htpass = generer_htpass($pass); $htpass = generer_htpass($pass);
......
...@@ -33,30 +33,6 @@ function get_forums_publics($id_article=0) { ...@@ -33,30 +33,6 @@ function get_forums_publics($id_article=0) {
return $forums_publics; return $forums_publics;
} }
function generer_pass_forum($email = '') {
$passw = creer_pass_aleatoire(9, $email);
$passw = ereg_replace("[./]", "a", $passw);
$passw = ereg_replace("[I1l]", "L", $passw);
$passw = ereg_replace("[0O]", "o", $passw);
return $passw;
}
function generer_hash_forum($email, $id_auteur) {
return calculer_action_auteur("forum public $email", $id_auteur);
}
function poser_cookie_forum($email, $id_auteur, $duree = 30) {
$hash = generer_hash_forum($email, $id_auteur);
setcookie("spip_forum_email", $email, time() + (3600 * 24 * $duree));
setcookie("spip_forum_hash", $hash, time() + (3600 * 24 * $duree));
}
function enlever_cookie_forum() {
setcookie("spip_forum_email", "", time() - 3600 * 24);
setcookie("spip_forum_hash", "", time() - 3600 * 24);
}
function afficher_petits_logos_mots($id_mot) { function afficher_petits_logos_mots($id_mot) {
$racine = "IMG/moton$id_mot"; $racine = "IMG/moton$id_mot";
if (file_exists("$racine.gif")) { if (file_exists("$racine.gif")) {
......
...@@ -121,7 +121,7 @@ function login($cible = '', $prive = 'prive', $message_login='') { ...@@ -121,7 +121,7 @@ function login($cible = '', $prive = 'prive', $message_login='') {
} else if (!$flag_autres_sources) { } else if (!$flag_autres_sources) {
$erreur = "L'identifiant &laquo; $login &raquo; est inconnu."; $erreur = "L'identifiant &laquo; $login &raquo; est inconnu.";
$login = ''; $login = '';
@setcookie("spip_admin", "", time() - 3600); @spip_setcookie("spip_admin", "", time() - 3600);
} }
} }
......
...@@ -28,7 +28,7 @@ if ($change_session == 'oui') { ...@@ -28,7 +28,7 @@ if ($change_session == 'oui') {
$auteur_session['ip_change'] = false; $auteur_session['ip_change'] = false;
$cookie = creer_cookie_session($auteur_session); $cookie = creer_cookie_session($auteur_session);
supprimer_session($spip_session); supprimer_session($spip_session);
setcookie('spip_session', $cookie); spip_setcookie('spip_session', $cookie);
} }
@header('Content-Type: image/gif'); @header('Content-Type: image/gif');
@header('Expires: 0'); @header('Expires: 0');
...@@ -56,7 +56,7 @@ if ($logout) { ...@@ -56,7 +56,7 @@ if ($logout) {
spip_query("UPDATE spip_auteurs SET en_ligne = DATE_SUB(NOW(),INTERVAL 6 MINUTE) WHERE id_auteur = ".$auteur_session['id_auteur']); spip_query("UPDATE spip_auteurs SET en_ligne = DATE_SUB(NOW(),INTERVAL 6 MINUTE) WHERE id_auteur = ".$auteur_session['id_auteur']);
if ($spip_session) { if ($spip_session) {
zap_sessions($auteur_session['id_auteur'], true); zap_sessions($auteur_session['id_auteur'], true);
setcookie('spip_session', $spip_session, time() - 3600 * 24); spip_setcookie('spip_session', $spip_session, time() - 3600 * 24);
} }
if ($PHP_AUTH_USER) { if ($PHP_AUTH_USER) {
include_local ("inc-login.php3"); include_local ("inc-login.php3");
...@@ -77,7 +77,7 @@ if ($logout) { ...@@ -77,7 +77,7 @@ if ($logout) {
// puis de passer a spip_login qui diagnostiquera l'echec de cookie // puis de passer a spip_login qui diagnostiquera l'echec de cookie
// le cas echeant. // le cas echeant.
if ($test_echec_cookie == 'oui') { if ($test_echec_cookie == 'oui') {
setcookie('spip_session', 'test_echec_cookie'); spip_setcookie('spip_session', 'test_echec_cookie');
$link = new Link("spip_login.php3?var_echec_cookie=oui"); $link = new Link("spip_login.php3?var_echec_cookie=oui");
$link->addVar("var_url", $cible->getUrl()); $link->addVar("var_url", $cible->getUrl());
@header("Location: ".$link->getUrl()); @header("Location: ".$link->getUrl());
...@@ -156,17 +156,17 @@ if ($essai_login == "oui") { ...@@ -156,17 +156,17 @@ if ($essai_login == "oui") {
// cookie d'admin ? // cookie d'admin ?
if ($cookie_admin == "non") { if ($cookie_admin == "non") {
setcookie('spip_admin', $spip_admin, time() - 3600 * 24); spip_setcookie('spip_admin', $spip_admin, time() - 3600 * 24);
$cible->delVar('var_login'); $cible->delVar('var_login');
$cible->addVar('var_login', '-1'); $cible->addVar('var_login', '-1');
} }
else if ($cookie_admin AND $spip_admin != $cookie_admin) { else if ($cookie_admin AND $spip_admin != $cookie_admin) {
setcookie('spip_admin', $cookie_admin, time() + 3600 * 24 * 14); spip_setcookie('spip_admin', $cookie_admin, time() + 3600 * 24 * 14);
} }
// cookie de session ? // cookie de session ?
if ($cookie_session) if ($cookie_session)
setcookie('spip_session', $cookie_session); spip_setcookie('spip_session', $cookie_session);
// Redirection // Redirection
// Sous Apache 1.x, les cookies avec une redirection fonctionnent // Sous Apache 1.x, les cookies avec une redirection fonctionnent
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter