prune_orphaned_ideas   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 36
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 3
eloc 8
c 1
b 0
f 0
dl 0
loc 36
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
A run() 0 4 1
A __construct() 0 4 1
A should_run() 0 3 1
1
<?php
2
/**
3
 *
4
 * Ideas extension for the phpBB Forum Software package.
5
 *
6
 * @copyright (c) phpBB Limited <https://www.phpbb.com>
7
 * @license GNU General Public License, version 2 (GPL-2.0)
8
 *
9
 */
10
11
namespace phpbb\ideas\cron;
12
13
/**
14
 * Ideas cron task.
15
 */
16
class prune_orphaned_ideas extends \phpbb\cron\task\base
17
{
18
	/** @var \phpbb\config\config */
19
	protected $config;
20
21
	/** @var \phpbb\ideas\factory\ideas */
22
	protected $ideas;
23
24
	/**
25
	 * Constructor
26
	 *
27
	 * @param \phpbb\config\config       $config Config object
28
	 * @param \phpbb\ideas\factory\ideas $ideas  Ideas factory object
29
	 * @access public
30
	 */
31
	public function __construct(\phpbb\config\config $config, \phpbb\ideas\factory\ideas $ideas)
32
	{
33
		$this->config = $config;
34
		$this->ideas = $ideas;
35
	}
36
37
	/**
38
	 * {@inheritdoc}
39
	 */
40
	public function run()
41
	{
42
		$this->ideas->delete_orphans();
43
		$this->config->set('ideas_cron_last_run', time(), false);
44
	}
45
46
	/**
47
	 * {@inheritdoc}
48
	 */
49
	public function should_run()
50
	{
51
		return $this->config['ideas_cron_last_run'] < strtotime('1 week ago');
52
	}
53
}
54