Changeset 114180 in spip-zone


Ignore:
Timestamp:
Feb 28, 2019, 10:17:37 AM (6 months ago)
Author:
cedric@…
Message:

Ne plus faire de ecrire_meta() sauvage dans le options, ca fait planter les sites pas encore installes - on utilise la maj de base puisqu'on en a maintenant une sur ce plugin, et par defaut le plugin tourne avec les define() fallback dans chaque methode de memoization

Location:
_plugins_/memoization/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/memoization/trunk/memoization_administrations.php

    r113299 r114180  
    2626
    2727        $maj = array();
    28         // Pas de create
     28
     29        $maj['create'] = array(
     30                array('memoization_init_cache_namespace'),
     31                array('memoization_init_cache_key'),
     32        );
    2933
    3034        $maj['20190109'] = array(
    3135                array('memoization_migrer_config_pages')
    3236        );
     37        $maj['20190228'] = array(
     38                array('memoization_init_cache_key')
     39        );
     40
    3341        include_spip('base/upgrade');
    3442        maj_plugin($nom_meta_base_version, $version_cible, $maj);
    3543}
     44
     45function memoization_init_cache_key() {
     46        include_spip("inc/securiser_action");
     47        $key = pack("H*", calculer_cle_action('memoization'));
     48        $key = base64_encode($key);
     49        ecrire_meta('cache_key', $key, 'non');
     50
     51        // il faut redefinir le namespace car on introduit une cle -> invalidation des caches existants
     52        memoization_init_cache_namespace();
     53}
     54
     55function memoization_init_cache_namespace() {
     56        include_spip('inc/acces');
     57        $namespace = dechex(crc32($_SERVER["DOCUMENT_ROOT"] . $_SERVER["SERVER_SIGNATURE"] . creer_uniqid()));
     58        ecrire_meta('cache_namespace', $namespace, 'non');
     59}
     60
    3661
    3762function memoization_migrer_config_pages() {
  • _plugins_/memoization/trunk/memoization_options.php

    r111975 r114180  
    122122}
    123123
    124 
    125 if (!defined('_CACHE_KEY') and !isset($GLOBALS['meta']['cache_key'])){
    126         include_spip("inc/securiser_action");
    127         $key = pack("H*", calculer_cle_action('memoization'));
    128         ecrire_meta('cache_key', $key, 'non');
    129         // il faut redefinir le namespace car on introduit une cle -> invalidation des caches existants
    130         if (isset($GLOBALS['meta']['cache_namespace'])) {
    131                 unset($GLOBALS['meta']['cache_namespace']);
    132         }
    133 }
    134 if (!isset($GLOBALS['meta']['cache_namespace'])){
    135         include_spip('inc/acces');
    136         ecrire_meta('cache_namespace', dechex(crc32($_SERVER["DOCUMENT_ROOT"] . $_SERVER["SERVER_SIGNATURE"] . creer_uniqid())), 'non');
    137 }
    138 
    139 if (!defined('_CACHE_NAMESPACE'))
    140         define('_CACHE_NAMESPACE', $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].':'.$GLOBALS['meta']['cache_namespace'].':');
    141 if (!defined('_CACHE_KEY'))
    142         define('_CACHE_KEY', $GLOBALS['meta']['cache_key']);
     124if (isset($GLOBALS['meta']['cache_namespace'])) {
     125        if (!defined('_CACHE_NAMESPACE')) {
     126                define('_CACHE_NAMESPACE', $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].':'.$GLOBALS['meta']['cache_namespace'].':');
     127        }
     128        if (isset($GLOBALS['meta']['cache_key'])) {
     129                define('_CACHE_KEY', $GLOBALS['meta']['cache_key']);
     130        }
     131}
    143132
    144133global $Memoization;
  • _plugins_/memoization/trunk/paquet.xml

    r113365 r114180  
    22        prefix="Memoization"
    33        categorie="performance"
    4         version="2.1.5"
    5         schema="20190109"
     4        version="2.1.6"
     5        schema="20190228"
    66        etat="stable"
    77        compatibilite="[3.0.0;3.2.*]"
Note: See TracChangeset for help on using the changeset viewer.