Browse Source

Une fonction shorthand include_fichiers_fonctions() pour inclure le mes_fonctions.php + tous les fichiers xxx_fonctions.php des plugins quand on a besoin d'un filtre dans le php

decaler_niveau_titre
Cerdic 2 years ago
parent
commit
7791a8c7e7
  1. 12
      ecrire/base/dump.php
  2. 2
      ecrire/inc/filtres.php
  3. 28
      ecrire/inc/utils.php
  4. 2
      ecrire/public/aiguiller.php
  5. 17
      ecrire/public/parametrer.php

12
ecrire/base/dump.php

@ -26,17 +26,7 @@ include_spip('base/serial');
include_spip('base/auxiliaires');
include_spip('public/interfaces'); // pour table_jointures
// NB: Ce fichier peut ajouter des tables (old-style)
// donc il faut l'inclure "en globals"
if ($f = find_in_path('mes_fonctions.php')) {
global $dossier_squelettes;
@include_once(_ROOT_CWD . $f);
}
if (@is_readable(_CACHE_PLUGINS_FCT)) {
// chargement optimise precompile
include_once(_CACHE_PLUGINS_FCT);
}
include_fichiers_fonctions();
/**
* Retourne un nom de meta pour une rubrique et l'auteur connecté.

2
ecrire/inc/filtres.php

@ -92,6 +92,8 @@ function chercher_filtre($fonc, $default = null) {
return $f;
}
include_fichiers_fonctions();
foreach (array('filtre_' . $fonc, 'filtre_' . $fonc . '_dist', $fonc) as $f) {
trouver_filtre_matrice($f); // charge des fichiers spécifiques éventuels
// fonction ou name\space\fonction

28
ecrire/inc/utils.php

@ -171,6 +171,34 @@ function require_spip($f) {
return find_in_path($f . '.php', '', 'required');
}
/**
* Raccourci pour inclure mes_fonctions.php et tous les fichiers _fonctions.php des plugin
* quand on a besoin dans le PHP de filtres/fonctions qui y sont definis
*/
function include_fichiers_fonctions() {
static $done = false;
if (!$done) {
include_spip('inc/lang');
// NB: mes_fonctions peut initialiser $dossier_squelettes (old-style)
// donc il faut l'inclure "en globals"
if ($f = find_in_path('mes_fonctions.php')) {
global $dossier_squelettes;
include_once(_ROOT_CWD . $f);
}
if (@is_readable(_CACHE_PLUGINS_FCT)) {
// chargement optimise precompile
include_once(_CACHE_PLUGINS_FCT);
}
if (test_espace_prive()) {
include_spip('inc/filtres_ecrire');
}
$done = true;
}
}
/**
* Exécute une fonction (appellée par un pipeline) avec la donnée transmise.
*

2
ecrire/public/aiguiller.php

@ -198,7 +198,7 @@ function traiter_formulaires_dynamiques($get = false) {
// inclure mes_fonctions et autres filtres avant verifier/traiter
include_spip('public/parametrer');
include_fichiers_fonctions();
// ainsi que l'API SQL bien utile dans verifier/traiter
include_spip('base/abstract_sql');

17
ecrire/public/parametrer.php

@ -14,22 +14,7 @@ if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
include_spip('inc/lang');
// NB: mes_fonctions peut initialiser $dossier_squelettes (old-style)
// donc il faut l'inclure "en globals"
if ($f = find_in_path('mes_fonctions.php')) {
global $dossier_squelettes;
include_once(_ROOT_CWD . $f);
}
if (@is_readable(_CACHE_PLUGINS_FCT)) {
// chargement optimise precompile
include_once(_CACHE_PLUGINS_FCT);
}
if (test_espace_prive()) {
include_spip('inc/filtres_ecrire');
}
include_fichiers_fonctions();
# Determine le squelette associe a une requete
# et l'applique sur le contexte, le nom du cache et le serveur

Loading…
Cancel
Save