Changeset 113218 in spip-zone


Ignore:
Timestamp:
Jan 3, 2019, 10:14:11 PM (2 months ago)
Author:
jluc@…
Message:

La durée dynamique d'un cache peut désormais aussi se calculer avec d'autres données du cache qu'une variable d'environnement + exemple de la doc : jusquaminuit (Eric OSC)

Location:
_plugins_/cachelab/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/cachelab/trunk/inc/cachelab_invalideur.php

    r113131 r113218  
    129129                                return;
    130130                        }
    131                         $duree = $f($page['contexte'][$arg]);
    132                         if (!defined('LOG_CACHELAB_DUREES_DYNAMIQUES') or LOG_CACHELAB_DUREES_DYNAMIQUES)
    133                                 spip_log ("#CACHE $f ($arg={$page['contexte'][$arg]}) renvoie : $duree s", "cachelab");
     131                        $duree = $f($page['contexte'][$arg],$page);
     132                        if (!is_null($duree)) {
     133                                if (!defined('LOG_CACHELAB_DUREES_DYNAMIQUES') or LOG_CACHELAB_DUREES_DYNAMIQUES)
     134                                        spip_log ("#CACHE $f ($arg={$page['contexte'][$arg]}) renvoie : $duree s", "cachelab");
    134135
    135                         if ($var_cache)
    136                                 echo "<div class='cachelab_blocs' $hint_squel><h6>Durée dynamique : $duree</h6><small>$infos</small></div>";
     136                                if ($var_cache)
     137                                        echo "<div class='cachelab_blocs' $hint_squel><h6>Durée dynamique : $duree</h6><small>$infos</small></div>";
    137138
    138                         $page['duree'] = $duree;
    139                         $page['entetes']['X-Spip-Cache']=$duree;
     139                                $page['duree'] = $duree;
     140                                $page['entetes']['X-Spip-Cache']=$duree;
    140141
    141                         // On garde un souvenir
    142                         // unset ($page['entetes']['X-Spip-Methode-Duree-Cache']);
     142                                // On garde un souvenir
     143                                // unset ($page['entetes']['X-Spip-Methode-Duree-Cache']);
    143144
    144                         // Comme memoization, on ajoute une heure "histoire de pouvoir tourner
    145                         // sur le cache quand la base de donnees est plantée (à tester)"
    146                         // TODO CORE ? changer creer_cache pour qu'il appelle maj_invalideurs *avant* d'avoir écrit le cache
    147                         $Memoization->set($fichier, $page, 3600+$duree);
     145                                // Comme memoization, on ajoute une heure "histoire de pouvoir tourner
     146                                // sur le cache quand la base de donnees est plantée (à tester)"
     147                                // TODO CORE ? changer creer_cache pour qu'il appelle maj_invalideurs *avant* d'avoir écrit le cache
     148                                $Memoization->set($fichier, $page, 3600+$duree);
     149                        }
    148150                }
    149151                else
  • _plugins_/cachelab/trunk/paquet.xml

    r113131 r113218  
    22        prefix="cachelab"
    33        categorie="outil"
    4         version="0.11.5"
     4        version="0.11.6"
    55        etat="dev"
    66        compatibilite="[3.0.0;3.2.*]"
  • _plugins_/cachelab/trunk/public/cachelab_balises.php

    r112738 r113218  
    196196}
    197197
     198/**
     199 * Calcule une durée de cache sans rafraîchissement jusqu'au lendemain minuit cinq.
     200 *
     201 * @param $date_unused : inutilisé
     202 * @return int : le nombre de secondes restant jusqu'au prochain minuit cinq
     203 */
     204function cachelab_duree_jusqueminuit($date_unused) {
     205    return strtotime('tomorrow') + 300 - time();
     206}
     207
    198208//
    199209// Log tout ou un élément contenu par le tableau de cache
     
    295305                        }
    296306                        break;
     307
    297308        case 'insert' :
    298309                global $Memoization;
     
    326337        return 'oui_anonyme';
    327338}
    328 
    329        
Note: See TracChangeset for help on using the changeset viewer.