Completed
Push — master ( a62221...0df488 )
by Matt
11s
created

m4_permissions::depends_on()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
c 0
b 0
f 0
dl 0
loc 7
rs 9.4285
cc 1
eloc 4
nc 1
nop 0
1
<?php
2
/**
3
 *
4
 * phpBB Media Embed PlugIn extension for the phpBB Forum Software package.
5
 *
6
 * @copyright (c) 2018 phpBB Limited <https://www.phpbb.com>
7
 * @license GNU General Public License, version 2 (GPL-2.0)
8
 *
9
 */
10
11
namespace phpbb\mediaembed\migrations;
12
13
/**
14
 * Migration 4: Add permissions
15
 */
16
class m4_permissions extends \phpbb\db\migration\migration
17
{
18
	/**
19
	 * {@inheritdoc
20
	 */
21
	public function effectively_installed()
22
	{
23
		$sql = 'SELECT * FROM ' . $this->table_prefix . "acl_options
24
			WHERE auth_option = 'f_mediaembed'";
25
		$result = $this->db->sql_query_limit($sql, 1);
26
		$row = $this->db->sql_fetchrow($result);
27
		$this->db->sql_freeresult($result);
28
29
		return $row !== false;
30
	}
31
32
	/**
33
	 * {@inheritdoc
34
	 */
35
	public static function depends_on()
36
	{
37
		return [
38
			'\phpbb\mediaembed\migrations\m1_install_data',
39
			'\phpbb\mediaembed\migrations\m3_plain_urls_config',
40
		];
41
	}
42
43
	/**
44
	 * {@inheritdoc
45
	 */
46
	public function update_data()
47
	{
48
		return [
49
			// Add forum permission
50
			['permission.add', ['f_mediaembed', false]],
51
			['permission.permission_set', ['ROLE_FORUM_FULL', 'f_mediaembed']],
52
			['permission.permission_set', ['ROLE_FORUM_POLLS', 'f_mediaembed']],
53
			['permission.permission_set', ['ROLE_FORUM_ONQUEUE', 'f_mediaembed']],
54
			['permission.permission_set', ['ROLE_FORUM_STANDARD', 'f_mediaembed']],
55
56
			// Add PM permission
57
			['permission.add', ['u_pm_mediaembed']],
58
			['permission.permission_set', ['ROLE_USER_FULL', 'u_pm_mediaembed']],
59
			['permission.permission_set', ['ROLE_USER_STANDARD', 'u_pm_mediaembed']],
60
			['permission.permission_set', ['REGISTERED', 'u_pm_mediaembed', 'group']],
61
			['permission.permission_set', ['REGISTERED_COPPA', 'u_pm_mediaembed', 'group']],
62
		];
63
	}
64
}
65