X-Git-Url: https://git.cyclocoop.org/?a=blobdiff_plain;f=www%2Fecrire%2Findex.php;fp=www%2Fecrire%2Findex.php;h=08c50684494fffb922c4a9eec3fc2c21a2aab11f;hb=4f443dce95ff6f8221c189880a70c74ce1c1f238;hp=d3c650a48d5a52b770acd693c7f12fea124468a9;hpb=4a628e9b277d3617535f99d663ca79fa2e891177;p=lhc%2Fweb%2Fwww.git diff --git a/www/ecrire/index.php b/www/ecrire/index.php index d3c650a4..08c50684 100644 --- a/www/ecrire/index.php +++ b/www/ecrire/index.php @@ -3,20 +3,31 @@ /***************************************************************************\ * SPIP, Systeme de publication pour l'internet * * * - * Copyright (c) 2001-2016 * + * Copyright (c) 2001-2017 * * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James * * * * Ce programme est un logiciel libre distribue sous licence GNU/GPL. * * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * \***************************************************************************/ +/** + * Fichier d'exécution de l'interface privée + * + * @package SPIP\Core\Chargement + **/ + +/** Drapeau indiquant que l'on est dans l'espace privé */ define('_ESPACE_PRIVE', true); -if (!defined('_ECRIRE_INC_VERSION')) include 'inc_version.php'; +if (!defined('_ECRIRE_INC_VERSION')) { + include 'inc_version.php'; +} // Verification anti magic_quotes_sybase, pour qui addslashes("'") = "''" // On prefere la faire ici plutot que dans inc_version, c'est moins souvent et // si le reglage est modifie sur un site en prod, ca fait moins mal -if (addslashes("'") !== "\\'") die('SPIP incompatible magic_quotes_sybase'); +if (addslashes("'") !== "\\'") { + die('SPIP incompatible magic_quotes_sybase'); +} include_spip('inc/cookie'); @@ -25,24 +36,26 @@ include_spip('inc/cookie'); // $exec = (string)_request('exec'); -$reinstall = (!is_null(_request('reinstall')))?_request('reinstall'):($exec=='install'?'oui':NULL); +$reinstall = (!is_null(_request('reinstall'))) ? _request('reinstall') : ($exec == 'install' ? 'oui' : null); // // Les scripts d'insallation n'authentifient pas, forcement, // alors il faut blinder les variables d'URL // if (autoriser_sans_cookie($exec)) { - if (!isset($reinstall)) $reinstall = 'non'; + if (!isset($reinstall)) { + $reinstall = 'non'; + } set_request('transformer_xml'); $var_auth = true; } else { // Authentification, redefinissable $auth = charger_fonction('auth', 'inc'); $var_auth = $auth(); - if ($var_auth) { + if ($var_auth) { echo auth_echec($var_auth); exit; } - } +} // initialiser a la langue par defaut include_spip('inc/lang'); @@ -51,19 +64,21 @@ utiliser_langue_visiteur(); $forcer_lang = true; -if (_request('action') OR _request('var_ajax') OR _request('formulaire_action')){ +if (_request('action') or _request('var_ajax') or _request('formulaire_action')) { // Charger l'aiguilleur qui va mettre sur la bonne voie les traitements derogatoires include_spip('public/aiguiller'); if ( // cas des appels actions ?action=xxx traiter_appels_actions() - OR + or // cas des hits ajax sur les inclusions ajax traiter_appels_inclusions_ajax() - OR - // cas des formulaires charger/verifier/traiter - traiter_formulaires_dynamiques()) - exit; // le hit est fini ! + or + // cas des formulaires charger/verifier/traiter + traiter_formulaires_dynamiques() + ) { + exit; + } // le hit est fini ! } // securiser les redirect du back-office if (_request('redirect')) { @@ -79,11 +94,13 @@ if (_request('redirect')) { // // Controle de la version, sauf si on est deja en train de s'en occuper -if (!$reinstall=='oui' -AND !_AJAX -AND isset($GLOBALS['meta']['version_installee']) -AND ($GLOBALS['spip_version_base'] != (str_replace(',','.',$GLOBALS['meta']['version_installee'])))) +if (!$reinstall == 'oui' + and !_AJAX + and isset($GLOBALS['meta']['version_installee']) + and ($GLOBALS['spip_version_base'] != (str_replace(',', '.', $GLOBALS['meta']['version_installee']))) +) { $exec = 'demande_mise_a_jour'; +} // Quand une action d'administration est en cours (meta "admin"), // refuser les connexions non-admin ou Ajax pour laisser la base intacte. @@ -92,24 +109,26 @@ AND ($GLOBALS['spip_version_base'] != (str_replace(',','.',$GLOBALS['meta']['ver // sinon c'est qu'elle a ete interrompue et il faut la reprendre elseif (isset($GLOBALS['meta']["admin"])) { - if (preg_match('/^(.*)_(\d+)_/', $GLOBALS['meta']["admin"], $l)) - list(,$var_f,$n) = $l; - if (_AJAX - OR !( + if (preg_match('/^(.*)_(\d+)_/', $GLOBALS['meta']["admin"], $l)) { + list(, $var_f, $n) = $l; + } + if (_AJAX + or !( isset($_COOKIE['spip_admin']) - OR (isset($GLOBALS['visiteur_session']) AND $GLOBALS['visiteur_session']['statut']=='0minirezo') - ) - ) { + or (isset($GLOBALS['visiteur_session']) and $GLOBALS['visiteur_session']['statut'] == '0minirezo') + ) + ) { spip_log("Quand la meta admin vaut " . - $GLOBALS['meta']["admin"] . - " seul un admin peut se connecter et sans AJAX." . - " En cas de probleme, detruire cette meta."); + $GLOBALS['meta']["admin"] . + " seul un admin peut se connecter et sans AJAX." . + " En cas de probleme, detruire cette meta."); die(_T('info_travaux_texte')); } if ($n) { - list(,$var_f,$n) = $l; - if (tester_url_ecrire("base_$var_f")) + list(, $var_f, $n) = $l; + if (tester_url_ecrire("base_$var_f")) { $var_f = "base_$var_f"; + } if ($var_f != $exec) { spip_log("Le script $var_f lance par auteur$n se substitue a l'exec $exec"); $exec = $var_f; @@ -134,10 +153,11 @@ $GLOBALS['spip_ecran'] = isset($_COOKIE['spip_ecran']) ? $_COOKIE['spip_ecran'] // (elle a ete changee dans une autre session, et on retombe sur un vieux cookie) // on appelle directement la fonction, car un appel d'action peut conduire a une boucle infinie // si le cookie n'est pas pose correctement dans l'action -if (!$var_auth AND isset($_COOKIE['spip_lang_ecrire']) - AND $_COOKIE['spip_lang_ecrire'] <> $GLOBALS['visiteur_session']['lang']) { - include_spip('action/converser'); - action_converser_post($GLOBALS['visiteur_session']['lang'],true); +if (!$var_auth and isset($_COOKIE['spip_lang_ecrire']) + and $_COOKIE['spip_lang_ecrire'] <> $GLOBALS['visiteur_session']['lang'] +) { + include_spip('action/converser'); + action_converser_post($GLOBALS['visiteur_session']['lang'], true); } @@ -148,14 +168,11 @@ if ($var_f = _request('transformer_xml')) { $exec = $var_f; } if ($var_f = tester_url_ecrire($exec)) { - $var_f = charger_fonction ($var_f); + $var_f = charger_fonction($var_f); $var_f(); // at last -} -else { +} else { // Rien de connu: rerouter vers exec=404 au lieu d'echouer // ce qui permet de laisser la main a un plugin $var_f = charger_fonction('404'); $var_f($exec); } - -?>