[SPIP] ~maj 3.0.10 --> 3.0.14
[lhc/web/www.git] / www / ecrire / action / purger.php
1 <?php
2
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
5 * *
6 * Copyright (c) 2001-2014 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
8 * *
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 \***************************************************************************/
12
13 if (!defined('_ECRIRE_INC_VERSION')) return;
14
15 // http://doc.spip.org/@action_purger_dist
16 function action_purger_dist($arg=null)
17 {
18 if (is_null($arg)) {
19 $securiser_action = charger_fonction('securiser_action', 'inc');
20 $arg = $securiser_action();
21 }
22
23 include_spip('inc/invalideur');
24
25 spip_log("purger $arg");
26
27 switch ($arg) {
28 case 'inhibe_cache':
29 // inhiber le cache pendant 24h
30 ecrire_meta('cache_inhib',$_SERVER['REQUEST_TIME']+24*3600);
31 break;
32 case 'reactive_cache':
33 effacer_meta('cache_inhib');
34 break;
35
36 case 'cache':
37 supprime_invalideurs();
38 @spip_unlink(_CACHE_RUBRIQUES);
39 @spip_unlink(_CACHE_PIPELINES);
40 @spip_unlink(_CACHE_PLUGINS_PATH);
41 @spip_unlink(_CACHE_PLUGINS_OPT);
42 @spip_unlink(_CACHE_PLUGINS_FCT);
43 @spip_unlink(_CACHE_CHEMIN);
44 @spip_unlink(_DIR_TMP."plugin_xml_cache.gz");
45 purger_repertoire(_DIR_CACHE,array('subdir'=>true));
46 purger_repertoire(_DIR_AIDE);
47 purger_repertoire(_DIR_VAR.'cache-css');
48 purger_repertoire(_DIR_VAR.'cache-js');
49 break;
50
51 case 'squelettes':
52 purger_repertoire(_DIR_SKELS);
53 break;
54
55 case 'vignettes':
56 purger_repertoire(_DIR_VAR,array('subdir'=>true));
57 supprime_invalideurs();
58 purger_repertoire(_DIR_CACHE);
59 break;
60 }
61
62 // le faire savoir aux plugins
63 pipeline('trig_purger',$arg);
64 }
65
66 ?>