Skip to content
Extraits de code Groupes Projets
Valider a06d6ffa rédigé par esj's avatar esj
Parcourir les fichiers

Extension de la fonction sous_repertoire, qui accepte un appel de forme...

Extension de la fonction sous_repertoire, qui accepte un appel de forme {{{sous_repertoire("d/f")}}} comme équivalent à {{{sous_repertoire("d", "f")}}}. Du coup, disparition d'une incohérence: la non utilisation de la constante _DIR_SKELS lors de la compilation d'un squelette.

Cet appel est aussi utilisé pour la création du répertoire de cache des DTD, celui-ci s'annonçant comme bien rempli à l'avenir.
parent a8337885
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -141,18 +141,24 @@ function supprimer_fichier($fichier) { ...@@ -141,18 +141,24 @@ function supprimer_fichier($fichier) {
// //
// Retourne $base/${subdir}/ si le sous-repertoire peut etre cree, // Retourne $base/${subdir}/ si le sous-repertoire peut etre cree,
// $base/${subdir}_ sinon ; le flag $nobase signale qu'on ne veut pas de $base/ // $base/${subdir}_ sinon ; $nobase signale qu'on ne veut pas de $base/
// On peut aussi ne donner qu'un seul argument,
// subdir valant alors ce qui suit le dernier / dans $base
// //
// http://doc.spip.org/@sous_repertoire // http://doc.spip.org/@sous_repertoire
function sous_repertoire($base, $subdir, $nobase = false) { function sous_repertoire($base, $subdir='', $nobase = false) {
if (!preg_match(',[/_]$,', $base)) $base .= '/';
$base = str_replace("//", "/", $base); $base = str_replace("//", "/", $base);
if (preg_match(',[/_]$,', $base)) $base = substr($base,0,-1);
if (!strlen($subdir)) {
$n = strrpos($base, "/");
if ($n === false) return $nobase ? '' : ($base .'/');
$subdir = substr($base, $n+1);
$base = substr($base, 0, $n+1);
} else {
$base .= '/';
$subdir = str_replace("/", "", "$subdir");
}
$baseaff = $nobase ? '' : $base; $baseaff = $nobase ? '' : $base;
# $base = 'IMG/distant/' ou 'IMG/distant_'
if (!strlen($subdir)) return $baseaff;
$subdir = str_replace("/", "", "$subdir");
if (@file_exists("$base${subdir}.plat")) if (@file_exists("$base${subdir}.plat"))
return "$baseaff${subdir}_";; return "$baseaff${subdir}_";;
......
...@@ -935,7 +935,7 @@ function spip_initialisation($pi=NULL, $pa=NULL, $ti=NULL, $ta=NULL) { ...@@ -935,7 +935,7 @@ function spip_initialisation($pi=NULL, $pa=NULL, $ti=NULL, $ta=NULL) {
define('_DIR_SESSIONS', $ti . "sessions/"); define('_DIR_SESSIONS', $ti . "sessions/");
define('_DIR_TRANSFERT', $ti . "upload/"); define('_DIR_TRANSFERT', $ti . "upload/");
define('_DIR_CACHE', $ti . "CACHE/"); define('_DIR_CACHE', $ti . "CACHE/");
define('_DIR_DTD', $ti . "CACHE/dtd"); define('_DIR_DTD', $ti . "CACHE/dtd/");
define('_DIR_SKELS', $ti . "CACHE/skel/"); define('_DIR_SKELS', $ti . "CACHE/skel/");
define('_DIR_TMP', $ti); define('_DIR_TMP', $ti);
...@@ -991,8 +991,8 @@ function spip_initialisation($pi=NULL, $pa=NULL, $ti=NULL, $ta=NULL) { ...@@ -991,8 +991,8 @@ function spip_initialisation($pi=NULL, $pa=NULL, $ti=NULL, $ta=NULL) {
define('_DOCTYPE_ECRIRE', define('_DOCTYPE_ECRIRE',
// "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>\n"); // "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>\n");
// "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>"); "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>");
"<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>\n"); // "<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>\n");
define('_DOCTYPE_AIDE', define('_DOCTYPE_AIDE',
"<!DOCTYPE html PUBLIC '-//W3C//DTD HTML 4.01 Frameset//EN' 'http://www.w3.org/TR/1999/REC-html401-19991224/frameset.dtd'>"); "<!DOCTYPE html PUBLIC '-//W3C//DTD HTML 4.01 Frameset//EN' 'http://www.w3.org/TR/1999/REC-html401-19991224/frameset.dtd'>");
......
...@@ -67,7 +67,8 @@ function analyser_dtd($grammaire, $avail, &$dtc) ...@@ -67,7 +67,8 @@ function analyser_dtd($grammaire, $avail, &$dtc)
if ($avail == 'SYSTEM') if ($avail == 'SYSTEM')
$file = $grammaire; $file = $grammaire;
else else
$file = _DIR_CACHE . preg_replace('/[^\w.]/','_', $grammaire); $file = sous_repertoire(_DIR_DTD);
$file .= preg_replace('/[^\w.]/','_', $grammaire);
if (@is_readable($file)) { if (@is_readable($file)) {
lire_fichier($file, $dtd); lire_fichier($file, $dtd);
......
...@@ -772,7 +772,7 @@ function public_compiler_dist($squelette, $nom, $gram, $sourcefile) { ...@@ -772,7 +772,7 @@ function public_compiler_dist($squelette, $nom, $gram, $sourcefile) {
$secondes = spip_timer('calcul_skel'); $secondes = spip_timer('calcul_skel');
spip_log("COMPIL ($secondes) [" spip_log("COMPIL ($secondes) ["
.preg_replace(',\.html$,', '', $sourcefile) .preg_replace(',\.html$,', '', $sourcefile)
."] ".sous_repertoire(_DIR_CACHE, 'skel', true)."$nom.php"); ."] $nom.php");
$code = "<"."?php $code = "<"."?php
/* /*
......
...@@ -39,7 +39,7 @@ function public_composer_dist($squelette, $mime_type, $gram, $sourcefile) { ...@@ -39,7 +39,7 @@ function public_composer_dist($squelette, $mime_type, $gram, $sourcefile) {
if (function_exists($nom)) if (function_exists($nom))
return $nom; return $nom;
$phpfile = sous_repertoire(_DIR_CACHE, 'skel') . $nom . '.php'; $phpfile = sous_repertoire(_DIR_SKELS) . $nom . '.php';
// si squelette est deja compile et perenne, le charger // si squelette est deja compile et perenne, le charger
if (!squelette_obsolete($phpfile, $sourcefile) if (!squelette_obsolete($phpfile, $sourcefile)
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter