[ Index ] |
|
Code source de SPIP 1.9.2c |
1 <?php 2 3 /***************************************************************************\ 4 * SPIP, Systeme de publication pour l'internet * 5 * * 6 * Copyright (c) 2001-2007 * 7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James * 8 * * 9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. * 10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * 11 \***************************************************************************/ 12 13 14 // Placer definition des couleurs avant inc_version, 15 // sinon impossible de les redefinir dans mes_options 16 $GLOBALS['couleurs_spip'] = array( 17 18 // Vert 19 1 => array ( 20 "couleur_foncee" => "#9DBA00", 21 "couleur_claire" => "#C5E41C", 22 "couleur_lien" => "#657701", 23 "couleur_lien_off" => "#A6C113" 24 ), 25 // Violet clair 26 2 => array ( 27 "couleur_foncee" => "#eb68b3", 28 "couleur_claire" => "#ffa9e6", 29 "couleur_lien" => "#8F004D", 30 "couleur_lien_off" => "#BE6B97" 31 ), 32 // Orange 33 3 => array ( 34 "couleur_foncee" => "#fa9a00", 35 "couleur_claire" => "#ffc000", 36 "couleur_lien" => "#FF5B00", 37 "couleur_lien_off" => "#B49280" 38 ), 39 // Saumon 40 4 => array ( 41 "couleur_foncee" => "#CDA261", 42 "couleur_claire" => "#FFDDAA", 43 "couleur_lien" => "#AA6A09", 44 "couleur_lien_off" => "#B79562" 45 ), 46 // Bleu pastel 47 5 => array ( 48 "couleur_foncee" => "#5da7c5", 49 "couleur_claire" => "#97d2e1", 50 "couleur_lien" => "#116587", 51 "couleur_lien_off" => "#81B7CD" 52 ), 53 // Gris 54 6 => array ( 55 "couleur_foncee" => "#85909A", 56 "couleur_claire" => "#C0CAD4", 57 "couleur_lien" => "#3B5063", 58 "couleur_lien_off" => "#6D8499" 59 ), 60 ); 61 62 63 if (!defined('_ECRIRE_INC_VERSION')) { 64 include 'inc_version.php'; 65 } 66 67 include_spip('inc/cookie'); 68 69 // 70 // Determiner l'action demandee 71 // 72 73 $exec = _request('exec'); 74 75 // 76 // Authentification, redefinissable 77 // 78 79 if (autoriser_sans_cookie($exec)) { 80 if (!isset($reinstall)) $reinstall = 'non'; 81 $var_auth = true; 82 } else { 83 $auth = charger_fonction('auth', 'inc'); 84 $var_auth = $auth(); 85 if ($var_auth!=="") { 86 if ($var_auth===-1) exit(); 87 include_spip('inc/headers'); 88 redirige_par_entete(generer_url_public('login', 89 "url=" . 90 rawurlencode(str_replace('/./', '/', 91 (_DIR_RESTREINT ? "" : _DIR_RESTREINT_ABS) 92 . str_replace('&', '&', self()))) 93 // $var_auth indique si c'est le statut qui est insuffisant 94 . ((!isset($_GET['bonjour'])) ? '' 95 : (($var_auth == '6forum') ? 96 '&var_echec_visiteur=true' 97 : '&var_echec_cookie=true')), 98 true)); 99 } 100 } 101 102 // 103 // Preferences de presentation 104 // 105 106 107 if (!isset($GLOBALS['auteur_session']['prefs'])) 108 $GLOBALS['prefs'] = array('couleur' =>1, 'display'=>0, 109 'options'=> $var_auth ? 'avancees' : 'basiques'); 110 else $GLOBALS['prefs'] = unserialize($GLOBALS['auteur_session']['prefs']); 111 112 $prefs_mod = false; 113 114 if (isset($_GET['set_couleur'])) { 115 $GLOBALS['prefs']['couleur'] = floor($_GET['set_couleur']); 116 $prefs_mod = true; 117 } 118 if (isset($_GET['set_disp'])) { 119 $GLOBALS['prefs']['display'] = floor($_GET['set_disp']); 120 $prefs_mod = true; 121 } 122 if (isset($_GET['set_options']) AND ($_GET['set_options'] == 'avancees' OR $_GET['set_options'] == 'basiques')) { 123 $GLOBALS['prefs']['options'] = $_GET['set_options']; 124 $prefs_mod = true; 125 } 126 if ($prefs_mod AND !$var_auth) 127 spip_query("UPDATE spip_auteurs SET prefs = " . _q(serialize($GLOBALS['prefs'])) . " WHERE id_auteur = " .intval($GLOBALS['auteur_session']['id_auteur'])); 128 129 if (isset($_GET['set_ecran'])) { 130 // Poser un cookie, 131 // car ce reglage depend plus du navigateur que de l'utilisateur 132 $GLOBALS['spip_ecran'] = $_GET['set_ecran']; 133 spip_setcookie('spip_ecran', $GLOBALS['spip_ecran'], time() + 365 * 24 * 3600); 134 } else $GLOBALS['spip_ecran'] = isset($_COOKIE['spip_ecran']) ? $_COOKIE['spip_ecran'] : "etroit"; 135 136 137 // deux globales (compatibilite ascendante) 138 $GLOBALS['options'] = $GLOBALS['prefs']['options']; 139 $GLOBALS['spip_display'] = $GLOBALS['prefs']['display']; 140 $choix_couleur = $GLOBALS['prefs']['couleur']; 141 if (!isset($GLOBALS['couleurs_spip'][$choix_couleur])) $choix_couleur = 1; 142 143 $GLOBALS['couleur_foncee'] = $GLOBALS['couleurs_spip'][$choix_couleur]['couleur_foncee']; 144 $GLOBALS['couleur_claire'] = $GLOBALS['couleurs_spip'][$choix_couleur]['couleur_claire']; 145 146 // charger l'affichage minimal et initialiser a la langue par defaut 147 include_spip('inc/minipres'); 148 149 // si la langue est specifiee par cookie alors ... 150 if (isset($GLOBALS['_COOKIE']['spip_lang_ecrire'])) { 151 152 $spip_lang_ecrire = $GLOBALS['_COOKIE']['spip_lang_ecrire']; 153 // si pas authentifie, changer juste pour cette execution 154 if ($var_auth) 155 changer_langue($GLOBALS['_COOKIE']['spip_lang_ecrire']); 156 // si authentifie, changer definitivement si ce n'est fait 157 else { if (($spip_lang_ecrire <> $GLOBALS['auteur_session']['lang']) 158 AND changer_langue($spip_lang_ecrire)) { 159 spip_query("UPDATE spip_auteurs SET lang = " . _q($spip_lang_ecrire) . " WHERE id_auteur = " . intval($GLOBALS['auteur_session']['id_auteur'])); 160 $GLOBALS['auteur_session']['lang'] = $var_lang_ecrire; 161 $session = charger_fonction('session', 'inc'); 162 $session($GLOBALS['auteur_session']); 163 } 164 } 165 } 166 167 utiliser_langue_visiteur(); 168 169 define('_TRANCHES', 10); 170 171 // 172 // Gestion d'une page normale de l'espace prive 173 // 174 175 // Controle de la version, sauf si on est deja en train de s'en occuper 176 if (!isset($reinstall) 177 AND (!isset($var_ajaxcharset)) 178 AND ($GLOBALS['spip_version'] != (str_replace(',','.',$GLOBALS['meta']['version_installee'])))) 179 $exec = 'demande_mise_a_jour'; 180 181 // Si interruption d'une longue restauration 182 // detourner le script demande pour qu'il reprenne le boulot 183 // mais virer les Ajax pour eviter plusieurs restaurations en parallele 184 elseif ($_COOKIE['spip_admin'] 185 AND isset($GLOBALS['meta']["debut_restauration"])) { 186 if (isset($var_ajaxcharset)) exit; 187 $exec = 'import_all'; 188 } 189 190 // Verification des plugins 191 // (ne pas interrompre une restauration ou un upgrade) 192 elseif ($exec!='upgrade' 193 AND $GLOBALS['auteur_session']['statut']=='0minirezo' 194 AND !_DIR_RESTREINT 195 AND lire_fichier(_DIR_TMP.'verifier_plugins.txt',$l) 196 AND $l = @unserialize($l)) { 197 foreach ($l as $fichier) { 198 if (!@is_readable($fichier)) { 199 include_spip('inc/plugin'); 200 verifie_include_plugins(); 201 break; // sortir de la boucle, on a fait un verif 202 } 203 } 204 } 205 206 // Passer la main aux outils XML a la demande. 207 if (isset($GLOBALS['transformer_xml']) 208 AND $GLOBALS['auteur_session']['statut']=='0minirezo') { 209 set_request('var_url', $exec); 210 $exec = $GLOBALS['transformer_xml']; 211 } 212 213 // si nom pas plausible, prendre le script par defaut 214 if (!preg_match(',^[a-z_][0-9a-z_]*$,i', $exec)) $exec = "accueil"; 215 216 // Trouver la fonction eventuellement surchagee 217 218 $var_f = charger_fonction($exec); 219 220 // Feu ! 221 222 $var_f(); 223 224 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Wed Nov 21 10:20:27 2007 | par Balluche grâce à PHPXref 0.7 |
![]() |