From b26f90553678543b2ec908ad32649d59ef5d19d6 Mon Sep 17 00:00:00 2001
From: "Committo,Ergo:sum" <esj@rezo.net>
Date: Mon, 19 Dec 2005 10:36:00 +0000
Subject: [PATCH] include_ecrire etc acceptent des noms sans extension et
 completent avec .php ou .php3; migration generale dans les scripts de
 l'espace public pour preparer l'abandon des .php3

---
 inc-admin.php3         |  2 +-
 inc-balises.php3       |  8 ++++----
 inc-cache.php3         |  8 ++++----
 inc-calcul-outils.php3 | 10 ++++-----
 inc-calcul.php3        | 46 +++++++++++++++++++++---------------------
 inc-compilo.php3       | 16 +++++++--------
 inc-criteres.php3      |  2 +-
 inc-messforum.php3     | 28 ++++++++++++-------------
 inc-public-global.php3 | 22 ++++++++++----------
 inc-public.php3        | 12 +++++------
 inc-urls-html.php3     |  2 +-
 inc-urls-propres.php3  |  8 ++++----
 inc-urls-standard.php3 |  2 +-
 spip_cache.php3        |  8 ++++----
 spip_cal.php3          |  2 +-
 spip_cookie.php3       | 14 ++++++-------
 spip_image.php3        |  2 +-
 spip_inscription.php3  |  6 +++---
 spip_pass.php3         | 14 ++++++-------
 spip_redirect.php3     |  6 +++---
 spip_rss.php           | 14 ++++++-------
 spip_test_dirs.php3    |  2 +-
 22 files changed, 117 insertions(+), 117 deletions(-)

