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

la langue de l'auteur dans spip_auteurs.lang

parent 489ab014
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -35,19 +35,21 @@ if ($set_options == 'avancees' OR $set_options == 'basiques') {
$prefs['options'] = $set_options;
$prefs_mod = true;
}
if ($prefs_mod) {
spip_query ("UPDATE spip_auteurs SET prefs = '".addslashes(serialize($prefs))."' WHERE id_auteur = $connect_id_auteur");
}
if ($var_lang) {
if (changer_langue($var_lang)) {
$prefs['spip_lang'] = $var_lang;
$prefs_mod = true;
spip_query ("UPDATE spip_auteurs SET lang = '".addslashes($var_lang)."' WHERE id_auteur = $connect_id_auteur");
$auteur_session['lang'] = $var_lang;
ajouter_session($auteur_session, $spip_session);
// Poser un cookie, pour les pages n'ayant pas acces aux meta
spip_setcookie('spip_lang', $var_lang, time() + 365 * 24 * 3600);
}
}
if ($prefs_mod) {
spip_query ("UPDATE spip_auteurs SET prefs = '".addslashes(serialize($prefs))."' WHERE id_auteur = $connect_id_auteur");
}
if ($set_ecran) {
// Poser un cookie, car ce reglage depend plus du navigateur que de l'utilisateur
spip_setcookie('spip_ecran', $set_ecran, time() + 365 * 24 * 3600);
......
......@@ -148,6 +148,7 @@ function auth() {
// regler les preferences de l'auteur
$prefs = unserialize($row['prefs']);
// vieux ! on pourra supprimer post 1.6 finale...
if (! isset($prefs['display'])) { // recuperer les cookies ou creer defaut
if ($GLOBALS['set_disp'] = $GLOBALS['HTTP_COOKIE_VARS']['spip_display']) {}
else $GLOBALS['set_disp'] = 2;
......
......@@ -66,6 +66,7 @@ function creer_base() {
prefs tinytext NOT NULL,
cookie_oubli tinytext NOT NULL,
source VARCHAR(10) DEFAULT 'spip' NOT NULL,
lang VARCHAR(10) DEFAULT '' NOT NULL,
PRIMARY KEY (id_auteur),
KEY login (login),
KEY statut (statut),
......@@ -1232,10 +1233,10 @@ function maj_base() {
maj_version (1.601);
}
if ($version_installee < 1.602) {
/* if ($version_installee < 1.602) {
// juste des types de documents en plus (creer_base())
maj_version (1.602);
}
} */
if ($version_installee < 1.603) {
// supprimer les fichiers deplaces
......@@ -1243,6 +1244,20 @@ function maj_base() {
@unlink('data/engines-list.ini');
maj_version (1.603);
}
if ($version_installee < 1.604) {
spip_query("ALTER TABLE spip_auteurs ADD lang VARCHAR(10) DEFAULT '' NOT NULL");
$u = spip_query("SELECT * FROM spip_auteurs WHERE prefs LIKE '%spip_lang%'");
while ($row = spip_fetch_array($u)) {
$prefs = unserialize($row['prefs']);
$l = $prefs['spip_lang'];
unset ($prefs['spip_lang']);
spip_query ("UPDATE spip_auteurs SET lang='".addslashes($l)."',
prefs='".addslashes(serialize($prefs))."'
WHERE id_auteur=".$row['id_auteur']);
}
maj_version (1.604);
}
}
?>
......@@ -69,10 +69,6 @@ function traduire_chaine($code, $args) {
if (!$GLOBALS[$var]) charger_langue($spip_lang);
$text = $GLOBALS[$var][$code];
/*if (!$text) {
charger_langue('fr');
$text = $GLOBALS['i18n_fr'][$code];
}*/
if (!is_array($args)) return $text;
while (list($name, $value) = each($args))
......@@ -274,8 +270,8 @@ function gerer_menu_langues() {
function utiliser_langue_visiteur() {
if (!regler_langue_navigateur())
changer_langue($GLOBALS['langue_site']);
if ($GLOBALS['prefs']['spip_lang'])
changer_langue($GLOBALS['prefs']['spip_lang']);
if ($GLOBALS['auteur_session']['lang'])
changer_langue($GLOBALS['auteur_session']['lang']);
}
function utiliser_langue_site() {
......
......@@ -41,7 +41,7 @@ function fichier_session($id_session, $alea) {
//
function ajouter_session($auteur, $id_session) {
$fichier_session = fichier_session($id_session, lire_meta('alea_ephemere'));
$vars = array('id_auteur', 'nom', 'login', 'email', 'statut', 'ip_change', 'hash_env');
$vars = array('id_auteur', 'nom', 'login', 'email', 'statut', 'lang', 'ip_change', 'hash_env');
$texte = "<"."?php\n";
reset($vars);
......
......@@ -139,7 +139,7 @@ if ($flag_ecrire) {
// (utilise pour les modifs de la base de donnees)
// version de la base
$spip_version = 1.603;
$spip_version = 1.604;
// version de spip
$spip_version_affichee = "1.6pr1 CVS";
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter