Browse Source

Suivre les évolutions du plugin Cache Factory v1.

master v3.11.0
Eric Lupinacci 8 months ago
parent
commit
8faffd0d84
4 changed files with 30 additions and 33 deletions
  1. +25
    -28
      ezcache/rainette.php
  2. +0
    -0
      formulaires/inc-rainette_meteo_cache_label.html
  3. +3
    -3
      inc/meteo_charger.php
  4. +2
    -2
      paquet.xml

+ 25
- 28
ezcache/rainette.php View File

@ -9,52 +9,49 @@ if (!defined('_ECRIRE_INC_VERSION')) {
/**
* Renvoie la configuration spécifique des caches de Rainette.
*
* @param string $plugin
* Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou
* @param string $plugin Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier ou
* un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.
*
* @return array
* Tableau de la configuration brute du plugin Taxonomie.
* @return array Tableau de la configuration des types de cache du plugin.
*/
function rainette_cache_configurer($plugin) {
// Initialisation du tableau de configuration avec les valeurs par défaut du plugin Cache.
$configuration = array(
'racine' => '_DIR_VAR',
'sous_dossier' => true,
'nom_obligatoire' => array('lieu', 'donnees', 'langage'),
'nom_facultatif' => array('unite'),
'extension' => '.txt',
'securisation' => false,
'serialisation' => true,
'separateur' => '_',
'conservation' => 3600 * 24
'meteo' => array(
'racine' => '_DIR_VAR',
'sous_dossier' => true,
'nom_obligatoire' => array('lieu', 'donnees', 'langage'),
'nom_facultatif' => array('unite'),
'extension' => '.txt',
'securisation' => false,
'serialisation' => true,
'separateur' => '_',
'conservation' => 3600 * 24
),
);
return $configuration;
}
/**
* Effectue le chargement du formulaire de vidage des caches pour le plugin Taxonomie.
* Effectue le chargement du formulaire de vidage des caches de type `meteo` du plugin.
* L'intérêt est de permette le rangement des caches par service.
*
* @uses cache_chercher_service()
* @uses rainette_lister_services()
* @uses cache_repertorier()
*
* @param string $plugin
* Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier
* @param string $plugin Identifiant qui permet de distinguer le module appelant qui peut-être un plugin comme le noiZetier
* ou un script. Pour un plugin, le plus pertinent est d'utiliser le préfixe.
* @param array $options
* Tableau d'options qui peut être fourni par un plugin utilisateur uniquement si celui-ci fait appel
* @param array $valeurs Tableau des valeurs du formulaire à compléter
* @param array $options Tableau d'options qui peut être fourni par un plugin utilisateur uniquement si celui-ci fait appel
* au formulaire. La page cache_vider de Cache Factory n'utilise pas ce paramètre.
* Le tableau est passé à la fonction de service de chargement du formulaire uniquement.
* @param array $configuration
* Configuration complète des caches du plugin utilisateur lue à partir de la meta de stockage.
* @param array $configuration Configuration complète des caches du type meteo du plugin utilisateur lue à partir de la meta de stockage.
*
* @return array
* Tableau des valeurs spécifique au plugin taxonomie.
* @return array Tableau des caches de type meteo.
*/
function rainette_cache_formulaire_charger($plugin, $options, $configuration) {
$valeurs = array();
function rainette_meteo_cache_formulaire_charger($plugin, $valeurs, $options, $configuration) {
// On constitue la liste des services requis par l'appel
include_spip('rainette_fonctions');
@ -65,15 +62,15 @@ function rainette_cache_formulaire_charger($plugin, $options, $configuration) {
foreach ($services as $_service => $_infos) {
// On récupère les caches du service
$filtres = array('sous_dossier' => $_service);
$caches = cache_repertorier('rainette', $filtres);
$caches = cache_repertorier('rainette', 'meteo', $filtres);
// Si il existe des caches pour le service on stocke les informations recueillies
if ($caches) {
$complement_titre = $_infos['actif']
? _T('rainette:service_actif')
: _T('rainette:service_inactif');
$valeurs['_caches'][$_service]['titre'] = "{$_infos['nom']} (${complement_titre})";
$valeurs['_caches'][$_service]['liste'] = $caches;
$valeurs['_caches']['meteo'][$_service]['titre'] = "{$_infos['nom']} (${complement_titre})";
$valeurs['_caches']['meteo'][$_service]['liste'] = $caches;
}
}


formulaires/inc-rainette_cache_label.html → formulaires/inc-rainette_meteo_cache_label.html View File


+ 3
- 3
inc/meteo_charger.php View File

@ -116,7 +116,7 @@ function inc_meteo_charger_dist($lieu, $mode = 'conditions', $periodicite = 0, $
// - le fichier cache n'existe pas
// - la période de validité du cache est échue
include_spip('inc/ezcache_cache');
if (!$fichier_cache = cache_est_valide('rainette', $cache)) {
if (!$fichier_cache = cache_est_valide('rainette', 'meteo', $cache)) {
// Construire l'url de la requête
$urler = "${service}_service2url";
$url = $urler($lieu, $mode, $periodicite, $configuration);
@ -278,10 +278,10 @@ function inc_meteo_charger_dist($lieu, $mode = 'conditions', $periodicite = 0, $
);
// Mise à jour du cache
cache_ecrire('rainette', $cache, $tableau);
cache_ecrire('rainette', 'meteo', $cache, $tableau);
} else {
// Lecture des données du fichier cache valide
$tableau = cache_lire('rainette', $fichier_cache);
$tableau = cache_lire('rainette', 'meteo', $fichier_cache);
}
}


+ 2
- 2
paquet.xml View File

@ -1,7 +1,7 @@
<paquet
prefix="rainette"
categorie="divers"
version="3.10.1"
version="3.11.0"
etat="stable"
compatibilite="]3.1.3;3.2.*]"
logo="rainette_logo-64.png"
@ -24,7 +24,7 @@
<pipeline nom="insert_head" action="insert_head_css" inclure="rainette_pipelines.php" />
<pipeline nom="post_chargement_meteo" action="" />
<necessite nom="ezcache" compatibilite="[0.8.0;]" />
<necessite nom="ezcache" compatibilite="[1.0.0;]" />
<necessite nom="saisies" compatibilite="[3.23.2;[" />
<necessite nom="php" compatibilite="[5.3.0;[" />


Loading…
Cancel
Save