aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb
diff options
context:
space:
mode:
authorTristan Darricau <github@nicofuma.fr>2014-05-06 16:50:18 +0200
committerTristan Darricau <github@nicofuma.fr>2014-05-06 16:50:18 +0200
commit06ecb62abd5b1bee7ec25094e56968e28d2a29bf (patch)
treee22eaf383725e24b45b5be9c12d7e67459e1a0b6 /phpBB/phpbb
parent571d6ae852fd6bc6d3ce57b00cb1faed84f45434 (diff)
downloadforums-06ecb62abd5b1bee7ec25094e56968e28d2a29bf.tar
forums-06ecb62abd5b1bee7ec25094e56968e28d2a29bf.tar.gz
forums-06ecb62abd5b1bee7ec25094e56968e28d2a29bf.tar.bz2
forums-06ecb62abd5b1bee7ec25094e56968e28d2a29bf.tar.xz
forums-06ecb62abd5b1bee7ec25094e56968e28d2a29bf.zip
[ticket/12507] Add console command to purge the cache
PHPBB3-12507
Diffstat (limited to 'phpBB/phpbb')
-rw-r--r--phpBB/phpbb/console/command/cache/purge.php62
1 files changed, 62 insertions, 0 deletions
diff --git a/phpBB/phpbb/console/command/cache/purge.php b/phpBB/phpbb/console/command/cache/purge.php
new file mode 100644
index 0000000000..017bdc5144
--- /dev/null
+++ b/phpBB/phpbb/console/command/cache/purge.php
@@ -0,0 +1,62 @@
+<?php
+/**
+*
+* @package phpBB3
+* @copyright (c) 2014 phpBB Group
+* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
+*
+*/
+namespace phpbb\console\command\cache;
+
+use Symfony\Component\Console\Input\InputInterface;
+use Symfony\Component\Console\Output\OutputInterface;
+
+class purge extends \phpbb\console\command\command
+{
+ /** @var \phpbb\cache\driver\driver_interface */
+ protected $cache;
+
+ /** @var \phpbb\db\driver\driver_interface */
+ protected $db;
+
+ /** @var \phpbb\auth\auth */
+ protected $auth;
+
+ /** @var \phpbb\log\log */
+ protected $log;
+
+ /** @var \phpbb\user */
+ protected $user;
+
+ function __construct(\phpbb\cache\driver\driver_interface $cache, \phpbb\db\driver\driver_interface $db, \phpbb\auth\auth $auth, \phpbb\log\log $log, \phpbb\user $user)
+ {
+ $this->cache = $cache;
+ $this->db = $db;
+ $this->auth = $auth;
+ $this->log = $log;
+ $this->user = $user;
+ $this->user->add_lang(array('acp/common'));
+ parent::__construct();
+ }
+
+ protected function configure()
+ {
+ $this
+ ->setName('cache:purge')
+ ->setDescription('Purge the cache.')
+ ;
+ }
+
+ protected function execute(InputInterface $input, OutputInterface $output)
+ {
+ $this->cache->purge();
+
+ // Clear permissions
+ $this->auth->acl_clear_prefetch();
+ phpbb_cache_moderators($this->db, $this->cache, $this->auth);
+
+ $this->log->add('admin', ANONYMOUS, '', 'LOG_PURGE_CACHE', time(), array());
+
+ $output->writeln($this->user->lang('PURGE_CACHE_SUCCESS'));
+ }
+}