- Fixed #16160: Call to undefined function ezi18n()
[tinyz:tinyz.git] / kernel / setup / cache.php
1 <?php
2 //
3 // Created on: <15-Apr-2003 11:25:31 bf>
4 //
5 // ## BEGIN COPYRIGHT, LICENSE AND WARRANTY NOTICE ##
6 // SOFTWARE NAME: eZ Publish
7 // SOFTWARE RELEASE: 4.1.x
8 // COPYRIGHT NOTICE: Copyright (C) 1999-2010 eZ Systems AS
9 // SOFTWARE LICENSE: GNU General Public License v2.0
10 // NOTICE: >
11 //   This program is free software; you can redistribute it and/or
12 //   modify it under the terms of version 2.0  of the GNU General
13 //   Public License as published by the Free Software Foundation.
14 //
15 //   This program is distributed in the hope that it will be useful,
16 //   but WITHOUT ANY WARRANTY; without even the implied warranty of
17 //   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 //   GNU General Public License for more details.
19 //
20 //   You should have received a copy of version 2.0 of the GNU General
21 //   Public License along with this program; if not, write to the Free
22 //   Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
23 //   MA 02110-1301, USA.
24 //
25 //
26 // ## END COPYRIGHT, LICENSE AND WARRANTY NOTICE ##
27 //
28
29 $http = eZHTTPTool::instance();
30 $module = $Params['Module'];
31
32 require_once( "kernel/common/template.php" );
33 $ini = eZINI::instance( );
34 $tpl = templateInit();
35
36 $cacheList = eZCache::fetchList();
37
38 $cacheCleared = array( 'all' => false,
39                        'content' => false,
40                        'ini' => false,
41                        'template' => false,
42                        'list' => false,
43                        'static' => false );
44
45 $contentCacheEnabled = $ini->variable( 'ContentSettings', 'ViewCaching' ) == 'enabled';
46 $iniCacheEnabled = true;
47 $templateCacheEnabled = $ini->variable( 'TemplateSettings', 'TemplateCache' ) == 'enabled';
48
49 $cacheEnabledList = array();
50 foreach ( $cacheList as $cacheItem )
51 {
52     $cacheEnabledList[$cacheItem['id']] = $cacheItem['enabled'];
53 }
54
55 $cacheEnabled = array( 'all' => true,
56                        'content' => $contentCacheEnabled,
57                        'ini' => $iniCacheEnabled,
58                        'template' => $templateCacheEnabled,
59                        'list' => $cacheEnabledList );
60
61 if ( $module->isCurrentAction( 'ClearAllCache' ) )
62 {
63     eZCache::clearAll();
64     $cacheCleared['all'] = true;
65 }
66
67 if ( $module->isCurrentAction( 'ClearContentCache' ) )
68 {
69     eZCache::clearByTag( 'content' );
70     $cacheCleared['content'] = true;
71 }
72
73 if ( $module->isCurrentAction( 'ClearINICache' ) )
74 {
75     eZCache::clearByTag( 'ini' );
76     $cacheCleared['ini'] = true;
77 }
78
79 if ( $module->isCurrentAction( 'ClearTemplateCache' ) )
80 {
81     eZCache::clearByTag( 'template' );
82     $cacheCleared['template'] = true;
83 }
84
85 if ( $module->isCurrentAction( 'ClearCache' ) && $module->hasActionParameter( 'CacheList' ) && is_array( $module->actionParameter( 'CacheList' ) ) )
86 {
87     $cacheClearList = $module->actionParameter( 'CacheList' );
88     eZCache::clearByID( $cacheClearList );
89     $cacheItemList = array();
90     foreach ( $cacheClearList as $cacheClearItem )
91     {
92         foreach ( $cacheList as $cacheItem )
93         {
94             if ( $cacheItem['id'] == $cacheClearItem )
95             {
96                 $cacheItemList[] = $cacheItem;
97                 break;
98             }
99         }
100     }
101     $cacheCleared['list'] = $cacheItemList;
102 }
103
104 if ( $module->isCurrentAction( 'RegenerateStaticCache' ) )
105 {
106     $staticCache = new eZStaticCache();
107     $staticCache->generateCache( true, true );
108     eZStaticCache::executeActions();
109     $cacheCleared['static'] = true;
110 }
111
112 $tpl->setVariable( "cache_cleared", $cacheCleared );
113 $tpl->setVariable( "cache_enabled", $cacheEnabled );
114 $tpl->setVariable( 'cache_list', $cacheList );
115
116
117 $Result = array();
118 $Result['content'] = $tpl->fetch( "design:setup/cache.tpl" );
119 $Result['path'] = array( array( 'url' => false,
120                                 'text' => ezpI18n::translate( 'kernel/setup', 'Cache admin' ) ) );
121
122 ?>