diff --git a/ecrire/public/assembler.php b/ecrire/public/assembler.php index 71f88c9db96c979c91f73e947ff2a626e7b29d13..8df527671b4890d933c57983984c9200757e436a 100644 --- a/ecrire/public/assembler.php +++ b/ecrire/public/assembler.php @@ -137,7 +137,7 @@ function assembler($fond, $connect='') { AND $GLOBALS['var_mode'] != 'debug' AND !isset($page['entetes']['Location']) // cette page realise une redirection, donc pas d'erreur ) { - $page = message_erreur_404(); + $page = message_erreur_404(assembler_erreur_404 ($contexte)); } // pas de cache client en mode 'observation' if ($GLOBALS['var_mode']) { @@ -380,18 +380,6 @@ function message_erreur_404 ($erreur= "") { static $deja = false; if ($deja) return "erreur"; $deja = true; - if (!$erreur) { - if (isset($GLOBALS['id_article'])) - $erreur = 'public:aucun_article'; - else if (isset($GLOBALS['id_rubrique'])) - $erreur = 'public:aucune_rubrique'; - else if (isset($GLOBALS['id_breve'])) - $erreur = 'public:aucune_breve'; - else if (isset($GLOBALS['id_auteur'])) - $erreur = 'public:aucun_auteur'; - else if (isset($GLOBALS['id_syndic'])) - $erreur = 'public:aucun_site'; - } $contexte_inclus = array( 'erreur' => _T($erreur), 'lang' => $GLOBALS['spip_lang'] @@ -401,6 +389,19 @@ function message_erreur_404 ($erreur= "") { return $page; } +function assembler_erreur_404 ($contexte) +{ + if (isset($contexte['id_article'])) + return'public:aucun_article'; + else if (isset($contexte['id_rubrique'])) + return'public:aucune_rubrique'; + else if (isset($contexte['id_breve'])) + return'public:aucune_breve'; + else if (isset($contexte['id_auteur'])) + return'public:aucun_auteur'; + else if (isset($contexte['id_syndic'])) + return'public:aucun_site'; +} // temporairement ici : a mettre dans le futur inc/modeles // creer_contexte_de_modele('left', 'autostart=true', ...) renvoie un array()