' . $subpage['texte']); if ($subpage['lang_select'] === true) lang_dselect(); } else { define ('_INC_PUBLIC', 1); // // Discriminer les appels // // Faut-il initialiser SPIP ? (oui dans le cas general) if (!defined('_DIR_RESTREINT_ABS')) if (defined('_DIR_RESTREINT') AND @file_exists(_DIR_RESTREINT.'inc_version.php')) { include_once _DIR_RESTREINT.'inc_version.php'; } else die('stupid death...'); // Est-ce une action ? if ($action = _request('action')) { $var_f = charger_fonction($action, 'action'); $var_f(); if ($redirect) redirige_par_entete($redirect); exit; } // cas normal, $fond defini dans le fichier d'appel // note : securise anti-injection par inc/utils.php else if (isset($fond)) { } // page=xxxx demandee par l'url else if (isset($_GET['page'])) { $fond = $_GET['page']; // Securite if (strstr($fond, '/')) die (_L("Faut pas se gener")); # par defaut } else $fond = 'sommaire'; // Particularites de certains squelettes if ($fond == 'login') $forcer_lang = true; // // Aller chercher la page // $tableau_des_erreurs = array(); $f = charger_fonction('assembler', 'public'); $page = $f($fond); if (isset($page['status'])) { include_spip('inc/headers'); http_status($page['status']); } // Content-Type ? if (!isset($page['entetes']['Content-Type'])) { $page['entetes']['Content-Type'] = "text/html; charset=" . $GLOBALS['meta']['charset']; $html = true; } else { $html = preg_match(',^\s*text/html,',$page['entetes']['Content-Type']); } if ($var_preview AND $html) { include_spip('inc/minipres'); $page['texte'] .= afficher_bouton_preview(); } // est-on admin ? if ($affiche_boutons_admin = ( isset($_COOKIE['spip_admin']) AND !$flag_preserver AND ($html OR ($var_mode == 'debug') OR count($tableau_des_erreurs)) AND !_request('var_fragment') )) include_spip('balise/formulaire_admin'); // Execution de la page calculee // 1. Cas d'une page contenant uniquement du HTML : if ($page['process_ins'] == 'html') { foreach($page['entetes'] as $k => $v) @header("$k: $v"); } // 2. Cas d'une page contenant du PHP : // Attention cette partie eval() doit imperativement // etre declenchee dans l'espace des globales (donc pas // dans une fonction). else { // Si la retention du flux de sortie est impossible // envoi des entetes if (!$flag_ob) { foreach($page['entetes'] as $k => $v) @header("$k: $v"); // si un fragment est demande, on le provoque ici // (mais ca peut planter) if (($var_fragment=_request('var_fragment'))!==NULL) { preg_match(',