Completed
Push — master ( 9866a1...02e5e5 )
by Daniel
08:18
created

m13_add_menu_permission   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 35
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Importance

Changes 1
Bugs 0 Features 1
Metric Value
wmc 3
c 1
b 0
f 1
lcom 0
cbo 0
dl 0
loc 35
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
A update_data() 0 10 1
A revert_data() 0 6 1
A update_menu_module_settings() 0 8 1
1
<?php
2
/**
3
 *
4
 * @package sitemaker
5
 * @copyright (c) 2013 Daniel A. (blitze)
6
 * @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
7
 *
8
 */
9
10
namespace blitze\sitemaker\migrations\v20x;
11
12
/**
13
 * Initial schema changes needed for Extension installation
14
 */
15
class m13_add_menu_permission extends \phpbb\db\migration\migration
16
{
17
	/**
18
	 * @inheritdoc
19
	 */
20
	public function update_data()
21
	{
22
		return array(
23
			array('permission.add', array('a_sm_manage_menus')),
24
			array('permission.permission_set', array('ROLE_ADMIN_FULL', 'a_sm_manage_blocks')),
25
			array('permission.permission_set', array('ROLE_ADMIN_FULL', 'a_sm_manage_menus')),
26
			array('permission.permission_set', array('ROLE_ADMIN_STANDARD', 'a_sm_manage_menus')),
27
			array('custom', array(array($this, 'update_menu_module_settings'))),
28
		);
29
	}
30
31
	/**
32
	 * @inheritdoc
33
	 */
34
	public function revert_data()
35
	{
36
		return array(
37
			array('permission.remove', array('a_sm_manage_menus')),
38
		);
39
	}
40
41
	public function update_menu_module_settings()
42
	{
43
		$data = array(
44
			'module_auth' => 'ext_blitze/sitemaker && acl_a_sm_manage_menus',
45
		);
46
		$sql = 'UPDATE ' . MODULES_TABLE . ' SET ' . $this->db->sql_build_array('UPDATE', $data) . " WHERE module_basename = '" . $this->db->sql_escape('\blitze\sitemaker\acp\menu_module') . "'";
47
		$this->db->sql_query($sql);
48
	}
49
}
50