Completed
Pull Request — master (#48)
by Jakub
08:27
created

m10_ad_owner::depends_on()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
eloc 2
nc 1
nop 0
1
<?php
2
/**
3
 *
4
 * Advertisement management. An extension for the phpBB Forum Software package.
5
 *
6
 * @copyright (c) 2017 phpBB Limited <https://www.phpbb.com>
7
 * @license GNU General Public License, version 2 (GPL-2.0)
8
 *
9
 */
10
11
namespace phpbb\ads\migrations\v10x;
12
13
class m10_ad_owner extends \phpbb\db\migration\migration
14
{
15
	/**
16
	 * {@inheritDoc}
17
	 */
18
	public function effectively_installed()
19
	{
20
		return $this->db_tools->sql_column_exists($this->table_prefix . 'ads', 'ad_owner');
21
	}
22
23
	/**
24
	 * {@inheritDoc}
25
	 */
26
	static public function depends_on()
27
	{
28
		return array('\phpbb\ads\migrations\v10x\m1_initial_schema');
29
	}
30
31
	/**
32
	 * Add the ad owner to ads table
33
	 *
34
	 * @return array Array of table schema
35
	 * @access public
36
	 */
37
	public function update_schema()
38
	{
39
		return array(
40
			'add_columns' => array(
41
				$this->table_prefix . 'ads' => array(
42
					'ad_owner' => array('UINT', 0),
43
				),
44
			),
45
		);
46
	}
47
48
	/**
49
	 * Drop the ad owner from ads table
50
	 *
51
	 * @return array Array of table schema
52
	 * @access public
53
	 */
54
	public function revert_schema()
55
	{
56
		return array(
57
			'drop_columns' => array(
58
				$this->table_prefix . 'ads' => array(
59
					'ad_owner',
60
				),
61
			),
62
		);
63
	}
64
65
	/**
66
	 * Add the UCP module and new permission
67
	 *
68
	 * @return array Array of data update instructions
69
	 */
70
	public function update_data()
71
	{
72
		return array(
73
			array('module.add', array(
74
				'ucp',
75
				'',
76
				'UCP_PHPBB_ADS_TITLE'
77
			)),
78
			array('module.add', array(
79
				'ucp',
80
				'UCP_PHPBB_ADS_TITLE',
81
				array(
82
					'module_basename' => '\phpbb\ads\ucp\main_module',
83
					'modes'           => array('stats'),
84
				),
85
			)),
86
87
			array('permission.add', array('u_phpbb_ads_owner')),
88
		);
89
	}
90
}
91