3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
6 * Copyright (c) 2001-2016 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
13 if (!defined('_ECRIRE_INC_VERSION')) return;
15 // http://doc.spip.org/@action_purger_dist
16 function action_purger_dist($arg=null)
19 $securiser_action = charger_fonction('securiser_action', 'inc');
20 $arg = $securiser_action();
23 include_spip('inc/invalideur');
25 spip_log("purger $arg");
29 // inhiber le cache pendant 24h
30 ecrire_meta('cache_inhib',$_SERVER['REQUEST_TIME']+
24*3600);
32 case 'reactive_cache':
33 effacer_meta('cache_inhib');
37 supprime_invalideurs();
38 @spip_unlink
(_CACHE_RUBRIQUES
);
39 @spip_unlink
(_CACHE_CHEMIN
);
40 @spip_unlink
(_DIR_TMP
."plugin_xml_cache.gz");
41 // on ne supprime que _CACHE_PLUGINS_OPT qui declenche la reconstruction des 3
42 // _CACHE_PIPELINES _CACHE_PLUGINS_PATH et _CACHE_PLUGINS_FCT
43 // pour eviter des problemes de concurence
44 // cf http://core.spip.org/issues/2989
45 //@spip_unlink(_CACHE_PIPELINES);
46 //@spip_unlink(_CACHE_PLUGINS_PATH);
47 //@spip_unlink(_CACHE_PLUGINS_FCT);
48 @spip_unlink
(_CACHE_PLUGINS_OPT
);
49 purger_repertoire(_DIR_CACHE
,array('subdir'=>true));
50 purger_repertoire(_DIR_AIDE
);
51 purger_repertoire(_DIR_VAR
.'cache-css');
52 purger_repertoire(_DIR_VAR
.'cache-js');
56 purger_repertoire(_DIR_SKELS
);
60 purger_repertoire(_DIR_VAR
,array('subdir'=>true));
61 supprime_invalideurs();
62 purger_repertoire(_DIR_CACHE
);
66 // le faire savoir aux plugins
67 pipeline('trig_purger',$arg);