Completed
Push — master ( 4e146b...a6625c )
by Henry
08:17
created

includes/Admin/Model/Group.php (1 issue)

Labels
Severity

Upgrade to new PHP Analysis Engine

These results are based on our legacy PHP analysis, consider migrating to our new PHP analysis engine instead. Learn more

1
<?php
2
namespace Redaxscript\Admin\Model;
3
4
use Redaxscript\Model as BaseModel;
5
6
/**
7
 * parent class to provide the admin group model
8
 *
9
 * @since 4.0.0
10
 *
11
 * @package Redaxscript
12
 * @category Model
13
 * @author Henry Ruhs
14
 */
15
16
class Group extends BaseModel\Group
17
{
18
	/**
19
	 * is unique by id and alias
20
	 *
21
	 * @since 4.0.0
22
	 *
23
	 * @param int $groupId identifier of the group
24
	 * @param string $groupAlias alias of the group
25
	 *
26
	 * @return bool
27
	 */
28
29
	public function isUniqueByIdAndAlias(int $groupId = null, string $groupAlias = null) : bool
30
	{
31
		return !$this->getByAlias($groupAlias)?->id || $this->getByAlias($groupAlias)?->id === $this->getById($groupId)?->id;
0 ignored issues
show
This code did not parse for me. Apparently, there is an error somewhere around this line:

Syntax error, unexpected T_OBJECT_OPERATOR
Loading history...
32
	}
33
34
	/**
35
	 * create the group by array
36
	 *
37
	 * @since 4.0.0
38
	 *
39
	 * @param array $createArray array of the create
40
	 *
41
	 * @return bool
42
	 */
43
44
	public function createByArray(array $createArray = []) : bool
45
	{
46
		return $this
47
			->query()
48
			->create()
49
			->set($createArray)
50
			->save();
51
	}
52
53
	/**
54
	 * update the group by id and array
55
	 *
56
	 * @since 4.0.0
57
	 *
58
	 * @param int $groupId identifier of the group
59
	 * @param array $updateArray array of the update
60
	 *
61
	 * @return bool
62
	 */
63
64
	public function updateByIdAndArray(int $groupId = null, array $updateArray = []) : bool
65
	{
66
		return $this
67
			->query()
68
			->whereIdIs($groupId)
69
			->findOne()
70
			->set($updateArray)
71
			->save();
72
	}
73
74
	/**
75
	 * enable the group by id
76
	 *
77
	 * @since 4.0.0
78
	 *
79
	 * @param int $groupId identifier of the group
80
	 *
81
	 * @return bool
82
	 */
83
84
	public function enableById(int $groupId = null) : bool
85
	{
86
		return $this
87
			->query()
88
			->whereIdIs($groupId)
89
			->findOne()
90
			->set('status', 1)
91
			->save();
92
	}
93
94
	/**
95
	 * disable the group by id
96
	 *
97
	 * @since 4.0.0
98
	 *
99
	 * @param int $groupId identifier of the group
100
	 *
101
	 * @return bool
102
	 */
103
104
	public function disableById(int $groupId = null) : bool
105
	{
106
		return $this
107
			->query()
108
			->whereIdIs($groupId)
109
			->findOne()
110
			->set('status', 0)
111
			->save();
112
	}
113
114
	/**
115
	 * delete the group by id
116
	 *
117
	 * @since 4.0.0
118
	 *
119
	 * @param int $groupId identifier of the group
120
	 *
121
	 * @return bool
122
	 */
123
124
	public function deleteById(int $groupId = null) : bool
125
	{
126
		return $this
127
			->query()
128
			->whereIdIs($groupId)
129
			->deleteMany();
130
	}
131
}
132