Verzeichnisstruktur phpBB-3.1.0
- Veröffentlicht
- 27.10.2014
So funktioniert es
|
Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück |
Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis. |
|
(Beispiel Datei-Icons)
|
Auf das Icon klicken um den Quellcode anzuzeigen |
cron_list.php
001 <?php
002 /**
003 *
004 * This file is part of the phpBB Forum Software package.
005 *
006 * @copyright (c) phpBB Limited <https://www.phpbb.com>
007 * @license GNU General Public License, version 2 (GPL-2.0)
008 *
009 * For full copyright and license information, please see
010 * the docs/CREDITS.txt file.
011 *
012 */
013 namespace phpbb\console\command\cron;
014
015 use Symfony\Component\Console\Input\InputInterface;
016 use Symfony\Component\Console\Output\OutputInterface;
017
018 class cron_list extends \phpbb\console\command\command
019 {
020 /** @var \phpbb\cron\manager */
021 protected $cron_manager;
022
023 /**
024 * Constructor
025 *
026 * @param \phpbb\user $user User instance
027 * @param \phpbb\cron\manager $cron_manager Cron manager
028 */
029 public function __construct(\phpbb\user $user, \phpbb\cron\manager $cron_manager)
030 {
031 $this->cron_manager = $cron_manager;
032 parent::__construct($user);
033 }
034
035 /**
036 * {@inheritdoc}
037 */
038 protected function configure()
039 {
040 $this
041 ->setName('cron:list')
042 ->setDescription($this->user->lang('CLI_DESCRIPTION_CRON_LIST'))
043 ;
044 }
045
046 /**
047 * Executes the command cron:list.
048 *
049 * Prints a list of ready and unready cron jobs.
050 *
051 * @param InputInterface $input An InputInterface instance
052 * @param OutputInterface $output An OutputInterface instance
053 *
054 * @return null
055 */
056 protected function execute(InputInterface $input, OutputInterface $output)
057 {
058 $tasks = $this->cron_manager->get_tasks();
059
060 if (empty($tasks))
061 {
062 $output->writeln($this->user->lang('CRON_NO_TASKS'));
063 return;
064 }
065
066 $ready_tasks = array();
067 $not_ready_tasks = array();
068 foreach ($tasks as $task)
069 {
070 if ($task->is_ready())
071 {
072 $ready_tasks[] = $task;
073 }
074 else
075 {
076 $not_ready_tasks[] = $task;
077 }
078 }
079
080 if (!empty($ready_tasks))
081 {
082 $output->writeln('<info>' . $this->user->lang('TASKS_READY') . '</info>');
083 $this->print_tasks_names($ready_tasks, $output);
084 }
085
086 if (!empty($ready_tasks) && !empty($not_ready_tasks))
087 {
088 $output->writeln('');
089 }
090
091 if (!empty($not_ready_tasks))
092 {
093 $output->writeln('<info>' . $this->user->lang('TASKS_NOT_READY') . '</info>');
094 $this->print_tasks_names($not_ready_tasks, $output);
095 }
096 }
097
098 /**
099 * Print a list of cron jobs
100 *
101 * @param array $tasks A list of task to display
102 * @param OutputInterface $output An OutputInterface instance
103 */
104 protected function print_tasks_names(array $tasks, OutputInterface $output)
105 {
106 foreach ($tasks as $task)
107 {
108 $output->writeln($task->get_name());
109 }
110 }
111 }
112