Completed
Branch feature/permissions (20ff90)
by Matt
01:18
created

permissions::update_data()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 16

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 16
rs 9.7333
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
/**
3
 *
4
 * Topic Image Preview. An extension for the phpBB Forum Software package.
5
 *
6
 * @copyright (c) 2020, Matt Friedman
7
 * @license GNU General Public License, version 2 (GPL-2.0)
8
 *
9
 */
10
11
namespace vse\topicimagepreview\migrations;
12
13
class permissions extends \phpbb\db\migration\migration
14
{
15
	/**
16
	 * @inheritdoc
17
	 */
18
	public function effectively_installed()
19
	{
20
		$sql = 'SELECT * FROM ' . $this->table_prefix . "acl_options
21
			WHERE auth_option = 'f_vse_tip'";
22
		$result = $this->db->sql_query_limit($sql, 1);
23
		$row = $this->db->sql_fetchrow($result);
24
		$this->db->sql_freeresult($result);
25
26
		return $row !== false;
27
	}
28
29
	/**
30
	 * @inheritdoc
31
	 */
32
	public static function depends_on()
33
	{
34
		return array('\vse\topicimagepreview\migrations\install_tip');
35
	}
36
37
	/**
38
	 * @inheritdoc
39
	 */
40
	public function update_data()
41
	{
42
		return array(
43
			// Add permission
44
			array('permission.add', array('f_vse_tip', false)),
45
46
			// Set permission roles
47
			array('permission.permission_set', array('ROLE_FORUM_FULL', 'f_vse_tip')),
48
			array('permission.permission_set', array('ROLE_FORUM_LIMITED', 'f_vse_tip')),
49
			array('permission.permission_set', array('ROLE_FORUM_LIMITED_POLLS', 'f_vse_tip')),
50
			array('permission.permission_set', array('ROLE_FORUM_NEW_MEMBER', 'f_vse_tip')),
51
			array('permission.permission_set', array('ROLE_FORUM_POLLS', 'f_vse_tip')),
52
			array('permission.permission_set', array('ROLE_FORUM_READONLY', 'f_vse_tip')),
53
			array('permission.permission_set', array('ROLE_FORUM_STANDARD', 'f_vse_tip')),
54
		);
55
	}
56
}
57