diff --git a/inc-admin.php3 b/inc-admin.php3
index 8ed492f9ba..6dfa300f79 100644
--- a/inc-admin.php3
+++ b/inc-admin.php3
@@ -35,7 +35,7 @@ function affiche_boutons_admin($contenu) {
 	//
 	// Regler les boutons dans la langue de l'admin (sinon tant pis)
 	//
-	include_ecrire ("inc_lang.php3");
+	include_ecrire ("inc_lang");
 	$login = addslashes(ereg_replace('^@','',$GLOBALS['spip_admin']));
 	$s = spip_query("SELECT lang FROM spip_auteurs WHERE login='$login'");
 	if ($row = spip_fetch_array($s))
diff --git a/inc-balises.php3 b/inc-balises.php3
index 484fba9715..9996c2670e 100644
--- a/inc-balises.php3
+++ b/inc-balises.php3
@@ -412,12 +412,12 @@ function balise_EMBED_DOCUMENT_dist($p) {
 // sinon elles seront remplacees par les fontions de inc_surligne
 
 function balise_DEBUT_SURLIGNE_dist($p) {
-	include_ecrire('inc_surligne.php3');
+	include_ecrire('inc_surligne');
 	$p->code = "'<" . MARQUEUR_SURLIGNE . "'";
 	return $p;
 }
 function balise_FIN_SURLIGNE_dist($p) {
-	include_ecrire('inc_surligne.php3');
+	include_ecrire('inc_surligne');
 	$p->code = "'<" . MARQUEUR_FSURLIGNE . "'";
 	return $p;
 }
@@ -644,7 +644,7 @@ function balise_EXTRA_dist ($p) {
 
 	// Gerer la notation [(#EXTRA|isbn)]
 	if ($p->params) {
-		include_ecrire("inc_extra.php3");
+		include_ecrire("inc_extra");
 		list ($key, $champ_extra) = each($p->params);	// le premier filtre
 		$type_extra = $p->type_requete;
 		$champ = $champ_extra[1];
@@ -737,7 +737,7 @@ function balise_PARAMETRES_FORUM_dist($p) {
 // Noter l'invalideur de la page contenant ces parametres,
 // en cas de premier post sur le forum
 function code_invalideur_forums($p, $code) {
-	include_ecrire('inc_invalideur.php3');
+	include_ecrire('inc_invalideur');
 	$type = 'id_forum';
 	$valeur = "\n\t\tcalcul_index_forum("
 		// Retournera 4 [$SP] mais force la demande du champ a MySQL
diff --git a/inc-cache.php3 b/inc-cache.php3
index 21972575d8..f8511c3b48 100644
--- a/inc-cache.php3
+++ b/inc-cache.php3
@@ -47,7 +47,7 @@ function generer_nom_fichier_cache($contexte='', $fond='') {
 	// Sous-repertoires 0...9a..f/
 	$subdir = creer_repertoire(_DIR_CACHE, substr($md_cache, 0, 1));
 
-	include_ecrire('inc_acces.php3');
+	include_ecrire('inc_acces');
 	verifier_htaccess(_DIR_CACHE);
 
 	$gzip = $flag_gz ? '.gz' : '';
@@ -168,7 +168,7 @@ function determiner_cache(&$use_cache, $contexte,$fond) {
 
 	// Faut-il effacer des pages invalidees (en particulier ce cache-ci) ?
 	if ($GLOBALS['meta']['invalider'] AND $GLOBALS['db_ok']) {
-		include_ecrire('inc_meta.php3');
+		include_ecrire('inc_meta');
 		lire_metas();
 		retire_caches($chemin_cache);
 	}
@@ -195,7 +195,7 @@ function determiner_cache(&$use_cache, $contexte,$fond) {
 			if (!spip_interdire_cache) {
 				spip_log("Erreur base de donnees & "
 				. "impossible utiliser $chemin_cache");
-				include_ecrire('inc_minipres.php');
+				include_ecrire('inc_minipres');
 				install_debut_html(_T('info_travaux_titre'));echo _T('titre_probleme_technique');install_fin_html();
 				// continuer quand meme, ca n'ira pas loin.
 				// mais ne plus rien signaler
@@ -215,7 +215,7 @@ function creer_cache(&$page, $chemin_cache, $duree)
 	// Entrer dans la base les invalideurs calcules par le compilateur
 	// (et supprimer les anciens)
 
-	include_ecrire('inc_invalideur.php3');
+	include_ecrire('inc_invalideur');
 	maj_invalideurs($chemin_cache, $page['invalideurs'], $duree);
 
 	// Enregistrer le fichier cache
diff --git a/inc-calcul-outils.php3 b/inc-calcul-outils.php3
index 6ae4e96fd9..780f27215c 100644
--- a/inc-calcul-outils.php3
+++ b/inc-calcul-outils.php3
@@ -24,7 +24,7 @@
 
 if (!defined("_ECRIRE_INC_VERSION")) return;
 
-include_ecrire('inc_rubriques.php3'); # pour calcul_branche()
+include_ecrire('inc_rubriques'); # pour calcul_branche()
 
 // Pour les documents comme pour les logos, le filtre |fichier donne
 // le chemin du fichier apres 'IMG/' ;  peut-etre pas d'une purete
@@ -70,7 +70,7 @@ function affiche_logos($logos, $lien, $align) {
 //
 
 function calcule_logo($type, $onoff, $id, $id_rubrique, $ff) {
-	include_ecrire('inc_logos.php3');
+	include_ecrire('inc_logos');
 
 	$table_logos = array (
 	'ARTICLE' => 'art',
@@ -107,7 +107,7 @@ function calcule_logo($type, $onoff, $id, $id_rubrique, $ff) {
 
 //
 // fonction standard de calcul de la balise #INTRODUCTION
-// on peut la surcharger en definissant dans mes_fonctions.php3 :
+// on peut la surcharger en definissant dans mes_fonctions :
 // function introduction($type,$texte,$chapo,$descriptif) {...}
 //
 function calcul_introduction ($type, $texte, $chapo='', $descriptif='') {
@@ -147,7 +147,7 @@ function calcul_introduction ($type, $texte, $chapo='', $descriptif='') {
 function synthetiser_balise_dynamique($nom, $args, $file, $lang, $ligne) {
  return 
 		('<'.'?php 
-include_ecrire(\'inc_lang.php3\');
+include_ecrire(\'inc_lang\');
 lang_select("'.$lang.'");
 include_local("'
 		. $file
@@ -240,7 +240,7 @@ array("$element=$id_element"));
 
 function table_from_primary($id) {
 	global $tables_principales;
-	include_ecrire('inc_serialbase.php3');
+	include_ecrire('inc_serialbase');
 	foreach ($tables_principales as $k => $v) {
 		if ($v['key']['PRIMARY KEY'] == $id)
 			return array($k, array_key_exists('id_rubrique', $v['field']));
diff --git a/inc-calcul.php3 b/inc-calcul.php3
index a1c69fd2e2..495cf4d836 100644
--- a/inc-calcul.php3
+++ b/inc-calcul.php3
@@ -18,26 +18,26 @@ if (!defined("_ECRIRE_INC_VERSION")) return;
 // Ce fichier calcule une page en executant un squelette.
 //
 
-include_ecrire("inc_meta.php3");
-include_ecrire("inc_index.php3");
-include_ecrire("inc_texte.php3");
-include_ecrire("inc_lang.php3");
-include_ecrire("inc_documents.php3");
-include_ecrire("inc_abstract_sql.php3");
-include_ecrire("inc_forum.php3");
-include_ecrire("inc_debug_sql.php3");
-include_ecrire("inc_distant.php");
-include_local("inc-calcul-outils.php3");
+include_ecrire("inc_meta");
+include_ecrire("inc_index");
+include_ecrire("inc_texte");
+include_ecrire("inc_lang");
+include_ecrire("inc_documents");
+include_ecrire("inc_abstract_sql");
+include_ecrire("inc_forum");
+include_ecrire("inc_debug_sql");
+include_ecrire("inc_distant");
+include_local("inc-calcul-outils");
 
 // NB: Ce fichier peut initialiser $dossier_squelettes (old-style)
 if ($f = find_in_path("mes_fonctions.php3"))
 	include_local ($f);
 
 // Gestionnaire d'URLs
-if (@file_exists("inc-urls.php3"))
-	include_local("inc-urls.php3");
+if (@file_exists("inc-urls.php3")) // compat vieille version
+	include_local("inc-urls");
 else
-	include_local("inc-urls-".$GLOBALS['type_urls'].".php3");
+	include_local("inc-urls-".$GLOBALS['type_urls']);
 
 
 // Le squelette compile est-il trop vieux ?
@@ -55,7 +55,7 @@ function squelette_obsolete($skel, $squelette) {
 # Charge un squelette (au besoin le compile) 
 # et retoune le nom de sa fonction principale, ou '' s'il est indefini
 # Charge egalement un fichier homonyme de celui du squelette
-# mais de suffixe '_fonctions.php3' pouvant contenir:
+# mais de suffixe '_fonctions.php' pouvant contenir:
 # - des filtres
 # - des fonctions de traduction de balise, de critere et de boucle
 # - des declaration de tables SQL supplementaires
@@ -79,7 +79,7 @@ function charger_squelette ($squelette) {
 
 	// sinon, charger le compilateur et verifier que le source est lisible
 	if (!function_exists($nom)) {
-		include_local("inc-compilo.php3");
+		include_local("inc-compilo");
 		lire_fichier ($sourcefile, $skel);
 	}
 
@@ -89,8 +89,8 @@ function charger_squelette ($squelette) {
 	// Le point 1 exige qu'il soit lu dans tous les cas.
 	// Le point 2 exige qu'il soit lu apres inc-compilo
 	// (car celui-ci initialise $tables_principales) mais avant la compil
-	$f = $squelette . '_fonctions.php3';
-	if (@file_exists($f)) include($f);
+
+	include_local($squelette . '_fonctions', true);
 
 	if (function_exists($nom)) return $nom;
 
@@ -102,7 +102,7 @@ function charger_squelette ($squelette) {
 	else {
 
 		if ($GLOBALS['var_mode'] == 'debug') {
-			include_ecrire("inc_debug_sql.php3");
+			include_ecrire("inc_debug_sql");
 			debug_dumpfile ($skel_code, $nom, 'code');
 		}
 #		spip_log($skel_code);
@@ -127,11 +127,11 @@ function charger_squelette ($squelette) {
 
 # La recherche est assuree par la fonction chercher_squelette,
 # definie dans inc-chercher, fichier non charge si elle est deja definie
-# (typiquement dans mes_fonctions.php3)
+# (typiquement dans mes_fonctions.php)
 
 function cherche_page ($cache, $contexte, $fond)  {
 	if (!function_exists('chercher_squelette'))
-		include_local("inc-chercher-squelette.php3");
+		include_local("inc-chercher-squelette");
 
 	// Choisir entre $fond-dist.html, $fond=7.html, etc?
 	$id_rubrique_fond = 0;
@@ -162,7 +162,7 @@ function cherche_page ($cache, $contexte, $fond)  {
 		// Passer la main au debuggueur)
 		if ($GLOBALS['var_mode'] == 'debug')
 		  {
-			include_ecrire("inc_debug_sql.php3");
+			include_ecrire("inc_debug_sql");
 			debug_dumpfile ($page['texte'], $fonc, 'resultat');
 		  }
 	}
@@ -176,7 +176,7 @@ function cherche_page ($cache, $contexte, $fond)  {
 //
 // Contexte : lors du calcul d'une page spip etablit le contexte a partir
 // des variables $_GET et $_POST, et leur ajoute la date
-// Note : pour hacker le contexte depuis le fichier d'appel (article.php3),
+// Note : pour hacker le contexte depuis le fichier d'appel (page.php),
 // il est recommande de modifier $_GET['toto'] (meme si la page est
 // appelee avec la methode POST).
 //
@@ -225,7 +225,7 @@ function calculer_page_globale($cache, $fond) {
 		if ($art = sql_chapo($id_article)) {
 			$chapo = $art['chapo'];
 			if (substr($chapo, 0, 1) == '=') {
-				include_ecrire('inc_texte.php3');
+				include_ecrire('inc_texte');
 				list(,$url) = extraire_lien(array('','','',
 				substr($chapo, 1)));
 				if ($url) { // sinon les navigateurs pataugent
diff --git a/inc-compilo.php3 b/inc-compilo.php3
index 30aae3cdd1..4600250c1e 100644
--- a/inc-compilo.php3
+++ b/inc-compilo.php3
@@ -22,25 +22,25 @@ define('CODE_MONOTONE', "^(\n//[^\n]*\n)?\(?'([^'])*'\)?$");
 
 // Definition de la structure $p, et fonctions de recherche et de reservation
 // dans l'arborescence des boucles
-include_local("inc-compilo-index.php3");  # index ? structure ? pile ?
+include_local("inc-compilo-index");  # index ? structure ? pile ?
 
 // definition des boucles
-include_local("inc-boucles.php3");
+include_local("inc-boucles");
 
 // definition des criteres
-include_local("inc-criteres.php3");
+include_local("inc-criteres");
 
 // definition des balises
-include_local("inc-balises.php3");
+include_local("inc-balises");
 
 // definition de l'API
-include_local("inc-compilo-api.php3");
+include_local("inc-compilo-api");
 
 # definition des tables
-include_ecrire('inc_serialbase.php3');
+include_ecrire('inc_serialbase');
 
 // outils pour debugguer le compilateur
-#include_local("inc-compilo-debug.php3"); # desactive
+#include_local("inc-compilo-debug"); # desactive
 
 //
 // Calculer un <INCLURE()>
@@ -569,7 +569,7 @@ function calculer_squelette($squelette, $nom, $gram, $sourcefile) {
 	$boucles = array();
 	spip_timer('calcul_skel');
 
-	include_local("inc-$gram-squel.php3");
+	include_local("inc-$gram-squel");
 
 	$racine = phraser($squelette, '',$boucles, $nom);
 
diff --git a/inc-criteres.php3 b/inc-criteres.php3
index b24382b286..6a9a941a04 100644
--- a/inc-criteres.php3
+++ b/inc-criteres.php3
@@ -642,7 +642,7 @@ function trouver_def_table($nom, &$boucle)
   if ($boucle->sql_serveur && 
       $desc = $tables_des_serveurs_sql[$boucle->sql_serveur][$nom])
     return array($nom, $desc);
-  include_ecrire('inc_auxbase.php3');
+  include_ecrire('inc_auxbase');
   if ($desc = $tables_auxiliaires['spip_' . $nom])
     return array('spip_' . $nom, $desc);
 
diff --git a/inc-messforum.php3 b/inc-messforum.php3
index 222c9dd09f..bf2acebe1f 100644
--- a/inc-messforum.php3
+++ b/inc-messforum.php3
@@ -12,10 +12,10 @@
 
 if (!defined("_ECRIRE_INC_VERSION")) return;
 
-include_ecrire('inc_meta.php3');
-include_ecrire('inc_forum.php3');
-include_ecrire('inc_filtres.php3');
-include_ecrire("inc_abstract_sql.php3");
+include_ecrire('inc_meta');
+include_ecrire('inc_forum');
+include_ecrire('inc_filtres');
+include_ecrire("inc_abstract_sql");
 include_local(_FILE_CONNECT);
 
 // Ce fichier inclus par inc-public a un comportement special
@@ -23,14 +23,14 @@ include_local(_FILE_CONNECT);
 
 function prevenir_auteurs($auteur, $email_auteur, $id_forum, $id_article, $texte, $titre, $statut) {
 	global $nom_site_forum, $url_site;
-	include_ecrire('inc_texte.php3');
-	include_ecrire('inc_filtres.php3');
-	include_ecrire('inc_mail.php3');
+	include_ecrire('inc_texte');
+	include_ecrire('inc_filtres');
+	include_ecrire('inc_mail');
 	// Gestionnaire d'URLs
 	if (@file_exists("inc-urls.php3"))
-		include_local("inc-urls.php3");
+		include_local("inc-urls");
 	else
-		include_local("inc-urls-".$GLOBALS['type_urls'].".php3");
+		include_local("inc-urls-".$GLOBALS['type_urls']);
 
 	if ($statut == 'prop') # forum modere
 		$url = "ecrire/controle_forum.php3?debut_id_forum=$id_forum";
@@ -167,7 +167,7 @@ function enregistre_forum() {
 
 	// Verifier hash securite pour les forums avec previsu
 	if ($GLOBALS['afficher_texte'] <> 'non') {
-		include_ecrire("inc_session.php3");
+		include_ecrire("inc_session");
 		if (!verifier_action_auteur("ajout_forum $id_rubrique".
 		" $id_forum $id_article $id_breve".
 		" $id_syndic $alea", $hash)) {
@@ -218,9 +218,9 @@ function enregistre_forum() {
 	if ($calculer_retour) {
 		// Gestionnaire d'URLs
 		if (@file_exists("inc-urls.php3"))
-			include_local("inc-urls.php3");
+			include_local("inc-urls");
 		else
-			include_local("inc-urls-".$GLOBALS['type_urls'].".php3");
+			include_local("inc-urls-".$GLOBALS['type_urls']);
 
 		// le retour automatique envoie sur le thread, ce qui permet
 		// de traiter elegamment le cas des forums moderes a priori.
@@ -238,7 +238,7 @@ function enregistre_forum() {
 		prevenir_auteurs($auteur, $email_auteur, $id_message, $id_article, $texte, $titre, $statut);
 
 	// Poser un cookie pour ne pas retaper le nom / email
-	include_ecrire('inc_cookie.php');
+	include_ecrire('inc_cookie');
 	spip_setcookie('spip_forum_user',
 		       serialize(array('nom' => $auteur, 'email' => $email_auteur)));
 
@@ -246,7 +246,7 @@ function enregistre_forum() {
 	//
 	// INVALIDATION DES CACHES LIES AUX FORUMS
 	//
-		include_ecrire('inc_invalideur.php3');
+		include_ecrire('inc_invalideur');
 		suivre_invalideur ("id='id_forum/" .
 			calcul_index_forum($id_article,
 				$id_breve,
diff --git a/inc-public-global.php3 b/inc-public-global.php3
index 3bdff151ba..3d13dc2049 100644
--- a/inc-public-global.php3
+++ b/inc-public-global.php3
@@ -23,16 +23,16 @@ function calcule_header_et_page ($fond) {
 	// authentification du visiteur
 	if ($_COOKIE['spip_session'] OR
 	($_SERVER['PHP_AUTH_USER']  AND !$ignore_auth_http)) {
-		include_ecrire ("inc_session.php3");
+		include_ecrire ("inc_session");
 		verifier_visiteur();
 	}
 	// multilinguisme
 	if ($forcer_lang AND ($forcer_lang!=='non') AND !count($_POST)) {
-		include_ecrire('inc_lang.php3');
+		include_ecrire('inc_lang');
 		verifier_lang_url();
 	}
 	if ($_GET['lang']) {
-		include_ecrire('inc_lang.php3');
+		include_ecrire('inc_lang');
 		lang_select($_GET['lang']);
 	}
 
@@ -40,7 +40,7 @@ function calcule_header_et_page ($fond) {
 
 	if (strlen($_POST['confirmer_forum']) > 0
 	    OR ($GLOBALS['afficher_texte']=='non' AND $_POST['ajouter_mot'])) {
-		include_local('inc-messforum.php3');
+		include_local('inc-messforum');
 		redirige_par_entete(enregistre_forum());
 	}
 
@@ -119,7 +119,7 @@ function afficher_page_globale ($fond) {
 	$f = find_in_path("inc-cache.php3");
 	if ($f && is_readable($f)) {
 		include_local($f);
-	} else include_local("inc-cache.php3");
+	} else include_local("inc-cache");
 
 	// Peut-on utiliser un fichier cache ?
 	$chemin_cache = determiner_cache($use_cache, '', $fond);
@@ -160,7 +160,7 @@ function afficher_page_globale ($fond) {
 	  if (!$use_cache)
 	    $page =  obtenir_page_ancienne ($chemin_cache, $fond, false);
 	  else {
-	    include_local('inc-calcul.php3');
+	    include_local('inc-calcul');
 	    $page = calculer_page_globale ($chemin_cache, $fond);
 
 	    if ($chemin_cache) creer_cache($page, $chemin_cache, $use_cache);
@@ -179,7 +179,7 @@ function afficher_page_globale ($fond) {
 	}
 
 	if ($var_preview AND !$flag_preserver) {
-		include_ecrire('inc_minipres.php');
+		include_ecrire('inc_minipres');
 		$page['texte'] .= afficher_bouton_preview();
 	}
 	//
@@ -224,7 +224,7 @@ function inclure_page($fond, $contexte_inclus, $cache_incluant='') {
 	// - on n'y est pas, et alors il faut revenir dans la langue par defaut
 	if (($lang = $contexte_inclus['lang'])
 	|| ($GLOBALS['spip_lang'] != ($lang = $GLOBALS['meta']['langue_site']))) {
-		include_ecrire('inc_lang.php3');
+		include_ecrire('inc_lang');
 		lang_select($lang);
 		$lang_select = true; // pour lang_dselect en sortie
 	}
@@ -232,7 +232,7 @@ function inclure_page($fond, $contexte_inclus, $cache_incluant='') {
 	  if (!$use_cache)
 	    $page =  obtenir_page_ancienne ($chemin_cache, $fond, false);
 	  else {
-	    include_local('inc-calcul.php3');
+	    include_local('inc-calcul');
 	    $page = cherche_page($chemin_cache, $contexte_inclus, $fond, false);
 	    $page['signal']['process_ins'] = $page['process_ins'];
 	    $lastmodified = time();
@@ -266,7 +266,7 @@ function inclure_balise_dynamique($texte, $echo=true, $ligne=0) {
 		$f = find_in_path("inc-cache.php3");
 		if ($f && is_readable($f)) {
 		  if (!$GLOBALS['included_files']['inc-cache']++) include($f);
-		} else include_local("inc-cache.php3");
+		} else include_local("inc-cache");
 
 		$d = $GLOBALS['delais'];
 		$GLOBALS['delais'] = $delainc;
@@ -311,7 +311,7 @@ function message_erreur_404 ($erreur= "") {
 		else if (isset($GLOBALS['id_syndic']))
 		$erreur = 'public:aucun_site';
 	}
-	include_ecrire('inc_headers.php');
+	include_ecrire('inc_headers');
 	http_status(404);
 
 	return array('texte' => '<'.'?php
diff --git a/inc-public.php3 b/inc-public.php3
index 99a7c83aba..4378ae4c97 100644
--- a/inc-public.php3
+++ b/inc-public.php3
@@ -27,7 +27,7 @@ if (defined("_INC_PUBLIC")) {
 	if (!function_exists('include_local')) { # cas de page.php3
 		include ("ecrire/inc_version.php3");
 	}
-	include_local('inc-public-global.php3');
+	include_local('inc-public-global');
 
 	// Calculer la page en envoyant seulement les en-tetes, pas la page
 	$tableau_des_erreurs = array();
@@ -72,7 +72,7 @@ if (defined("_INC_PUBLIC")) {
 			// On ne revient pas ici si le nb d'erreurs > 4
 			if ($res === false AND $affiche_boutons_admin
 			AND $auteur_session['statut'] == '0minirezo') {
-				include_ecrire('inc_debug_sql.php3');
+				include_ecrire('inc_debug_sql');
 				erreur_squelette(_T('zbug_erreur_execution_page'));
 			}
 		}
@@ -80,7 +80,7 @@ if (defined("_INC_PUBLIC")) {
 
 	// Passer la main au debuggueur le cas echeant 
 	if ($var_mode == 'debug') {
-		include_ecrire("inc_debug_sql.php3");
+		include_ecrire("inc_debug_sql");
 		debug_dumpfile($var_mode_affiche== 'validation' ? $page :"",
 			       $var_mode_objet,$var_mode_affiche);
 	} 
@@ -89,7 +89,7 @@ if (defined("_INC_PUBLIC")) {
 
 	// Traiter var_recherche pour surligner les mots
 	if ($var_recherche) {
-		include_ecrire("inc_surligne.php3");
+		include_ecrire("inc_surligne");
 		$page = surligner_mots($page, $var_recherche);
 	}
 
@@ -104,7 +104,7 @@ if (defined("_INC_PUBLIC")) {
 
 	// Inserer au besoin les boutons admins
 	if ($affiche_boutons_admin) {
-		include_local("inc-admin.php3");
+		include_local("inc-admin");
 		$page = affiche_boutons_admin($page);
 	}
 
@@ -113,7 +113,7 @@ if (defined("_INC_PUBLIC")) {
 
 	// Gestion des statistiques du site public
 	if ($GLOBALS['meta']["activer_statistiques"] != "non") {
-		include_local ("inc-stats.php3");
+		include_local ("inc-stats");
 		ecrire_stats();
 	}
 
diff --git a/inc-urls-html.php3 b/inc-urls-html.php3
index 9e14ffe23e..f7a194a074 100644
--- a/inc-urls-html.php3
+++ b/inc-urls-html.php3
@@ -105,7 +105,7 @@ function recuperer_parametres_url($fond, $url) {
 //
 
 function generer_url_forum($id_forum, $show_thread=false) {
-	include_ecrire('inc_forum.php3');
+	include_ecrire('inc_forum');
 	return generer_url_forum_dist($id_forum, $show_thread);
 }
 
diff --git a/inc-urls-propres.php3 b/inc-urls-propres.php3
index f9257a994f..1036e01c47 100644
--- a/inc-urls-propres.php3
+++ b/inc-urls-propres.php3
@@ -83,8 +83,8 @@ function _generer_url_propre($type, $id_objet) {
 		return $row['url_propre'];
 
 	// Sinon, creer l'URL
-	include_ecrire("inc_filtres.php3");
-	include_ecrire("inc_charsets.php3");
+	include_ecrire("inc_filtres");
+	include_ecrire("inc_charsets");
 	$url = translitteration(corriger_caracteres(
 		supprimer_tags(supprimer_numero(extraire_multi($row['titre'])))
 		));
@@ -159,7 +159,7 @@ function generer_url_breve($id_breve) {
 }
 
 function generer_url_forum($id_forum, $show_thread=false) {
-	include_ecrire('inc_forum.php3');
+	include_ecrire('inc_forum');
 	return generer_url_forum_dist($id_forum, $show_thread);
 }
 
@@ -210,7 +210,7 @@ preg_match(',(^|/)((article|breve|rubrique|mot|auteur|site)(\.php3?|[0-9]+\.html
 			$url_propre = $func($id_objet);
 			if ($url_propre
 			AND ($url_propre<>$regs[2])) {
-				include_ecrire('inc_headers.php');
+				include_ecrire('inc_headers');
 				http_status(301);
 				// recuperer les arguments supplementaires (&debut_xxx=...)
 				$reste = preg_replace('/^&/','?',
diff --git a/inc-urls-standard.php3 b/inc-urls-standard.php3
index b2a15a4b80..fe5efd7fe1 100644
--- a/inc-urls-standard.php3
+++ b/inc-urls-standard.php3
@@ -81,7 +81,7 @@ function recuperer_parametres_url($fond, $url) {
 //
 
 function generer_url_forum($id_forum, $show_thread=false) {
-	include_ecrire('inc_forum.php3');
+	include_ecrire('inc_forum');
 	return generer_url_forum_dist($id_forum, $show_thread);
 }
 
diff --git a/spip_cache.php3 b/spip_cache.php3
index d4dc73b446..f70cb05568 100644
--- a/spip_cache.php3
+++ b/spip_cache.php3
@@ -13,9 +13,9 @@
 
 include ("ecrire/inc_version.php3");
 
-include_ecrire("inc_meta.php3");
-include_ecrire("inc_session.php3");
-include_ecrire("inc_invalideur.php3");
+include_ecrire("inc_meta");
+include_ecrire("inc_session");
+include_ecrire("inc_invalideur");
 
 if ($purger_cache == "oui"
 AND verifier_action_auteur("purger_cache", $hash, $id_auteur)) {
@@ -30,7 +30,7 @@ AND verifier_action_auteur("purger_squelettes", $hash, $id_auteur)) {
 
 if ($afficher_cache_images == "oui"
 AND verifier_action_auteur("afficher_cache_images", $hash, $id_auteur)) {
-	include_ecrire('inc_lang.php3');
+	include_ecrire('inc_lang');
 	lang_select($lang);
 	calculer_cache_vignettes();
 }
diff --git a/spip_cal.php3 b/spip_cal.php3
index 050db2eed0..7caa97da43 100644
--- a/spip_cal.php3
+++ b/spip_cal.php3
@@ -21,7 +21,7 @@ $var_f = find_in_path('inc_' . $var_nom . '.php');
 if ($var_f) 
 	include($var_f);
 else
-	include_ecrire('inc_' . $var_nom . '.php');
+	include_ecrire('inc_' . $var_nom);
 
 if (function_exists($var_nom))
 	$var_nom($id, $cle);
diff --git a/spip_cookie.php3 b/spip_cookie.php3
index 1685379189..18bb902075 100644
--- a/spip_cookie.php3
+++ b/spip_cookie.php3
@@ -12,8 +12,8 @@
 
 
 include ("ecrire/inc_version.php3");
-include_ecrire ("inc_session.php3");
-include_ecrire('inc_cookie.php');
+include_ecrire ("inc_session");
+include_ecrire('inc_cookie');
 
 
 // gerer l'auth http
@@ -120,7 +120,7 @@ if ($essai_login == "oui") {
 	if ($ldap_present) $auths[] = 'ldap';
 	$ok = false;
 	foreach ($auths as $nom_auth) {
-		include_ecrire("inc_auth_".$nom_auth.".php3");
+		include_ecrire("inc_auth_".$nom_auth);
 		$classe_auth = "Auth_".$nom_auth;
 		$auth = new $classe_auth;
 		if ($auth->init()) {
@@ -197,7 +197,7 @@ if ($cookie_session) {
 
 // changement de langue espace public
 if ($var_lang) {
-	include_ecrire('inc_lang.php3');
+	include_ecrire('inc_lang');
 
 	if (changer_langue($var_lang)) {
 		spip_setcookie('spip_lang', $var_lang, time() + 365 * 24 * 3600);
@@ -208,7 +208,7 @@ if ($var_lang) {
 
 // changer de langue espace prive (ou login)
 if ($var_lang_ecrire) {
-	include_ecrire('inc_lang.php3');
+	include_ecrire('inc_lang');
 	verifier_visiteur();
 
 	if (changer_langue($var_lang_ecrire)) {
@@ -216,7 +216,7 @@ if ($var_lang_ecrire) {
 		spip_setcookie('spip_lang', $var_lang_ecrire, time() + 365 * 24 * 3600);
 
 		if (_FILE_CONNECT) {
-			include_ecrire('inc_admin.php3');
+			include_ecrire('inc_admin');
 			if (verifier_action_auteur('var_lang_ecrire', $valeur, $id_auteur)) {
 				spip_query ("UPDATE spip_auteurs SET lang = '".addslashes($var_lang_ecrire)."' WHERE id_auteur = ".$id_auteur);
 				$auteur_session['lang'] = $var_lang_ecrire;
@@ -236,7 +236,7 @@ if (ereg("^Apache", $SERVER_SOFTWARE)) {
 	redirige_par_entete($redirect);
 }
 else {
-	include_ecrire('inc_headers.php');
+	include_ecrire('inc_headers');
 	spip_header("Refresh: 0; url=" . $redirect);
 	echo "<html><head>";
 	echo "<meta http-equiv='Refresh' content='0; url=".$redirect."'>";
diff --git a/spip_image.php3 b/spip_image.php3
index a42bb3658d..8907d26013 100644
--- a/spip_image.php3
+++ b/spip_image.php3
@@ -20,7 +20,7 @@ $var_f = find_in_path('inc_' . $var_nom . '.php');
 
 if ($var_f) 
 	include($var_f);
- else include_ecrire('inc_' . $var_nom . '.php');
+ else include_ecrire('inc_' . $var_nom);
 	
 
 $var_nom .= '_' . $action;
diff --git a/spip_inscription.php3 b/spip_inscription.php3
index 7fa1ea313e..5c05e3a0d5 100644
--- a/spip_inscription.php3
+++ b/spip_inscription.php3
@@ -12,9 +12,9 @@
 
 include ("ecrire/inc_version.php3");
 include_local(find_in_path("inc-formulaire_inscription.php3"));
-include_local("inc-public-global.php3"); 
-include_ecrire("inc_lang.php3");
-include_ecrire('inc_headers.php');
+include_local("inc-public-global"); 
+include_ecrire("inc_lang");
+include_ecrire('inc_headers');
 
 utiliser_langue_site();
 utiliser_langue_visiteur();
diff --git a/spip_pass.php3 b/spip_pass.php3
index d55e6a3782..137c2ce30b 100644
--- a/spip_pass.php3
+++ b/spip_pass.php3
@@ -12,13 +12,13 @@
 
 
 include ("ecrire/inc_version.php3");
-include_ecrire("inc_session.php3"); # pour creer_uniq_id
-include_ecrire("inc_mail.php3"); # pour envoyer_mail
-include_ecrire("inc_acces.php3"); # pour generer_htpass
-include_local("inc-public-global.php3"); # pour calculer la page
-include_ecrire("inc_lang.php3");
-include_ecrire("inc_filtres.php3"); # pour email_valide()
-include_ecrire('inc_headers.php');
+include_ecrire("inc_session"); # pour creer_uniq_id
+include_ecrire("inc_mail"); # pour envoyer_mail
+include_ecrire("inc_acces"); # pour generer_htpass
+include_local("inc-public-global"); # pour calculer la page
+include_ecrire("inc_lang");
+include_ecrire("inc_filtres"); # pour email_valide()
+include_ecrire('inc_headers');
 
 utiliser_langue_site();
 utiliser_langue_visiteur();
diff --git a/spip_redirect.php3 b/spip_redirect.php3
index 6934b96947..1c17bf811b 100644
--- a/spip_redirect.php3
+++ b/spip_redirect.php3
@@ -15,14 +15,14 @@
 
 define ('_SPIP_REDIRECT', 1);
 include ("ecrire/inc_version.php3");
-include_ecrire ("inc_session.php3");
+include_ecrire ("inc_session");
 verifier_visiteur();
 
 // Gestionnaire d'URLs
 if (@file_exists("inc-urls.php3"))
-	include_local("inc-urls.php3");
+	include_local("inc-urls");
 else
-	include_local("inc-urls-".$GLOBALS['type_urls'].".php3");
+	include_local("inc-urls-".$GLOBALS['type_urls']);
 
 if ($id_article) {
 	$url = generer_url_article($id_article);
diff --git a/spip_rss.php b/spip_rss.php
index 972d8ca0ee..b5803f3ef5 100644
--- a/spip_rss.php
+++ b/spip_rss.php
@@ -19,14 +19,14 @@
 // On cree ensuite le RSS correspondant a l'operation
 
 include("ecrire/inc_version.php3");
-include_ecrire("inc_texte.php3");
-include_ecrire('inc_rss.php3');
-include_ecrire("inc_acces.php3");
+include_ecrire("inc_texte");
+include_ecrire('inc_rss');
+include_ecrire("inc_acces");
 // Gestionnaire d'URLs
 if (@file_exists("inc-urls.php3"))
-	include_local("inc-urls.php3");
+	include_local("inc-urls");
 else
-	include_local("inc-urls-".$GLOBALS['type_urls'].".php3");
+	include_local("inc-urls-".$GLOBALS['type_urls']);
 
 
 //
@@ -45,7 +45,7 @@ OR ($a['id_auteur']>0 AND $id<>$a['id_auteur'])) {
 		list($var, $val) = split('-', $bout, 2);
 		$a[$var] = $val;
 	}
-	include_ecrire('inc_lang.php3');
+	include_ecrire('inc_lang');
 	lang_select($lang);
 }
 
@@ -80,7 +80,7 @@ switch($op) {
 		break;
 	# suivi prive des forums
 	case 'forums':
-		include_ecrire("inc_forum.php3");
+		include_ecrire("inc_forum");
 		$critere = critere_statut_controle_forum($a['page']);
 		$rss = rss_suivi_forums($a, $critere, true);
 		$title = _T("ecrire:titre_page_forum_suivi")." (".$a['page'].")";
diff --git a/spip_test_dirs.php3 b/spip_test_dirs.php3
index e7f19a6c87..89c1dd7305 100644
--- a/spip_test_dirs.php3
+++ b/spip_test_dirs.php3
@@ -15,7 +15,7 @@ define("_TEST_DIRS", "1");
 
 include("ecrire/inc_version.php3");
 
-include_ecrire("inc_minipres.php");
+include_ecrire("inc_minipres");
 
 utiliser_langue_visiteur();
 
-- 
GitLab