Completed
Push — master ( fde08a...208e38 )
by Blizzz
17:49
created
lib/private/Group/MetaData.php 1 patch
Indentation   +168 added lines, -168 removed lines patch added patch discarded remove patch
@@ -30,172 +30,172 @@
 block discarded – undo
30 30
 use OCP\IUserSession;
31 31
 
32 32
 class MetaData {
33
-	const SORT_NONE = 0;
34
-	const SORT_USERCOUNT = 1; // May have performance issues on LDAP backends
35
-	const SORT_GROUPNAME = 2;
36
-
37
-	/** @var string */
38
-	protected $user;
39
-	/** @var bool */
40
-	protected $isAdmin;
41
-	/** @var array */
42
-	protected $metaData = array();
43
-	/** @var \OCP\IGroupManager */
44
-	protected $groupManager;
45
-	/** @var bool */
46
-	protected $sorting = false;
47
-	/** @var IUserSession */
48
-	protected $userSession;
49
-
50
-	/**
51
-	 * @param string $user the uid of the current user
52
-	 * @param bool $isAdmin whether the current users is an admin
53
-	 * @param \OCP\IGroupManager $groupManager
54
-	 * @param IUserSession $userSession
55
-	 */
56
-	public function __construct(
57
-			$user,
58
-			$isAdmin,
59
-			\OCP\IGroupManager $groupManager,
60
-			IUserSession $userSession
61
-			) {
62
-		$this->user = $user;
63
-		$this->isAdmin = (bool)$isAdmin;
64
-		$this->groupManager = $groupManager;
65
-		$this->userSession = $userSession;
66
-	}
67
-
68
-	/**
69
-	 * returns an array with meta data about all available groups
70
-	 * the array is structured as follows:
71
-	 * [0] array containing meta data about admin groups
72
-	 * [1] array containing meta data about unprivileged groups
73
-	 * @param string $groupSearch only effective when instance was created with
74
-	 * isAdmin being true
75
-	 * @param string $userSearch the pattern users are search for
76
-	 * @return array
77
-	 */
78
-	public function get($groupSearch = '', $userSearch = '') {
79
-		$key = $groupSearch . '::' . $userSearch;
80
-		if(isset($this->metaData[$key])) {
81
-			return $this->metaData[$key];
82
-		}
83
-
84
-		$adminGroups = array();
85
-		$groups = array();
86
-		$sortGroupsIndex = 0;
87
-		$sortGroupsKeys = array();
88
-		$sortAdminGroupsIndex = 0;
89
-		$sortAdminGroupsKeys = array();
90
-
91
-		foreach($this->getGroups($groupSearch) as $group) {
92
-			$groupMetaData = $this->generateGroupMetaData($group, $userSearch);
93
-			if (strtolower($group->getGID()) !== 'admin') {
94
-				$this->addEntry(
95
-					$groups,
96
-					$sortGroupsKeys,
97
-					$sortGroupsIndex,
98
-					$groupMetaData);
99
-			} else {
100
-				//admin group is hard coded to 'admin' for now. In future,
101
-				//backends may define admin groups too. Then the if statement
102
-				//has to be adjusted accordingly.
103
-				$this->addEntry(
104
-					$adminGroups,
105
-					$sortAdminGroupsKeys,
106
-					$sortAdminGroupsIndex,
107
-					$groupMetaData);
108
-			}
109
-		}
110
-
111
-		//whether sorting is necessary is will be checked in sort()
112
-		$this->sort($groups, $sortGroupsKeys);
113
-		$this->sort($adminGroups, $sortAdminGroupsKeys);
114
-
115
-		$this->metaData[$key] = array($adminGroups, $groups);
116
-		return $this->metaData[$key];
117
-	}
118
-
119
-	/**
120
-	 * sets the sort mode, see SORT_* constants for supported modes
121
-	 *
122
-	 * @param int $sortMode
123
-	 */
124
-	public function setSorting($sortMode) {
125
-		switch ($sortMode) {
126
-			case self::SORT_USERCOUNT:
127
-			case self::SORT_GROUPNAME:
128
-				$this->sorting = $sortMode;
129
-				break;
130
-
131
-			default:
132
-				$this->sorting = self::SORT_NONE;
133
-		}
134
-	}
135
-
136
-	/**
137
-	 * adds an group entry to the resulting array
138
-	 * @param array $entries the resulting array, by reference
139
-	 * @param array $sortKeys the sort key array, by reference
140
-	 * @param int $sortIndex the sort key index, by reference
141
-	 * @param array $data the group's meta data as returned by generateGroupMetaData()
142
-	 */
143
-	private function addEntry(&$entries, &$sortKeys, &$sortIndex, $data) {
144
-		$entries[] = $data;
145
-		if ($this->sorting === self::SORT_USERCOUNT) {
146
-			$sortKeys[$sortIndex] = $data['usercount'];
147
-			$sortIndex++;
148
-		} else if ($this->sorting === self::SORT_GROUPNAME) {
149
-			$sortKeys[$sortIndex] = $data['name'];
150
-			$sortIndex++;
151
-		}
152
-	}
153
-
154
-	/**
155
-	 * creates an array containing the group meta data
156
-	 * @param \OCP\IGroup $group
157
-	 * @param string $userSearch
158
-	 * @return array with the keys 'id', 'name' and 'usercount'
159
-	 */
160
-	private function generateGroupMetaData(\OCP\IGroup $group, $userSearch) {
161
-		return array(
162
-				'id' => $group->getGID(),
163
-				'name' => $group->getDisplayName(),
164
-				'usercount' => $this->sorting === self::SORT_USERCOUNT ? $group->count($userSearch) : 0,
165
-			);
166
-	}
167
-
168
-	/**
169
-	 * sorts the result array, if applicable
170
-	 * @param array $entries the result array, by reference
171
-	 * @param array $sortKeys the array containing the sort keys
172
-	 * @param return null
173
-	 */
174
-	private function sort(&$entries, $sortKeys) {
175
-		if ($this->sorting === self::SORT_USERCOUNT) {
176
-			array_multisort($sortKeys, SORT_DESC, $entries);
177
-		} else if ($this->sorting === self::SORT_GROUPNAME) {
178
-			array_multisort($sortKeys, SORT_ASC, $entries);
179
-		}
180
-	}
181
-
182
-	/**
183
-	 * returns the available groups
184
-	 * @param string $search a search string
185
-	 * @return \OCP\IGroup[]
186
-	 */
187
-	protected function getGroups($search = '') {
188
-		if($this->isAdmin) {
189
-			return $this->groupManager->search($search);
190
-		} else {
191
-			$userObject = $this->userSession->getUser();
192
-			if($userObject !== null) {
193
-				$groups = $this->groupManager->getSubAdmin()->getSubAdminsGroups($userObject);
194
-			} else {
195
-				$groups = [];
196
-			}
197
-
198
-			return $groups;
199
-		}
200
-	}
33
+    const SORT_NONE = 0;
34
+    const SORT_USERCOUNT = 1; // May have performance issues on LDAP backends
35
+    const SORT_GROUPNAME = 2;
36
+
37
+    /** @var string */
38
+    protected $user;
39
+    /** @var bool */
40
+    protected $isAdmin;
41
+    /** @var array */
42
+    protected $metaData = array();
43
+    /** @var \OCP\IGroupManager */
44
+    protected $groupManager;
45
+    /** @var bool */
46
+    protected $sorting = false;
47
+    /** @var IUserSession */
48
+    protected $userSession;
49
+
50
+    /**
51
+     * @param string $user the uid of the current user
52
+     * @param bool $isAdmin whether the current users is an admin
53
+     * @param \OCP\IGroupManager $groupManager
54
+     * @param IUserSession $userSession
55
+     */
56
+    public function __construct(
57
+            $user,
58
+            $isAdmin,
59
+            \OCP\IGroupManager $groupManager,
60
+            IUserSession $userSession
61
+            ) {
62
+        $this->user = $user;
63
+        $this->isAdmin = (bool)$isAdmin;
64
+        $this->groupManager = $groupManager;
65
+        $this->userSession = $userSession;
66
+    }
67
+
68
+    /**
69
+     * returns an array with meta data about all available groups
70
+     * the array is structured as follows:
71
+     * [0] array containing meta data about admin groups
72
+     * [1] array containing meta data about unprivileged groups
73
+     * @param string $groupSearch only effective when instance was created with
74
+     * isAdmin being true
75
+     * @param string $userSearch the pattern users are search for
76
+     * @return array
77
+     */
78
+    public function get($groupSearch = '', $userSearch = '') {
79
+        $key = $groupSearch . '::' . $userSearch;
80
+        if(isset($this->metaData[$key])) {
81
+            return $this->metaData[$key];
82
+        }
83
+
84
+        $adminGroups = array();
85
+        $groups = array();
86
+        $sortGroupsIndex = 0;
87
+        $sortGroupsKeys = array();
88
+        $sortAdminGroupsIndex = 0;
89
+        $sortAdminGroupsKeys = array();
90
+
91
+        foreach($this->getGroups($groupSearch) as $group) {
92
+            $groupMetaData = $this->generateGroupMetaData($group, $userSearch);
93
+            if (strtolower($group->getGID()) !== 'admin') {
94
+                $this->addEntry(
95
+                    $groups,
96
+                    $sortGroupsKeys,
97
+                    $sortGroupsIndex,
98
+                    $groupMetaData);
99
+            } else {
100
+                //admin group is hard coded to 'admin' for now. In future,
101
+                //backends may define admin groups too. Then the if statement
102
+                //has to be adjusted accordingly.
103
+                $this->addEntry(
104
+                    $adminGroups,
105
+                    $sortAdminGroupsKeys,
106
+                    $sortAdminGroupsIndex,
107
+                    $groupMetaData);
108
+            }
109
+        }
110
+
111
+        //whether sorting is necessary is will be checked in sort()
112
+        $this->sort($groups, $sortGroupsKeys);
113
+        $this->sort($adminGroups, $sortAdminGroupsKeys);
114
+
115
+        $this->metaData[$key] = array($adminGroups, $groups);
116
+        return $this->metaData[$key];
117
+    }
118
+
119
+    /**
120
+     * sets the sort mode, see SORT_* constants for supported modes
121
+     *
122
+     * @param int $sortMode
123
+     */
124
+    public function setSorting($sortMode) {
125
+        switch ($sortMode) {
126
+            case self::SORT_USERCOUNT:
127
+            case self::SORT_GROUPNAME:
128
+                $this->sorting = $sortMode;
129
+                break;
130
+
131
+            default:
132
+                $this->sorting = self::SORT_NONE;
133
+        }
134
+    }
135
+
136
+    /**
137
+     * adds an group entry to the resulting array
138
+     * @param array $entries the resulting array, by reference
139
+     * @param array $sortKeys the sort key array, by reference
140
+     * @param int $sortIndex the sort key index, by reference
141
+     * @param array $data the group's meta data as returned by generateGroupMetaData()
142
+     */
143
+    private function addEntry(&$entries, &$sortKeys, &$sortIndex, $data) {
144
+        $entries[] = $data;
145
+        if ($this->sorting === self::SORT_USERCOUNT) {
146
+            $sortKeys[$sortIndex] = $data['usercount'];
147
+            $sortIndex++;
148
+        } else if ($this->sorting === self::SORT_GROUPNAME) {
149
+            $sortKeys[$sortIndex] = $data['name'];
150
+            $sortIndex++;
151
+        }
152
+    }
153
+
154
+    /**
155
+     * creates an array containing the group meta data
156
+     * @param \OCP\IGroup $group
157
+     * @param string $userSearch
158
+     * @return array with the keys 'id', 'name' and 'usercount'
159
+     */
160
+    private function generateGroupMetaData(\OCP\IGroup $group, $userSearch) {
161
+        return array(
162
+                'id' => $group->getGID(),
163
+                'name' => $group->getDisplayName(),
164
+                'usercount' => $this->sorting === self::SORT_USERCOUNT ? $group->count($userSearch) : 0,
165
+            );
166
+    }
167
+
168
+    /**
169
+     * sorts the result array, if applicable
170
+     * @param array $entries the result array, by reference
171
+     * @param array $sortKeys the array containing the sort keys
172
+     * @param return null
173
+     */
174
+    private function sort(&$entries, $sortKeys) {
175
+        if ($this->sorting === self::SORT_USERCOUNT) {
176
+            array_multisort($sortKeys, SORT_DESC, $entries);
177
+        } else if ($this->sorting === self::SORT_GROUPNAME) {
178
+            array_multisort($sortKeys, SORT_ASC, $entries);
179
+        }
180
+    }
181
+
182
+    /**
183
+     * returns the available groups
184
+     * @param string $search a search string
185
+     * @return \OCP\IGroup[]
186
+     */
187
+    protected function getGroups($search = '') {
188
+        if($this->isAdmin) {
189
+            return $this->groupManager->search($search);
190
+        } else {
191
+            $userObject = $this->userSession->getUser();
192
+            if($userObject !== null) {
193
+                $groups = $this->groupManager->getSubAdmin()->getSubAdminsGroups($userObject);
194
+            } else {
195
+                $groups = [];
196
+            }
197
+
198
+            return $groups;
199
+        }
200
+    }
201 201
 }
Please login to merge, or discard this patch.
settings/Controller/GroupsController.php 2 patches
Indentation   +108 added lines, -108 removed lines patch added patch discarded remove patch
@@ -38,120 +38,120 @@
 block discarded – undo
38 38
  * @package OC\Settings\Controller
39 39
  */
40 40
 class GroupsController extends Controller {
41
-	/** @var IGroupManager */
42
-	private $groupManager;
43
-	/** @var IL10N */
44
-	private $l10n;
45
-	/** @var IUserSession */
46
-	private $userSession;
47
-	/** @var bool */
48
-	private $isAdmin;
41
+    /** @var IGroupManager */
42
+    private $groupManager;
43
+    /** @var IL10N */
44
+    private $l10n;
45
+    /** @var IUserSession */
46
+    private $userSession;
47
+    /** @var bool */
48
+    private $isAdmin;
49 49
 
50
-	/**
51
-	 * @param string $appName
52
-	 * @param IRequest $request
53
-	 * @param IGroupManager $groupManager
54
-	 * @param IUserSession $userSession
55
-	 * @param bool $isAdmin
56
-	 * @param IL10N $l10n
57
-	 */
58
-	public function __construct($appName,
59
-								IRequest $request,
60
-								IGroupManager $groupManager,
61
-								IUserSession $userSession,
62
-								$isAdmin,
63
-								IL10N $l10n) {
64
-		parent::__construct($appName, $request);
65
-		$this->groupManager = $groupManager;
66
-		$this->userSession = $userSession;
67
-		$this->isAdmin = $isAdmin;
68
-		$this->l10n = $l10n;
69
-	}
50
+    /**
51
+     * @param string $appName
52
+     * @param IRequest $request
53
+     * @param IGroupManager $groupManager
54
+     * @param IUserSession $userSession
55
+     * @param bool $isAdmin
56
+     * @param IL10N $l10n
57
+     */
58
+    public function __construct($appName,
59
+                                IRequest $request,
60
+                                IGroupManager $groupManager,
61
+                                IUserSession $userSession,
62
+                                $isAdmin,
63
+                                IL10N $l10n) {
64
+        parent::__construct($appName, $request);
65
+        $this->groupManager = $groupManager;
66
+        $this->userSession = $userSession;
67
+        $this->isAdmin = $isAdmin;
68
+        $this->l10n = $l10n;
69
+    }
70 70
 
71
-	/**
72
-	 * @NoAdminRequired
73
-	 *
74
-	 * @param string $pattern
75
-	 * @param bool $filterGroups
76
-	 * @param int $sortGroups
77
-	 * @return DataResponse
78
-	 */
79
-	public function index($pattern = '', $filterGroups = false, $sortGroups = MetaData::SORT_USERCOUNT) {
80
-		$groupPattern = $filterGroups ? $pattern : '';
71
+    /**
72
+     * @NoAdminRequired
73
+     *
74
+     * @param string $pattern
75
+     * @param bool $filterGroups
76
+     * @param int $sortGroups
77
+     * @return DataResponse
78
+     */
79
+    public function index($pattern = '', $filterGroups = false, $sortGroups = MetaData::SORT_USERCOUNT) {
80
+        $groupPattern = $filterGroups ? $pattern : '';
81 81
 
82
-		$groupsInfo = new MetaData(
83
-			$this->userSession->getUser()->getUID(),
84
-			$this->isAdmin,
85
-			$this->groupManager,
86
-			$this->userSession
87
-		);
88
-		$groupsInfo->setSorting($sortGroups);
89
-		list($adminGroups, $groups) = $groupsInfo->get($groupPattern, $pattern);
82
+        $groupsInfo = new MetaData(
83
+            $this->userSession->getUser()->getUID(),
84
+            $this->isAdmin,
85
+            $this->groupManager,
86
+            $this->userSession
87
+        );
88
+        $groupsInfo->setSorting($sortGroups);
89
+        list($adminGroups, $groups) = $groupsInfo->get($groupPattern, $pattern);
90 90
 
91
-		return new DataResponse(
92
-			array(
93
-				'data' => array('adminGroups' => $adminGroups, 'groups' => $groups)
94
-			)
95
-		);
96
-	}
91
+        return new DataResponse(
92
+            array(
93
+                'data' => array('adminGroups' => $adminGroups, 'groups' => $groups)
94
+            )
95
+        );
96
+    }
97 97
 
98
-	/**
99
-	 * @PasswordConfirmationRequired
100
-	 * @param string $id
101
-	 * @return DataResponse
102
-	 */
103
-	public function create($id) {
104
-		if($this->groupManager->groupExists($id)) {
105
-			return new DataResponse(
106
-				array(
107
-					'message' => (string)$this->l10n->t('Group already exists.')
108
-				),
109
-				Http::STATUS_CONFLICT
110
-			);
111
-		}
112
-		$group = $this->groupManager->createGroup($id);
113
-		if($group instanceof IGroup) {
114
-			return new DataResponse(['groupname' => $group->getDisplayName()], Http::STATUS_CREATED);
115
-		}
98
+    /**
99
+     * @PasswordConfirmationRequired
100
+     * @param string $id
101
+     * @return DataResponse
102
+     */
103
+    public function create($id) {
104
+        if($this->groupManager->groupExists($id)) {
105
+            return new DataResponse(
106
+                array(
107
+                    'message' => (string)$this->l10n->t('Group already exists.')
108
+                ),
109
+                Http::STATUS_CONFLICT
110
+            );
111
+        }
112
+        $group = $this->groupManager->createGroup($id);
113
+        if($group instanceof IGroup) {
114
+            return new DataResponse(['groupname' => $group->getDisplayName()], Http::STATUS_CREATED);
115
+        }
116 116
 
117
-		return new DataResponse(
118
-			array(
119
-				'status' => 'error',
120
-				'data' => array(
121
-					'message' => (string)$this->l10n->t('Unable to add group.')
122
-				)
123
-			),
124
-			Http::STATUS_FORBIDDEN
125
-		);
126
-	}
117
+        return new DataResponse(
118
+            array(
119
+                'status' => 'error',
120
+                'data' => array(
121
+                    'message' => (string)$this->l10n->t('Unable to add group.')
122
+                )
123
+            ),
124
+            Http::STATUS_FORBIDDEN
125
+        );
126
+    }
127 127
 
128
-	/**
129
-	 * @PasswordConfirmationRequired
130
-	 * @param string $id
131
-	 * @return DataResponse
132
-	 */
133
-	public function destroy($id) {
134
-		$group = $this->groupManager->get($id);
135
-		if ($group) {
136
-			if ($group->delete()) {
137
-				return new DataResponse(
138
-					array(
139
-						'status' => 'success',
140
-						'data' => ['groupname' => $group->getDisplayName()]
141
-					),
142
-					Http::STATUS_NO_CONTENT
143
-				);
144
-			}
145
-		}
146
-		return new DataResponse(
147
-			array(
148
-				'status' => 'error',
149
-				'data' => array(
150
-					'message' => (string)$this->l10n->t('Unable to delete group.')
151
-				),
152
-			),
153
-			Http::STATUS_FORBIDDEN
154
-		);
155
-	}
128
+    /**
129
+     * @PasswordConfirmationRequired
130
+     * @param string $id
131
+     * @return DataResponse
132
+     */
133
+    public function destroy($id) {
134
+        $group = $this->groupManager->get($id);
135
+        if ($group) {
136
+            if ($group->delete()) {
137
+                return new DataResponse(
138
+                    array(
139
+                        'status' => 'success',
140
+                        'data' => ['groupname' => $group->getDisplayName()]
141
+                    ),
142
+                    Http::STATUS_NO_CONTENT
143
+                );
144
+            }
145
+        }
146
+        return new DataResponse(
147
+            array(
148
+                'status' => 'error',
149
+                'data' => array(
150
+                    'message' => (string)$this->l10n->t('Unable to delete group.')
151
+                ),
152
+            ),
153
+            Http::STATUS_FORBIDDEN
154
+        );
155
+    }
156 156
 
157 157
 }
Please login to merge, or discard this patch.
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -101,16 +101,16 @@  discard block
 block discarded – undo
101 101
 	 * @return DataResponse
102 102
 	 */
103 103
 	public function create($id) {
104
-		if($this->groupManager->groupExists($id)) {
104
+		if ($this->groupManager->groupExists($id)) {
105 105
 			return new DataResponse(
106 106
 				array(
107
-					'message' => (string)$this->l10n->t('Group already exists.')
107
+					'message' => (string) $this->l10n->t('Group already exists.')
108 108
 				),
109 109
 				Http::STATUS_CONFLICT
110 110
 			);
111 111
 		}
112 112
 		$group = $this->groupManager->createGroup($id);
113
-		if($group instanceof IGroup) {
113
+		if ($group instanceof IGroup) {
114 114
 			return new DataResponse(['groupname' => $group->getDisplayName()], Http::STATUS_CREATED);
115 115
 		}
116 116
 
@@ -118,7 +118,7 @@  discard block
 block discarded – undo
118 118
 			array(
119 119
 				'status' => 'error',
120 120
 				'data' => array(
121
-					'message' => (string)$this->l10n->t('Unable to add group.')
121
+					'message' => (string) $this->l10n->t('Unable to add group.')
122 122
 				)
123 123
 			),
124 124
 			Http::STATUS_FORBIDDEN
@@ -147,7 +147,7 @@  discard block
 block discarded – undo
147 147
 			array(
148 148
 				'status' => 'error',
149 149
 				'data' => array(
150
-					'message' => (string)$this->l10n->t('Unable to delete group.')
150
+					'message' => (string) $this->l10n->t('Unable to delete group.')
151 151
 				),
152 152
 			),
153 153
 			Http::STATUS_FORBIDDEN
Please login to merge, or discard this patch.
settings/templates/users/part.grouplist.php 1 patch
Spacing   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -26,12 +26,12 @@  discard block
 block discarded – undo
26 26
 	</li>
27 27
 
28 28
 	<!-- The Admin Group -->
29
-	<?php foreach($_["adminGroup"] as $adminGroup): ?>
30
-		<li data-gid="admin" data-usercount="<?php if($adminGroup['usercount'] > 0) { p($adminGroup['usercount']); } ?>" class="isgroup">
29
+	<?php foreach ($_["adminGroup"] as $adminGroup): ?>
30
+		<li data-gid="admin" data-usercount="<?php if ($adminGroup['usercount'] > 0) { p($adminGroup['usercount']); } ?>" class="isgroup">
31 31
 			<a href="#"><span class="groupname"><?php p($l->t('Admins')); ?></span></a>
32 32
 			<div class="app-navigation-entry-utils">
33 33
 				<ul>
34
-					<li class="app-navigation-entry-utils-counter"><?php if($adminGroup['usercount'] > 0) { p($adminGroup['usercount']); } ?></li>
34
+					<li class="app-navigation-entry-utils-counter"><?php if ($adminGroup['usercount'] > 0) { p($adminGroup['usercount']); } ?></li>
35 35
 				</ul>
36 36
 			</div>
37 37
 		</li>
@@ -39,25 +39,25 @@  discard block
 block discarded – undo
39 39
 
40 40
 	<!-- Disabled Users -->
41 41
 	<?php $disabledUsersGroup = $_["disabledUsersGroup"] ?>
42
-	<li data-gid="_disabledUsers" data-usercount="<?php if($disabledUsersGroup['usercount'] > 0) { p($disabledUsersGroup['usercount']); } ?>" class="isgroup">
42
+	<li data-gid="_disabledUsers" data-usercount="<?php if ($disabledUsersGroup['usercount'] > 0) { p($disabledUsersGroup['usercount']); } ?>" class="isgroup">
43 43
 		<a href="#"><span class="groupname"><?php p($l->t('Disabled')); ?></span></a>
44 44
 		<div class="app-navigation-entry-utils">
45 45
 			<ul>
46
-				<li class="app-navigation-entry-utils-counter"><?php if($disabledUsersGroup['usercount'] > 0) { p($disabledUsersGroup['usercount']); } ?></li>
46
+				<li class="app-navigation-entry-utils-counter"><?php if ($disabledUsersGroup['usercount'] > 0) { p($disabledUsersGroup['usercount']); } ?></li>
47 47
 			</ul>
48 48
 		</div>
49 49
 	</li>
50 50
 
51 51
 	<!--List of Groups-->
52
-	<?php foreach($_["groups"] as $group): ?>
52
+	<?php foreach ($_["groups"] as $group): ?>
53 53
 		<li data-gid="<?php p($group['id']) ?>" data-usercount="<?php p($group['usercount']) ?>" class="isgroup">
54 54
 			<a href="#" class="dorename">
55 55
 				<span class="groupname"><?php p($group['name']); ?></span>
56 56
 			</a>
57 57
 			<div class="app-navigation-entry-utils">
58 58
 				<ul>
59
-					<li class="app-navigation-entry-utils-counter"><?php if($group['usercount'] > 0) { p($group['usercount']); } ?></li>
60
-				 	<?php if($_['isAdmin']): ?>
59
+					<li class="app-navigation-entry-utils-counter"><?php if ($group['usercount'] > 0) { p($group['usercount']); } ?></li>
60
+				 	<?php if ($_['isAdmin']): ?>
61 61
 				 		<li class="app-navigation-entry-utils-menu-button delete">
62 62
 							<button class="icon-delete"></button>
63 63
 						</li>
Please login to merge, or discard this patch.
apps/files_sharing/lib/Activity/Providers/Groups.php 1 patch
Indentation   +134 added lines, -134 removed lines patch added patch discarded remove patch
@@ -33,138 +33,138 @@
 block discarded – undo
33 33
 
34 34
 class Groups extends Base {
35 35
 
36
-	const SUBJECT_SHARED_GROUP_SELF = 'shared_group_self';
37
-	const SUBJECT_RESHARED_GROUP_BY = 'reshared_group_by';
38
-	const SUBJECT_UNSHARED_GROUP_SELF = 'unshared_group_self';
39
-	const SUBJECT_UNSHARED_GROUP_BY = 'unshared_group_by';
40
-
41
-	/** @var IGroupManager */
42
-	protected $groupManager;
43
-
44
-	/** @var string[] */
45
-	protected $groupDisplayNames = [];
46
-
47
-	/**
48
-	 * @param IFactory $languageFactory
49
-	 * @param IURLGenerator $url
50
-	 * @param IManager $activityManager
51
-	 * @param IUserManager $userManager
52
-	 * @param IGroupManager $groupManager
53
-	 */
54
-	public function __construct(IFactory $languageFactory, IURLGenerator $url, IManager $activityManager, IUserManager $userManager, IGroupManager $groupManager) {
55
-		parent::__construct($languageFactory, $url, $activityManager, $userManager);
56
-		$this->groupManager = $groupManager;
57
-	}
58
-
59
-	/**
60
-	 * @param IEvent $event
61
-	 * @return IEvent
62
-	 * @throws \InvalidArgumentException
63
-	 * @since 11.0.0
64
-	 */
65
-	public function parseShortVersion(IEvent $event) {
66
-		$parsedParameters = $this->getParsedParameters($event);
67
-
68
-		if ($event->getSubject() === self::SUBJECT_SHARED_GROUP_SELF) {
69
-			$subject = $this->l->t('Shared with group {group}');
70
-		} else if ($event->getSubject() === self::SUBJECT_UNSHARED_GROUP_SELF) {
71
-			$subject = $this->l->t('Removed share for group {group}');
72
-		} else if ($event->getSubject() === self::SUBJECT_RESHARED_GROUP_BY) {
73
-			$subject = $this->l->t('{actor} shared with group {group}');
74
-		} else if ($event->getSubject() === self::SUBJECT_UNSHARED_GROUP_BY) {
75
-			$subject = $this->l->t('{actor} removed share for group {group}');
76
-		} else {
77
-			throw new \InvalidArgumentException();
78
-		}
79
-
80
-		if ($this->activityManager->getRequirePNG()) {
81
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.png')));
82
-		} else {
83
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.svg')));
84
-		}
85
-		$this->setSubjects($event, $subject, $parsedParameters);
86
-
87
-		return $event;
88
-	}
89
-
90
-	/**
91
-	 * @param IEvent $event
92
-	 * @return IEvent
93
-	 * @throws \InvalidArgumentException
94
-	 * @since 11.0.0
95
-	 */
96
-	public function parseLongVersion(IEvent $event) {
97
-		$parsedParameters = $this->getParsedParameters($event);
98
-
99
-		if ($event->getSubject() === self::SUBJECT_SHARED_GROUP_SELF) {
100
-			$subject = $this->l->t('You shared {file} with group {group}');
101
-		} else if ($event->getSubject() === self::SUBJECT_UNSHARED_GROUP_SELF) {
102
-			$subject = $this->l->t('You removed group {group} from {file}');
103
-		} else if ($event->getSubject() === self::SUBJECT_RESHARED_GROUP_BY) {
104
-			$subject = $this->l->t('{actor} shared {file} with group {group}');
105
-		} else if ($event->getSubject() === self::SUBJECT_UNSHARED_GROUP_BY) {
106
-			$subject = $this->l->t('{actor} removed group {group} from {file}');
107
-		} else {
108
-			throw new \InvalidArgumentException();
109
-		}
110
-
111
-		if ($this->activityManager->getRequirePNG()) {
112
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.png')));
113
-		} else {
114
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.svg')));
115
-		}
116
-		$this->setSubjects($event, $subject, $parsedParameters);
117
-
118
-		return $event;
119
-	}
120
-
121
-	protected function getParsedParameters(IEvent $event) {
122
-		$subject = $event->getSubject();
123
-		$parameters = $event->getSubjectParameters();
124
-
125
-		switch ($subject) {
126
-			case self::SUBJECT_RESHARED_GROUP_BY:
127
-			case self::SUBJECT_UNSHARED_GROUP_BY:
128
-				return [
129
-					'file' => $this->getFile($parameters[0], $event),
130
-					'group' => $this->generateGroupParameter($parameters[2]),
131
-					'actor' => $this->getUser($parameters[1]),
132
-				];
133
-			case self::SUBJECT_SHARED_GROUP_SELF:
134
-			case self::SUBJECT_UNSHARED_GROUP_SELF:
135
-				return [
136
-					'file' => $this->getFile($parameters[0], $event),
137
-					'group' => $this->generateGroupParameter($parameters[1]),
138
-				];
139
-		}
140
-		return [];
141
-	}
142
-
143
-	/**
144
-	 * @param string $gid
145
-	 * @return array
146
-	 */
147
-	protected function generateGroupParameter($gid) {
148
-		if (!isset($this->groupDisplayNames[$gid])) {
149
-			$this->groupDisplayNames[$gid] = $this->getGroupDisplayName($gid);
150
-		}
151
-
152
-		return [
153
-			'type' => 'group',
154
-			'id' => $gid,
155
-			'name' => $this->groupDisplayNames[$gid],
156
-		];
157
-	}
158
-
159
-	/**
160
-	 * @param string $gid
161
-	 * @return string
162
-	 */
163
-	protected function getGroupDisplayName($gid) {
164
-		$group = $this->groupManager->get($gid);
165
-		if ($group instanceof IGroup) {
166
-			return $group->getDisplayName();
167
-		}
168
-		return $gid;
169
-	}
36
+    const SUBJECT_SHARED_GROUP_SELF = 'shared_group_self';
37
+    const SUBJECT_RESHARED_GROUP_BY = 'reshared_group_by';
38
+    const SUBJECT_UNSHARED_GROUP_SELF = 'unshared_group_self';
39
+    const SUBJECT_UNSHARED_GROUP_BY = 'unshared_group_by';
40
+
41
+    /** @var IGroupManager */
42
+    protected $groupManager;
43
+
44
+    /** @var string[] */
45
+    protected $groupDisplayNames = [];
46
+
47
+    /**
48
+     * @param IFactory $languageFactory
49
+     * @param IURLGenerator $url
50
+     * @param IManager $activityManager
51
+     * @param IUserManager $userManager
52
+     * @param IGroupManager $groupManager
53
+     */
54
+    public function __construct(IFactory $languageFactory, IURLGenerator $url, IManager $activityManager, IUserManager $userManager, IGroupManager $groupManager) {
55
+        parent::__construct($languageFactory, $url, $activityManager, $userManager);
56
+        $this->groupManager = $groupManager;
57
+    }
58
+
59
+    /**
60
+     * @param IEvent $event
61
+     * @return IEvent
62
+     * @throws \InvalidArgumentException
63
+     * @since 11.0.0
64
+     */
65
+    public function parseShortVersion(IEvent $event) {
66
+        $parsedParameters = $this->getParsedParameters($event);
67
+
68
+        if ($event->getSubject() === self::SUBJECT_SHARED_GROUP_SELF) {
69
+            $subject = $this->l->t('Shared with group {group}');
70
+        } else if ($event->getSubject() === self::SUBJECT_UNSHARED_GROUP_SELF) {
71
+            $subject = $this->l->t('Removed share for group {group}');
72
+        } else if ($event->getSubject() === self::SUBJECT_RESHARED_GROUP_BY) {
73
+            $subject = $this->l->t('{actor} shared with group {group}');
74
+        } else if ($event->getSubject() === self::SUBJECT_UNSHARED_GROUP_BY) {
75
+            $subject = $this->l->t('{actor} removed share for group {group}');
76
+        } else {
77
+            throw new \InvalidArgumentException();
78
+        }
79
+
80
+        if ($this->activityManager->getRequirePNG()) {
81
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.png')));
82
+        } else {
83
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.svg')));
84
+        }
85
+        $this->setSubjects($event, $subject, $parsedParameters);
86
+
87
+        return $event;
88
+    }
89
+
90
+    /**
91
+     * @param IEvent $event
92
+     * @return IEvent
93
+     * @throws \InvalidArgumentException
94
+     * @since 11.0.0
95
+     */
96
+    public function parseLongVersion(IEvent $event) {
97
+        $parsedParameters = $this->getParsedParameters($event);
98
+
99
+        if ($event->getSubject() === self::SUBJECT_SHARED_GROUP_SELF) {
100
+            $subject = $this->l->t('You shared {file} with group {group}');
101
+        } else if ($event->getSubject() === self::SUBJECT_UNSHARED_GROUP_SELF) {
102
+            $subject = $this->l->t('You removed group {group} from {file}');
103
+        } else if ($event->getSubject() === self::SUBJECT_RESHARED_GROUP_BY) {
104
+            $subject = $this->l->t('{actor} shared {file} with group {group}');
105
+        } else if ($event->getSubject() === self::SUBJECT_UNSHARED_GROUP_BY) {
106
+            $subject = $this->l->t('{actor} removed group {group} from {file}');
107
+        } else {
108
+            throw new \InvalidArgumentException();
109
+        }
110
+
111
+        if ($this->activityManager->getRequirePNG()) {
112
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.png')));
113
+        } else {
114
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.svg')));
115
+        }
116
+        $this->setSubjects($event, $subject, $parsedParameters);
117
+
118
+        return $event;
119
+    }
120
+
121
+    protected function getParsedParameters(IEvent $event) {
122
+        $subject = $event->getSubject();
123
+        $parameters = $event->getSubjectParameters();
124
+
125
+        switch ($subject) {
126
+            case self::SUBJECT_RESHARED_GROUP_BY:
127
+            case self::SUBJECT_UNSHARED_GROUP_BY:
128
+                return [
129
+                    'file' => $this->getFile($parameters[0], $event),
130
+                    'group' => $this->generateGroupParameter($parameters[2]),
131
+                    'actor' => $this->getUser($parameters[1]),
132
+                ];
133
+            case self::SUBJECT_SHARED_GROUP_SELF:
134
+            case self::SUBJECT_UNSHARED_GROUP_SELF:
135
+                return [
136
+                    'file' => $this->getFile($parameters[0], $event),
137
+                    'group' => $this->generateGroupParameter($parameters[1]),
138
+                ];
139
+        }
140
+        return [];
141
+    }
142
+
143
+    /**
144
+     * @param string $gid
145
+     * @return array
146
+     */
147
+    protected function generateGroupParameter($gid) {
148
+        if (!isset($this->groupDisplayNames[$gid])) {
149
+            $this->groupDisplayNames[$gid] = $this->getGroupDisplayName($gid);
150
+        }
151
+
152
+        return [
153
+            'type' => 'group',
154
+            'id' => $gid,
155
+            'name' => $this->groupDisplayNames[$gid],
156
+        ];
157
+    }
158
+
159
+    /**
160
+     * @param string $gid
161
+     * @return string
162
+     */
163
+    protected function getGroupDisplayName($gid) {
164
+        $group = $this->groupManager->get($gid);
165
+        if ($group instanceof IGroup) {
166
+            return $group->getDisplayName();
167
+        }
168
+        return $gid;
169
+    }
170 170
 }
Please login to merge, or discard this patch.
apps/dav/lib/CalDAV/Activity/Provider/Base.php 1 patch
Indentation   +143 added lines, -143 removed lines patch added patch discarded remove patch
@@ -34,147 +34,147 @@
 block discarded – undo
34 34
 
35 35
 abstract class Base implements IProvider {
36 36
 
37
-	/** @var IUserManager */
38
-	protected $userManager;
39
-
40
-	/** @var string[]  */
41
-	protected $userDisplayNames = [];
42
-
43
-	/** @var IGroupManager */
44
-	protected $groupManager;
45
-
46
-	/** @var string[] */
47
-	protected $groupDisplayNames = [];
48
-
49
-	/**
50
-	 * @param IUserManager $userManager
51
-	 * @param IGroupManager $groupManager
52
-	 */
53
-	public function __construct(IUserManager $userManager, IGroupManager $groupManager) {
54
-		$this->userManager = $userManager;
55
-		$this->groupManager = $groupManager;
56
-	}
57
-
58
-	/**
59
-	 * @param IEvent $event
60
-	 * @param string $subject
61
-	 * @param array $parameters
62
-	 */
63
-	protected function setSubjects(IEvent $event, $subject, array $parameters) {
64
-		$placeholders = $replacements = [];
65
-		foreach ($parameters as $placeholder => $parameter) {
66
-			$placeholders[] = '{' . $placeholder . '}';
67
-			$replacements[] = $parameter['name'];
68
-		}
69
-
70
-		$event->setParsedSubject(str_replace($placeholders, $replacements, $subject))
71
-			->setRichSubject($subject, $parameters);
72
-	}
73
-
74
-	/**
75
-	 * @param array $eventData
76
-	 * @return array
77
-	 */
78
-	protected function generateObjectParameter($eventData) {
79
-		if (!is_array($eventData) || !isset($eventData['id']) || !isset($eventData['name'])) {
80
-			throw new \InvalidArgumentException();
81
-		}
82
-
83
-		return [
84
-			'type' => 'calendar-event',
85
-			'id' => $eventData['id'],
86
-			'name' => $eventData['name'],
87
-		];
88
-	}
89
-
90
-	/**
91
-	 * @param array $data
92
-	 * @param IL10N $l
93
-	 * @return array
94
-	 */
95
-	protected function generateCalendarParameter($data, IL10N $l) {
96
-		if ($data['uri'] === CalDavBackend::PERSONAL_CALENDAR_URI &&
97
-			$data['name'] === CalDavBackend::PERSONAL_CALENDAR_NAME) {
98
-			return [
99
-				'type' => 'calendar',
100
-				'id' => $data['id'],
101
-				'name' => $l->t('Personal'),
102
-			];
103
-		}
104
-
105
-		return [
106
-			'type' => 'calendar',
107
-			'id' => $data['id'],
108
-			'name' => $data['name'],
109
-		];
110
-	}
111
-
112
-	/**
113
-	 * @param int $id
114
-	 * @param string $name
115
-	 * @return array
116
-	 */
117
-	protected function generateLegacyCalendarParameter($id, $name) {
118
-		return [
119
-			'type' => 'calendar',
120
-			'id' => $id,
121
-			'name' => $name,
122
-		];
123
-	}
124
-
125
-	/**
126
-	 * @param string $uid
127
-	 * @return array
128
-	 */
129
-	protected function generateUserParameter($uid) {
130
-		if (!isset($this->userDisplayNames[$uid])) {
131
-			$this->userDisplayNames[$uid] = $this->getUserDisplayName($uid);
132
-		}
133
-
134
-		return [
135
-			'type' => 'user',
136
-			'id' => $uid,
137
-			'name' => $this->userDisplayNames[$uid],
138
-		];
139
-	}
140
-
141
-	/**
142
-	 * @param string $uid
143
-	 * @return string
144
-	 */
145
-	protected function getUserDisplayName($uid) {
146
-		$user = $this->userManager->get($uid);
147
-		if ($user instanceof IUser) {
148
-			return $user->getDisplayName();
149
-		}
150
-		return $uid;
151
-	}
152
-
153
-	/**
154
-	 * @param string $gid
155
-	 * @return array
156
-	 */
157
-	protected function generateGroupParameter($gid) {
158
-		if (!isset($this->groupDisplayNames[$gid])) {
159
-			$this->groupDisplayNames[$gid] = $this->getGroupDisplayName($gid);
160
-		}
161
-
162
-		return [
163
-			'type' => 'group',
164
-			'id' => $gid,
165
-			'name' => $this->groupDisplayNames[$gid],
166
-		];
167
-	}
168
-
169
-	/**
170
-	 * @param string $gid
171
-	 * @return string
172
-	 */
173
-	protected function getGroupDisplayName($gid) {
174
-		$group = $this->groupManager->get($gid);
175
-		if ($group instanceof IGroup) {
176
-			return $group->getDisplayName();
177
-		}
178
-		return $gid;
179
-	}
37
+    /** @var IUserManager */
38
+    protected $userManager;
39
+
40
+    /** @var string[]  */
41
+    protected $userDisplayNames = [];
42
+
43
+    /** @var IGroupManager */
44
+    protected $groupManager;
45
+
46
+    /** @var string[] */
47
+    protected $groupDisplayNames = [];
48
+
49
+    /**
50
+     * @param IUserManager $userManager
51
+     * @param IGroupManager $groupManager
52
+     */
53
+    public function __construct(IUserManager $userManager, IGroupManager $groupManager) {
54
+        $this->userManager = $userManager;
55
+        $this->groupManager = $groupManager;
56
+    }
57
+
58
+    /**
59
+     * @param IEvent $event
60
+     * @param string $subject
61
+     * @param array $parameters
62
+     */
63
+    protected function setSubjects(IEvent $event, $subject, array $parameters) {
64
+        $placeholders = $replacements = [];
65
+        foreach ($parameters as $placeholder => $parameter) {
66
+            $placeholders[] = '{' . $placeholder . '}';
67
+            $replacements[] = $parameter['name'];
68
+        }
69
+
70
+        $event->setParsedSubject(str_replace($placeholders, $replacements, $subject))
71
+            ->setRichSubject($subject, $parameters);
72
+    }
73
+
74
+    /**
75
+     * @param array $eventData
76
+     * @return array
77
+     */
78
+    protected function generateObjectParameter($eventData) {
79
+        if (!is_array($eventData) || !isset($eventData['id']) || !isset($eventData['name'])) {
80
+            throw new \InvalidArgumentException();
81
+        }
82
+
83
+        return [
84
+            'type' => 'calendar-event',
85
+            'id' => $eventData['id'],
86
+            'name' => $eventData['name'],
87
+        ];
88
+    }
89
+
90
+    /**
91
+     * @param array $data
92
+     * @param IL10N $l
93
+     * @return array
94
+     */
95
+    protected function generateCalendarParameter($data, IL10N $l) {
96
+        if ($data['uri'] === CalDavBackend::PERSONAL_CALENDAR_URI &&
97
+            $data['name'] === CalDavBackend::PERSONAL_CALENDAR_NAME) {
98
+            return [
99
+                'type' => 'calendar',
100
+                'id' => $data['id'],
101
+                'name' => $l->t('Personal'),
102
+            ];
103
+        }
104
+
105
+        return [
106
+            'type' => 'calendar',
107
+            'id' => $data['id'],
108
+            'name' => $data['name'],
109
+        ];
110
+    }
111
+
112
+    /**
113
+     * @param int $id
114
+     * @param string $name
115
+     * @return array
116
+     */
117
+    protected function generateLegacyCalendarParameter($id, $name) {
118
+        return [
119
+            'type' => 'calendar',
120
+            'id' => $id,
121
+            'name' => $name,
122
+        ];
123
+    }
124
+
125
+    /**
126
+     * @param string $uid
127
+     * @return array
128
+     */
129
+    protected function generateUserParameter($uid) {
130
+        if (!isset($this->userDisplayNames[$uid])) {
131
+            $this->userDisplayNames[$uid] = $this->getUserDisplayName($uid);
132
+        }
133
+
134
+        return [
135
+            'type' => 'user',
136
+            'id' => $uid,
137
+            'name' => $this->userDisplayNames[$uid],
138
+        ];
139
+    }
140
+
141
+    /**
142
+     * @param string $uid
143
+     * @return string
144
+     */
145
+    protected function getUserDisplayName($uid) {
146
+        $user = $this->userManager->get($uid);
147
+        if ($user instanceof IUser) {
148
+            return $user->getDisplayName();
149
+        }
150
+        return $uid;
151
+    }
152
+
153
+    /**
154
+     * @param string $gid
155
+     * @return array
156
+     */
157
+    protected function generateGroupParameter($gid) {
158
+        if (!isset($this->groupDisplayNames[$gid])) {
159
+            $this->groupDisplayNames[$gid] = $this->getGroupDisplayName($gid);
160
+        }
161
+
162
+        return [
163
+            'type' => 'group',
164
+            'id' => $gid,
165
+            'name' => $this->groupDisplayNames[$gid],
166
+        ];
167
+    }
168
+
169
+    /**
170
+     * @param string $gid
171
+     * @return string
172
+     */
173
+    protected function getGroupDisplayName($gid) {
174
+        $group = $this->groupManager->get($gid);
175
+        if ($group instanceof IGroup) {
176
+            return $group->getDisplayName();
177
+        }
178
+        return $gid;
179
+    }
180 180
 }
Please login to merge, or discard this patch.
apps/dav/lib/CalDAV/Activity/Provider/Event.php 1 patch
Indentation   +134 added lines, -134 removed lines patch added patch discarded remove patch
@@ -34,138 +34,138 @@
 block discarded – undo
34 34
 
35 35
 class Event extends Base {
36 36
 
37
-	const SUBJECT_OBJECT_ADD = 'object_add';
38
-	const SUBJECT_OBJECT_UPDATE = 'object_update';
39
-	const SUBJECT_OBJECT_DELETE = 'object_delete';
40
-
41
-	/** @var IFactory */
42
-	protected $languageFactory;
43
-
44
-	/** @var IL10N */
45
-	protected $l;
46
-
47
-	/** @var IURLGenerator */
48
-	protected $url;
49
-
50
-	/** @var IManager */
51
-	protected $activityManager;
52
-
53
-	/** @var IEventMerger */
54
-	protected $eventMerger;
55
-
56
-	/**
57
-	 * @param IFactory $languageFactory
58
-	 * @param IURLGenerator $url
59
-	 * @param IManager $activityManager
60
-	 * @param IUserManager $userManager
61
-	 * @param IGroupManager $groupManager
62
-	 * @param IEventMerger $eventMerger
63
-	 */
64
-	public function __construct(IFactory $languageFactory, IURLGenerator $url, IManager $activityManager, IUserManager $userManager, IGroupManager $groupManager, IEventMerger $eventMerger) {
65
-		parent::__construct($userManager, $groupManager);
66
-		$this->languageFactory = $languageFactory;
67
-		$this->url = $url;
68
-		$this->activityManager = $activityManager;
69
-		$this->eventMerger = $eventMerger;
70
-	}
71
-
72
-	/**
73
-	 * @param string $language
74
-	 * @param IEvent $event
75
-	 * @param IEvent|null $previousEvent
76
-	 * @return IEvent
77
-	 * @throws \InvalidArgumentException
78
-	 * @since 11.0.0
79
-	 */
80
-	public function parse($language, IEvent $event, IEvent $previousEvent = null) {
81
-		if ($event->getApp() !== 'dav' || $event->getType() !== 'calendar_event') {
82
-			throw new \InvalidArgumentException();
83
-		}
84
-
85
-		$this->l = $this->languageFactory->get('dav', $language);
86
-
87
-		if ($this->activityManager->getRequirePNG()) {
88
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'places/calendar-dark.png')));
89
-		} else {
90
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'places/calendar-dark.svg')));
91
-		}
92
-
93
-		if ($event->getSubject() === self::SUBJECT_OBJECT_ADD . '_event') {
94
-			$subject = $this->l->t('{actor} created event {event} in calendar {calendar}');
95
-		} else if ($event->getSubject() === self::SUBJECT_OBJECT_ADD . '_event_self') {
96
-			$subject = $this->l->t('You created event {event} in calendar {calendar}');
97
-		} else if ($event->getSubject() === self::SUBJECT_OBJECT_DELETE . '_event') {
98
-			$subject = $this->l->t('{actor} deleted event {event} from calendar {calendar}');
99
-		} else if ($event->getSubject() === self::SUBJECT_OBJECT_DELETE . '_event_self') {
100
-			$subject = $this->l->t('You deleted event {event} from calendar {calendar}');
101
-		} else if ($event->getSubject() === self::SUBJECT_OBJECT_UPDATE . '_event') {
102
-			$subject = $this->l->t('{actor} updated event {event} in calendar {calendar}');
103
-		} else if ($event->getSubject() === self::SUBJECT_OBJECT_UPDATE . '_event_self') {
104
-			$subject = $this->l->t('You updated event {event} in calendar {calendar}');
105
-		} else {
106
-			throw new \InvalidArgumentException();
107
-		}
108
-
109
-		$parsedParameters = $this->getParameters($event);
110
-		$this->setSubjects($event, $subject, $parsedParameters);
111
-
112
-		$event = $this->eventMerger->mergeEvents('event', $event, $previousEvent);
113
-
114
-		return $event;
115
-	}
116
-
117
-	/**
118
-	 * @param IEvent $event
119
-	 * @return array
120
-	 */
121
-	protected function getParameters(IEvent $event) {
122
-		$subject = $event->getSubject();
123
-		$parameters = $event->getSubjectParameters();
124
-
125
-		// Nextcloud 13+
126
-		if (isset($parameters['calendar'])) {
127
-			switch ($subject) {
128
-				case self::SUBJECT_OBJECT_ADD . '_event':
129
-				case self::SUBJECT_OBJECT_DELETE . '_event':
130
-				case self::SUBJECT_OBJECT_UPDATE . '_event':
131
-					return [
132
-						'actor' => $this->generateUserParameter($parameters['actor']),
133
-						'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
134
-						'event' => $this->generateObjectParameter($parameters['object']),
135
-					];
136
-				case self::SUBJECT_OBJECT_ADD . '_event_self':
137
-				case self::SUBJECT_OBJECT_DELETE . '_event_self':
138
-				case self::SUBJECT_OBJECT_UPDATE . '_event_self':
139
-					return [
140
-						'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
141
-						'event' => $this->generateObjectParameter($parameters['object']),
142
-					];
143
-			}
144
-		}
145
-
146
-		// Legacy - Do NOT Remove unless necessary
147
-		// Removing this will break parsing of activities that were created on
148
-		// Nextcloud 12, so we should keep this as long as it's acceptable.
149
-		// Otherwise if people upgrade over multiple releases in a short period,
150
-		// they will get the dead entries in their stream.
151
-		switch ($subject) {
152
-			case self::SUBJECT_OBJECT_ADD . '_event':
153
-			case self::SUBJECT_OBJECT_DELETE . '_event':
154
-			case self::SUBJECT_OBJECT_UPDATE . '_event':
155
-				return [
156
-					'actor' => $this->generateUserParameter($parameters[0]),
157
-					'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
158
-					'event' => $this->generateObjectParameter($parameters[2]),
159
-				];
160
-			case self::SUBJECT_OBJECT_ADD . '_event_self':
161
-			case self::SUBJECT_OBJECT_DELETE . '_event_self':
162
-			case self::SUBJECT_OBJECT_UPDATE . '_event_self':
163
-				return [
164
-					'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
165
-					'event' => $this->generateObjectParameter($parameters[2]),
166
-				];
167
-		}
168
-
169
-		throw new \InvalidArgumentException();
170
-	}
37
+    const SUBJECT_OBJECT_ADD = 'object_add';
38
+    const SUBJECT_OBJECT_UPDATE = 'object_update';
39
+    const SUBJECT_OBJECT_DELETE = 'object_delete';
40
+
41
+    /** @var IFactory */
42
+    protected $languageFactory;
43
+
44
+    /** @var IL10N */
45
+    protected $l;
46
+
47
+    /** @var IURLGenerator */
48
+    protected $url;
49
+
50
+    /** @var IManager */
51
+    protected $activityManager;
52
+
53
+    /** @var IEventMerger */
54
+    protected $eventMerger;
55
+
56
+    /**
57
+     * @param IFactory $languageFactory
58
+     * @param IURLGenerator $url
59
+     * @param IManager $activityManager
60
+     * @param IUserManager $userManager
61
+     * @param IGroupManager $groupManager
62
+     * @param IEventMerger $eventMerger
63
+     */
64
+    public function __construct(IFactory $languageFactory, IURLGenerator $url, IManager $activityManager, IUserManager $userManager, IGroupManager $groupManager, IEventMerger $eventMerger) {
65
+        parent::__construct($userManager, $groupManager);
66
+        $this->languageFactory = $languageFactory;
67
+        $this->url = $url;
68
+        $this->activityManager = $activityManager;
69
+        $this->eventMerger = $eventMerger;
70
+    }
71
+
72
+    /**
73
+     * @param string $language
74
+     * @param IEvent $event
75
+     * @param IEvent|null $previousEvent
76
+     * @return IEvent
77
+     * @throws \InvalidArgumentException
78
+     * @since 11.0.0
79
+     */
80
+    public function parse($language, IEvent $event, IEvent $previousEvent = null) {
81
+        if ($event->getApp() !== 'dav' || $event->getType() !== 'calendar_event') {
82
+            throw new \InvalidArgumentException();
83
+        }
84
+
85
+        $this->l = $this->languageFactory->get('dav', $language);
86
+
87
+        if ($this->activityManager->getRequirePNG()) {
88
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'places/calendar-dark.png')));
89
+        } else {
90
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'places/calendar-dark.svg')));
91
+        }
92
+
93
+        if ($event->getSubject() === self::SUBJECT_OBJECT_ADD . '_event') {
94
+            $subject = $this->l->t('{actor} created event {event} in calendar {calendar}');
95
+        } else if ($event->getSubject() === self::SUBJECT_OBJECT_ADD . '_event_self') {
96
+            $subject = $this->l->t('You created event {event} in calendar {calendar}');
97
+        } else if ($event->getSubject() === self::SUBJECT_OBJECT_DELETE . '_event') {
98
+            $subject = $this->l->t('{actor} deleted event {event} from calendar {calendar}');
99
+        } else if ($event->getSubject() === self::SUBJECT_OBJECT_DELETE . '_event_self') {
100
+            $subject = $this->l->t('You deleted event {event} from calendar {calendar}');
101
+        } else if ($event->getSubject() === self::SUBJECT_OBJECT_UPDATE . '_event') {
102
+            $subject = $this->l->t('{actor} updated event {event} in calendar {calendar}');
103
+        } else if ($event->getSubject() === self::SUBJECT_OBJECT_UPDATE . '_event_self') {
104
+            $subject = $this->l->t('You updated event {event} in calendar {calendar}');
105
+        } else {
106
+            throw new \InvalidArgumentException();
107
+        }
108
+
109
+        $parsedParameters = $this->getParameters($event);
110
+        $this->setSubjects($event, $subject, $parsedParameters);
111
+
112
+        $event = $this->eventMerger->mergeEvents('event', $event, $previousEvent);
113
+
114
+        return $event;
115
+    }
116
+
117
+    /**
118
+     * @param IEvent $event
119
+     * @return array
120
+     */
121
+    protected function getParameters(IEvent $event) {
122
+        $subject = $event->getSubject();
123
+        $parameters = $event->getSubjectParameters();
124
+
125
+        // Nextcloud 13+
126
+        if (isset($parameters['calendar'])) {
127
+            switch ($subject) {
128
+                case self::SUBJECT_OBJECT_ADD . '_event':
129
+                case self::SUBJECT_OBJECT_DELETE . '_event':
130
+                case self::SUBJECT_OBJECT_UPDATE . '_event':
131
+                    return [
132
+                        'actor' => $this->generateUserParameter($parameters['actor']),
133
+                        'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
134
+                        'event' => $this->generateObjectParameter($parameters['object']),
135
+                    ];
136
+                case self::SUBJECT_OBJECT_ADD . '_event_self':
137
+                case self::SUBJECT_OBJECT_DELETE . '_event_self':
138
+                case self::SUBJECT_OBJECT_UPDATE . '_event_self':
139
+                    return [
140
+                        'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
141
+                        'event' => $this->generateObjectParameter($parameters['object']),
142
+                    ];
143
+            }
144
+        }
145
+
146
+        // Legacy - Do NOT Remove unless necessary
147
+        // Removing this will break parsing of activities that were created on
148
+        // Nextcloud 12, so we should keep this as long as it's acceptable.
149
+        // Otherwise if people upgrade over multiple releases in a short period,
150
+        // they will get the dead entries in their stream.
151
+        switch ($subject) {
152
+            case self::SUBJECT_OBJECT_ADD . '_event':
153
+            case self::SUBJECT_OBJECT_DELETE . '_event':
154
+            case self::SUBJECT_OBJECT_UPDATE . '_event':
155
+                return [
156
+                    'actor' => $this->generateUserParameter($parameters[0]),
157
+                    'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
158
+                    'event' => $this->generateObjectParameter($parameters[2]),
159
+                ];
160
+            case self::SUBJECT_OBJECT_ADD . '_event_self':
161
+            case self::SUBJECT_OBJECT_DELETE . '_event_self':
162
+            case self::SUBJECT_OBJECT_UPDATE . '_event_self':
163
+                return [
164
+                    'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
165
+                    'event' => $this->generateObjectParameter($parameters[2]),
166
+                ];
167
+        }
168
+
169
+        throw new \InvalidArgumentException();
170
+    }
171 171
 }
Please login to merge, or discard this patch.
apps/dav/lib/CalDAV/Activity/Provider/Calendar.php 1 patch
Indentation   +208 added lines, -208 removed lines patch added patch discarded remove patch
@@ -34,233 +34,233 @@
 block discarded – undo
34 34
 
35 35
 class Calendar extends Base {
36 36
 
37
-	const SUBJECT_ADD = 'calendar_add';
38
-	const SUBJECT_UPDATE = 'calendar_update';
39
-	const SUBJECT_DELETE = 'calendar_delete';
40
-	const SUBJECT_PUBLISH = 'calendar_publish';
41
-	const SUBJECT_UNPUBLISH = 'calendar_unpublish';
42
-	const SUBJECT_SHARE_USER = 'calendar_user_share';
43
-	const SUBJECT_SHARE_GROUP = 'calendar_group_share';
44
-	const SUBJECT_UNSHARE_USER = 'calendar_user_unshare';
45
-	const SUBJECT_UNSHARE_GROUP = 'calendar_group_unshare';
37
+    const SUBJECT_ADD = 'calendar_add';
38
+    const SUBJECT_UPDATE = 'calendar_update';
39
+    const SUBJECT_DELETE = 'calendar_delete';
40
+    const SUBJECT_PUBLISH = 'calendar_publish';
41
+    const SUBJECT_UNPUBLISH = 'calendar_unpublish';
42
+    const SUBJECT_SHARE_USER = 'calendar_user_share';
43
+    const SUBJECT_SHARE_GROUP = 'calendar_group_share';
44
+    const SUBJECT_UNSHARE_USER = 'calendar_user_unshare';
45
+    const SUBJECT_UNSHARE_GROUP = 'calendar_group_unshare';
46 46
 
47
-	/** @var IFactory */
48
-	protected $languageFactory;
47
+    /** @var IFactory */
48
+    protected $languageFactory;
49 49
 
50
-	/** @var IL10N */
51
-	protected $l;
50
+    /** @var IL10N */
51
+    protected $l;
52 52
 
53
-	/** @var IURLGenerator */
54
-	protected $url;
53
+    /** @var IURLGenerator */
54
+    protected $url;
55 55
 
56
-	/** @var IManager */
57
-	protected $activityManager;
56
+    /** @var IManager */
57
+    protected $activityManager;
58 58
 
59
-	/** @var IEventMerger */
60
-	protected $eventMerger;
59
+    /** @var IEventMerger */
60
+    protected $eventMerger;
61 61
 
62
-	/**
63
-	 * @param IFactory $languageFactory
64
-	 * @param IURLGenerator $url
65
-	 * @param IManager $activityManager
66
-	 * @param IUserManager $userManager
67
-	 * @param IGroupManager $groupManager
68
-	 * @param IEventMerger $eventMerger
69
-	 */
70
-	public function __construct(IFactory $languageFactory, IURLGenerator $url, IManager $activityManager, IUserManager $userManager, IGroupManager $groupManager, IEventMerger $eventMerger) {
71
-		parent::__construct($userManager, $groupManager);
72
-		$this->languageFactory = $languageFactory;
73
-		$this->url = $url;
74
-		$this->activityManager = $activityManager;
75
-		$this->eventMerger = $eventMerger;
76
-	}
62
+    /**
63
+     * @param IFactory $languageFactory
64
+     * @param IURLGenerator $url
65
+     * @param IManager $activityManager
66
+     * @param IUserManager $userManager
67
+     * @param IGroupManager $groupManager
68
+     * @param IEventMerger $eventMerger
69
+     */
70
+    public function __construct(IFactory $languageFactory, IURLGenerator $url, IManager $activityManager, IUserManager $userManager, IGroupManager $groupManager, IEventMerger $eventMerger) {
71
+        parent::__construct($userManager, $groupManager);
72
+        $this->languageFactory = $languageFactory;
73
+        $this->url = $url;
74
+        $this->activityManager = $activityManager;
75
+        $this->eventMerger = $eventMerger;
76
+    }
77 77
 
78
-	/**
79
-	 * @param string $language
80
-	 * @param IEvent $event
81
-	 * @param IEvent|null $previousEvent
82
-	 * @return IEvent
83
-	 * @throws \InvalidArgumentException
84
-	 * @since 11.0.0
85
-	 */
86
-	public function parse($language, IEvent $event, IEvent $previousEvent = null) {
87
-		if ($event->getApp() !== 'dav' || $event->getType() !== 'calendar') {
88
-			throw new \InvalidArgumentException();
89
-		}
78
+    /**
79
+     * @param string $language
80
+     * @param IEvent $event
81
+     * @param IEvent|null $previousEvent
82
+     * @return IEvent
83
+     * @throws \InvalidArgumentException
84
+     * @since 11.0.0
85
+     */
86
+    public function parse($language, IEvent $event, IEvent $previousEvent = null) {
87
+        if ($event->getApp() !== 'dav' || $event->getType() !== 'calendar') {
88
+            throw new \InvalidArgumentException();
89
+        }
90 90
 
91
-		$this->l = $this->languageFactory->get('dav', $language);
91
+        $this->l = $this->languageFactory->get('dav', $language);
92 92
 
93
-		if ($this->activityManager->getRequirePNG()) {
94
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'places/calendar-dark.png')));
95
-		} else {
96
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'places/calendar-dark.svg')));
97
-		}
93
+        if ($this->activityManager->getRequirePNG()) {
94
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'places/calendar-dark.png')));
95
+        } else {
96
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'places/calendar-dark.svg')));
97
+        }
98 98
 
99
-		if ($event->getSubject() === self::SUBJECT_ADD) {
100
-			$subject = $this->l->t('{actor} created calendar {calendar}');
101
-		} else if ($event->getSubject() === self::SUBJECT_ADD . '_self') {
102
-			$subject = $this->l->t('You created calendar {calendar}');
103
-		} else if ($event->getSubject() === self::SUBJECT_DELETE) {
104
-			$subject = $this->l->t('{actor} deleted calendar {calendar}');
105
-		} else if ($event->getSubject() === self::SUBJECT_DELETE . '_self') {
106
-			$subject = $this->l->t('You deleted calendar {calendar}');
107
-		} else if ($event->getSubject() === self::SUBJECT_UPDATE) {
108
-			$subject = $this->l->t('{actor} updated calendar {calendar}');
109
-		} else if ($event->getSubject() === self::SUBJECT_UPDATE . '_self') {
110
-			$subject = $this->l->t('You updated calendar {calendar}');
99
+        if ($event->getSubject() === self::SUBJECT_ADD) {
100
+            $subject = $this->l->t('{actor} created calendar {calendar}');
101
+        } else if ($event->getSubject() === self::SUBJECT_ADD . '_self') {
102
+            $subject = $this->l->t('You created calendar {calendar}');
103
+        } else if ($event->getSubject() === self::SUBJECT_DELETE) {
104
+            $subject = $this->l->t('{actor} deleted calendar {calendar}');
105
+        } else if ($event->getSubject() === self::SUBJECT_DELETE . '_self') {
106
+            $subject = $this->l->t('You deleted calendar {calendar}');
107
+        } else if ($event->getSubject() === self::SUBJECT_UPDATE) {
108
+            $subject = $this->l->t('{actor} updated calendar {calendar}');
109
+        } else if ($event->getSubject() === self::SUBJECT_UPDATE . '_self') {
110
+            $subject = $this->l->t('You updated calendar {calendar}');
111 111
 
112
-		} else if ($event->getSubject() === self::SUBJECT_PUBLISH . '_self') {
113
-			$subject = $this->l->t('You shared calendar {calendar} as public link');
114
-		} else if ($event->getSubject() === self::SUBJECT_UNPUBLISH . '_self') {
115
-			$subject = $this->l->t('You removed public link for calendar {calendar}');
112
+        } else if ($event->getSubject() === self::SUBJECT_PUBLISH . '_self') {
113
+            $subject = $this->l->t('You shared calendar {calendar} as public link');
114
+        } else if ($event->getSubject() === self::SUBJECT_UNPUBLISH . '_self') {
115
+            $subject = $this->l->t('You removed public link for calendar {calendar}');
116 116
 
117
-		} else if ($event->getSubject() === self::SUBJECT_SHARE_USER) {
118
-			$subject = $this->l->t('{actor} shared calendar {calendar} with you');
119
-		} else if ($event->getSubject() === self::SUBJECT_SHARE_USER . '_you') {
120
-			$subject = $this->l->t('You shared calendar {calendar} with {user}');
121
-		} else if ($event->getSubject() === self::SUBJECT_SHARE_USER . '_by') {
122
-			$subject = $this->l->t('{actor} shared calendar {calendar} with {user}');
123
-		} else if ($event->getSubject() === self::SUBJECT_UNSHARE_USER) {
124
-			$subject = $this->l->t('{actor} unshared calendar {calendar} from you');
125
-		} else if ($event->getSubject() === self::SUBJECT_UNSHARE_USER . '_you') {
126
-			$subject = $this->l->t('You unshared calendar {calendar} from {user}');
127
-		} else if ($event->getSubject() === self::SUBJECT_UNSHARE_USER . '_by') {
128
-			$subject = $this->l->t('{actor} unshared calendar {calendar} from {user}');
129
-		} else if ($event->getSubject() === self::SUBJECT_UNSHARE_USER . '_self') {
130
-			$subject = $this->l->t('{actor} unshared calendar {calendar} from themselves');
117
+        } else if ($event->getSubject() === self::SUBJECT_SHARE_USER) {
118
+            $subject = $this->l->t('{actor} shared calendar {calendar} with you');
119
+        } else if ($event->getSubject() === self::SUBJECT_SHARE_USER . '_you') {
120
+            $subject = $this->l->t('You shared calendar {calendar} with {user}');
121
+        } else if ($event->getSubject() === self::SUBJECT_SHARE_USER . '_by') {
122
+            $subject = $this->l->t('{actor} shared calendar {calendar} with {user}');
123
+        } else if ($event->getSubject() === self::SUBJECT_UNSHARE_USER) {
124
+            $subject = $this->l->t('{actor} unshared calendar {calendar} from you');
125
+        } else if ($event->getSubject() === self::SUBJECT_UNSHARE_USER . '_you') {
126
+            $subject = $this->l->t('You unshared calendar {calendar} from {user}');
127
+        } else if ($event->getSubject() === self::SUBJECT_UNSHARE_USER . '_by') {
128
+            $subject = $this->l->t('{actor} unshared calendar {calendar} from {user}');
129
+        } else if ($event->getSubject() === self::SUBJECT_UNSHARE_USER . '_self') {
130
+            $subject = $this->l->t('{actor} unshared calendar {calendar} from themselves');
131 131
 
132
-		} else if ($event->getSubject() === self::SUBJECT_SHARE_GROUP . '_you') {
133
-			$subject = $this->l->t('You shared calendar {calendar} with group {group}');
134
-		} else if ($event->getSubject() === self::SUBJECT_SHARE_GROUP . '_by') {
135
-			$subject = $this->l->t('{actor} shared calendar {calendar} with group {group}');
136
-		} else if ($event->getSubject() === self::SUBJECT_UNSHARE_GROUP . '_you') {
137
-			$subject = $this->l->t('You unshared calendar {calendar} from group {group}');
138
-		} else if ($event->getSubject() === self::SUBJECT_UNSHARE_GROUP . '_by') {
139
-			$subject = $this->l->t('{actor} unshared calendar {calendar} from group {group}');
140
-		} else {
141
-			throw new \InvalidArgumentException();
142
-		}
132
+        } else if ($event->getSubject() === self::SUBJECT_SHARE_GROUP . '_you') {
133
+            $subject = $this->l->t('You shared calendar {calendar} with group {group}');
134
+        } else if ($event->getSubject() === self::SUBJECT_SHARE_GROUP . '_by') {
135
+            $subject = $this->l->t('{actor} shared calendar {calendar} with group {group}');
136
+        } else if ($event->getSubject() === self::SUBJECT_UNSHARE_GROUP . '_you') {
137
+            $subject = $this->l->t('You unshared calendar {calendar} from group {group}');
138
+        } else if ($event->getSubject() === self::SUBJECT_UNSHARE_GROUP . '_by') {
139
+            $subject = $this->l->t('{actor} unshared calendar {calendar} from group {group}');
140
+        } else {
141
+            throw new \InvalidArgumentException();
142
+        }
143 143
 
144
-		$parsedParameters = $this->getParameters($event);
145
-		$this->setSubjects($event, $subject, $parsedParameters);
144
+        $parsedParameters = $this->getParameters($event);
145
+        $this->setSubjects($event, $subject, $parsedParameters);
146 146
 
147
-		$event = $this->eventMerger->mergeEvents('calendar', $event, $previousEvent);
147
+        $event = $this->eventMerger->mergeEvents('calendar', $event, $previousEvent);
148 148
 
149
-		if ($event->getChildEvent() === null) {
150
-			if (isset($parsedParameters['user'])) {
151
-				// Couldn't group by calendar, maybe we can group by users
152
-				$event = $this->eventMerger->mergeEvents('user', $event, $previousEvent);
153
-			} else if (isset($parsedParameters['group'])) {
154
-				// Couldn't group by calendar, maybe we can group by groups
155
-				$event = $this->eventMerger->mergeEvents('group', $event, $previousEvent);
156
-			}
157
-		}
149
+        if ($event->getChildEvent() === null) {
150
+            if (isset($parsedParameters['user'])) {
151
+                // Couldn't group by calendar, maybe we can group by users
152
+                $event = $this->eventMerger->mergeEvents('user', $event, $previousEvent);
153
+            } else if (isset($parsedParameters['group'])) {
154
+                // Couldn't group by calendar, maybe we can group by groups
155
+                $event = $this->eventMerger->mergeEvents('group', $event, $previousEvent);
156
+            }
157
+        }
158 158
 
159
-		return $event;
160
-	}
159
+        return $event;
160
+    }
161 161
 
162
-	/**
163
-	 * @param IEvent $event
164
-	 * @return array
165
-	 */
166
-	protected function getParameters(IEvent $event) {
167
-		$subject = $event->getSubject();
168
-		$parameters = $event->getSubjectParameters();
162
+    /**
163
+     * @param IEvent $event
164
+     * @return array
165
+     */
166
+    protected function getParameters(IEvent $event) {
167
+        $subject = $event->getSubject();
168
+        $parameters = $event->getSubjectParameters();
169 169
 
170
-		// Nextcloud 13+
171
-		if (isset($parameters['calendar'])) {
172
-			switch ($subject) {
173
-				case self::SUBJECT_ADD:
174
-				case self::SUBJECT_ADD . '_self':
175
-				case self::SUBJECT_DELETE:
176
-				case self::SUBJECT_DELETE . '_self':
177
-				case self::SUBJECT_UPDATE:
178
-				case self::SUBJECT_UPDATE . '_self':
179
-				case self::SUBJECT_SHARE_USER:
180
-				case self::SUBJECT_UNSHARE_USER:
181
-				case self::SUBJECT_UNSHARE_USER . '_self':
182
-					return [
183
-						'actor' => $this->generateUserParameter($parameters['actor']),
184
-						'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
185
-					];
186
-				case self::SUBJECT_SHARE_USER . '_you':
187
-				case self::SUBJECT_UNSHARE_USER . '_you':
188
-					return [
189
-						'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
190
-						'user' => $this->generateUserParameter($parameters['user']),
191
-					];
192
-				case self::SUBJECT_SHARE_USER . '_by':
193
-				case self::SUBJECT_UNSHARE_USER . '_by':
194
-					return [
195
-						'actor' => $this->generateUserParameter($parameters['actor']),
196
-						'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
197
-						'user' => $this->generateUserParameter($parameters['user']),
198
-					];
199
-				case self::SUBJECT_SHARE_GROUP . '_you':
200
-				case self::SUBJECT_UNSHARE_GROUP . '_you':
201
-					return [
202
-						'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
203
-						'group' => $this->generateGroupParameter($parameters['group']),
204
-					];
205
-				case self::SUBJECT_SHARE_GROUP . '_by':
206
-				case self::SUBJECT_UNSHARE_GROUP . '_by':
207
-					return [
208
-						'actor' => $this->generateUserParameter($parameters['actor']),
209
-						'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
210
-						'group' => $this->generateGroupParameter($parameters['group']),
211
-					];
212
-			}
213
-		}
170
+        // Nextcloud 13+
171
+        if (isset($parameters['calendar'])) {
172
+            switch ($subject) {
173
+                case self::SUBJECT_ADD:
174
+                case self::SUBJECT_ADD . '_self':
175
+                case self::SUBJECT_DELETE:
176
+                case self::SUBJECT_DELETE . '_self':
177
+                case self::SUBJECT_UPDATE:
178
+                case self::SUBJECT_UPDATE . '_self':
179
+                case self::SUBJECT_SHARE_USER:
180
+                case self::SUBJECT_UNSHARE_USER:
181
+                case self::SUBJECT_UNSHARE_USER . '_self':
182
+                    return [
183
+                        'actor' => $this->generateUserParameter($parameters['actor']),
184
+                        'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
185
+                    ];
186
+                case self::SUBJECT_SHARE_USER . '_you':
187
+                case self::SUBJECT_UNSHARE_USER . '_you':
188
+                    return [
189
+                        'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
190
+                        'user' => $this->generateUserParameter($parameters['user']),
191
+                    ];
192
+                case self::SUBJECT_SHARE_USER . '_by':
193
+                case self::SUBJECT_UNSHARE_USER . '_by':
194
+                    return [
195
+                        'actor' => $this->generateUserParameter($parameters['actor']),
196
+                        'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
197
+                        'user' => $this->generateUserParameter($parameters['user']),
198
+                    ];
199
+                case self::SUBJECT_SHARE_GROUP . '_you':
200
+                case self::SUBJECT_UNSHARE_GROUP . '_you':
201
+                    return [
202
+                        'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
203
+                        'group' => $this->generateGroupParameter($parameters['group']),
204
+                    ];
205
+                case self::SUBJECT_SHARE_GROUP . '_by':
206
+                case self::SUBJECT_UNSHARE_GROUP . '_by':
207
+                    return [
208
+                        'actor' => $this->generateUserParameter($parameters['actor']),
209
+                        'calendar' => $this->generateCalendarParameter($parameters['calendar'], $this->l),
210
+                        'group' => $this->generateGroupParameter($parameters['group']),
211
+                    ];
212
+            }
213
+        }
214 214
 
215
-		// Legacy - Do NOT Remove unless necessary
216
-		// Removing this will break parsing of activities that were created on
217
-		// Nextcloud 12, so we should keep this as long as it's acceptable.
218
-		// Otherwise if people upgrade over multiple releases in a short period,
219
-		// they will get the dead entries in their stream.
220
-		switch ($subject) {
221
-			case self::SUBJECT_ADD:
222
-			case self::SUBJECT_ADD . '_self':
223
-			case self::SUBJECT_DELETE:
224
-			case self::SUBJECT_DELETE . '_self':
225
-			case self::SUBJECT_UPDATE:
226
-			case self::SUBJECT_UPDATE . '_self':
227
-			case self::SUBJECT_PUBLISH . '_self':
228
-			case self::SUBJECT_UNPUBLISH . '_self':
229
-			case self::SUBJECT_SHARE_USER:
230
-			case self::SUBJECT_UNSHARE_USER:
231
-			case self::SUBJECT_UNSHARE_USER . '_self':
232
-				return [
233
-					'actor' => $this->generateUserParameter($parameters[0]),
234
-					'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
235
-				];
236
-			case self::SUBJECT_SHARE_USER . '_you':
237
-			case self::SUBJECT_UNSHARE_USER . '_you':
238
-				return [
239
-					'user' => $this->generateUserParameter($parameters[0]),
240
-					'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
241
-				];
242
-			case self::SUBJECT_SHARE_USER . '_by':
243
-			case self::SUBJECT_UNSHARE_USER . '_by':
244
-				return [
245
-					'user' => $this->generateUserParameter($parameters[0]),
246
-					'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
247
-					'actor' => $this->generateUserParameter($parameters[2]),
248
-				];
249
-			case self::SUBJECT_SHARE_GROUP . '_you':
250
-			case self::SUBJECT_UNSHARE_GROUP . '_you':
251
-				return [
252
-					'group' => $this->generateGroupParameter($parameters[0]),
253
-					'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
254
-				];
255
-			case self::SUBJECT_SHARE_GROUP . '_by':
256
-			case self::SUBJECT_UNSHARE_GROUP . '_by':
257
-				return [
258
-					'group' => $this->generateGroupParameter($parameters[0]),
259
-					'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
260
-					'actor' => $this->generateUserParameter($parameters[2]),
261
-				];
262
-		}
215
+        // Legacy - Do NOT Remove unless necessary
216
+        // Removing this will break parsing of activities that were created on
217
+        // Nextcloud 12, so we should keep this as long as it's acceptable.
218
+        // Otherwise if people upgrade over multiple releases in a short period,
219
+        // they will get the dead entries in their stream.
220
+        switch ($subject) {
221
+            case self::SUBJECT_ADD:
222
+            case self::SUBJECT_ADD . '_self':
223
+            case self::SUBJECT_DELETE:
224
+            case self::SUBJECT_DELETE . '_self':
225
+            case self::SUBJECT_UPDATE:
226
+            case self::SUBJECT_UPDATE . '_self':
227
+            case self::SUBJECT_PUBLISH . '_self':
228
+            case self::SUBJECT_UNPUBLISH . '_self':
229
+            case self::SUBJECT_SHARE_USER:
230
+            case self::SUBJECT_UNSHARE_USER:
231
+            case self::SUBJECT_UNSHARE_USER . '_self':
232
+                return [
233
+                    'actor' => $this->generateUserParameter($parameters[0]),
234
+                    'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
235
+                ];
236
+            case self::SUBJECT_SHARE_USER . '_you':
237
+            case self::SUBJECT_UNSHARE_USER . '_you':
238
+                return [
239
+                    'user' => $this->generateUserParameter($parameters[0]),
240
+                    'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
241
+                ];
242
+            case self::SUBJECT_SHARE_USER . '_by':
243
+            case self::SUBJECT_UNSHARE_USER . '_by':
244
+                return [
245
+                    'user' => $this->generateUserParameter($parameters[0]),
246
+                    'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
247
+                    'actor' => $this->generateUserParameter($parameters[2]),
248
+                ];
249
+            case self::SUBJECT_SHARE_GROUP . '_you':
250
+            case self::SUBJECT_UNSHARE_GROUP . '_you':
251
+                return [
252
+                    'group' => $this->generateGroupParameter($parameters[0]),
253
+                    'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
254
+                ];
255
+            case self::SUBJECT_SHARE_GROUP . '_by':
256
+            case self::SUBJECT_UNSHARE_GROUP . '_by':
257
+                return [
258
+                    'group' => $this->generateGroupParameter($parameters[0]),
259
+                    'calendar' => $this->generateLegacyCalendarParameter((int)$event->getObjectId(), $parameters[1]),
260
+                    'actor' => $this->generateUserParameter($parameters[2]),
261
+                ];
262
+        }
263 263
 
264
-		throw new \InvalidArgumentException();
265
-	}
264
+        throw new \InvalidArgumentException();
265
+    }
266 266
 }
Please login to merge, or discard this patch.
settings/templates/users/main.php 2 patches
Indentation   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -7,24 +7,24 @@
 block discarded – undo
7 7
  */
8 8
 
9 9
 script('settings', [
10
-	'users/deleteHandler',
11
-	'users/filter',
12
-	'users/users',
13
-	'users/groups'
10
+    'users/deleteHandler',
11
+    'users/filter',
12
+    'users/users',
13
+    'users/groups'
14 14
 ]);
15 15
 script('core', [
16
-	'multiselect',
17
-	'singleselect'
16
+    'multiselect',
17
+    'singleselect'
18 18
 ]);
19 19
 style('settings', 'settings');
20 20
 
21 21
 $userlistParams = array();
22 22
 $allGroups=array();
23 23
 foreach($_["adminGroup"] as $group) {
24
-	$allGroups[$group['id']] = array('displayName' => $group['name']);
24
+    $allGroups[$group['id']] = array('displayName' => $group['name']);
25 25
 }
26 26
 foreach($_["groups"] as $group) {
27
-	$allGroups[$group['id']] = array('displayName' => $group['name']);
27
+    $allGroups[$group['id']] = array('displayName' => $group['name']);
28 28
 }
29 29
 $userlistParams['subadmingroups'] = $allGroups;
30 30
 $userlistParams['allGroups'] = json_encode($allGroups);
Please login to merge, or discard this patch.
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -19,11 +19,11 @@  discard block
 block discarded – undo
19 19
 style('settings', 'settings');
20 20
 
21 21
 $userlistParams = array();
22
-$allGroups=array();
23
-foreach($_["adminGroup"] as $group) {
22
+$allGroups = array();
23
+foreach ($_["adminGroup"] as $group) {
24 24
 	$allGroups[$group['id']] = array('displayName' => $group['name']);
25 25
 }
26
-foreach($_["groups"] as $group) {
26
+foreach ($_["groups"] as $group) {
27 27
 	$allGroups[$group['id']] = array('displayName' => $group['name']);
28 28
 }
29 29
 $userlistParams['subadmingroups'] = $allGroups;
@@ -40,7 +40,7 @@  discard block
 block discarded – undo
40 40
 	<?php print_unescaped($this->inc('users/part.grouplist')); ?>
41 41
 	<div id="app-settings">
42 42
 		<div id="app-settings-header">
43
-			<button class="settings-button" tabindex="0" data-apps-slide-toggle="#app-settings-content"><?php p($l->t('Settings'));?></button>
43
+			<button class="settings-button" tabindex="0" data-apps-slide-toggle="#app-settings-content"><?php p($l->t('Settings')); ?></button>
44 44
 		</div>
45 45
 		<div id="app-settings-content">
46 46
 			<?php print_unescaped($this->inc('users/part.setquota')); ?>
Please login to merge, or discard this patch.
lib/private/SubAdmin.php 2 patches
Indentation   +256 added lines, -256 removed lines patch added patch discarded remove patch
@@ -37,262 +37,262 @@
 block discarded – undo
37 37
 
38 38
 class SubAdmin extends PublicEmitter {
39 39
 
40
-	/** @var IUserManager */
41
-	private $userManager;
42
-
43
-	/** @var IGroupManager */
44
-	private $groupManager;
45
-
46
-	/** @var IDBConnection */
47
-	private $dbConn;
48
-
49
-	/**
50
-	 * @param IUserManager $userManager
51
-	 * @param IGroupManager $groupManager
52
-	 * @param IDBConnection $dbConn
53
-	 */
54
-	public function __construct(IUserManager $userManager,
55
-	                            IGroupManager $groupManager,
56
-								IDBConnection $dbConn) {
57
-		$this->userManager = $userManager;
58
-		$this->groupManager = $groupManager;
59
-		$this->dbConn = $dbConn;
60
-
61
-		$this->userManager->listen('\OC\User', 'postDelete', function($user) {
62
-			$this->post_deleteUser($user);
63
-		});
64
-		$this->groupManager->listen('\OC\Group', 'postDelete', function($group) {
65
-			$this->post_deleteGroup($group);
66
-		});
67
-	}
68
-
69
-	/**
70
-	 * add a SubAdmin
71
-	 * @param IUser $user user to be SubAdmin
72
-	 * @param IGroup $group group $user becomes subadmin of
73
-	 * @return bool
74
-	 */
75
-	public function createSubAdmin(IUser $user, IGroup $group) {
76
-		$qb = $this->dbConn->getQueryBuilder();
77
-
78
-		$qb->insert('group_admin')
79
-			->values([
80
-				'gid' => $qb->createNamedParameter($group->getGID()),
81
-				'uid' => $qb->createNamedParameter($user->getUID())
82
-			])
83
-			->execute();
84
-
85
-		$this->emit('\OC\SubAdmin', 'postCreateSubAdmin', [$user, $group]);
86
-		\OC_Hook::emit("OC_SubAdmin", "post_createSubAdmin", ["gid" => $group->getGID()]);
87
-		return true;
88
-	}
89
-
90
-	/**
91
-	 * delete a SubAdmin
92
-	 * @param IUser $user the user that is the SubAdmin
93
-	 * @param IGroup $group the group
94
-	 * @return bool
95
-	 */
96
-	public function deleteSubAdmin(IUser $user, IGroup $group) {
97
-		$qb = $this->dbConn->getQueryBuilder();
98
-
99
-		$qb->delete('group_admin')
100
-			->where($qb->expr()->eq('gid', $qb->createNamedParameter($group->getGID())))
101
-			->andWhere($qb->expr()->eq('uid', $qb->createNamedParameter($user->getUID())))
102
-			->execute();
103
-
104
-		$this->emit('\OC\SubAdmin', 'postDeleteSubAdmin', [$user, $group]);
105
-		\OC_Hook::emit("OC_SubAdmin", "post_deleteSubAdmin", ["gid" => $group->getGID()]);
106
-		return true;
107
-	}
108
-
109
-	/**
110
-	 * get groups of a SubAdmin
111
-	 * @param IUser $user the SubAdmin
112
-	 * @return IGroup[]
113
-	 */
114
-	public function getSubAdminsGroups(IUser $user) {
115
-		$qb = $this->dbConn->getQueryBuilder();
116
-
117
-		$result = $qb->select('gid')
118
-			->from('group_admin')
119
-			->where($qb->expr()->eq('uid', $qb->createNamedParameter($user->getUID())))
120
-			->execute();
121
-
122
-		$groups = [];
123
-		while($row = $result->fetch()) {
124
-			$group = $this->groupManager->get($row['gid']);
125
-			if(!is_null($group)) {
126
-				$groups[$group->getGID()] = $group;
127
-			}
128
-		}
129
-		$result->closeCursor();
130
-
131
-		return $groups;
132
-	}
133
-
134
-	/**
135
-	 * get an array of groupid and displayName for a user
136
-	 * @param IUser $user
137
-	 * @return array ['displayName' => displayname]
138
-	 */
139
-	public function getSubAdminsGroupsName(IUser $user) {
140
-		return array_map(function($group) {
141
-			return array('displayName' => $group->getDisplayName());
142
-		}, $this->getSubAdminsGroups($user));
143
-	}
144
-
145
-	/**
146
-	 * get SubAdmins of a group
147
-	 * @param IGroup $group the group
148
-	 * @return IUser[]
149
-	 */
150
-	public function getGroupsSubAdmins(IGroup $group) {
151
-		$qb = $this->dbConn->getQueryBuilder();
152
-
153
-		$result = $qb->select('uid')
154
-			->from('group_admin')
155
-			->where($qb->expr()->eq('gid', $qb->createNamedParameter($group->getGID())))
156
-			->execute();
157
-
158
-		$users = [];
159
-		while($row = $result->fetch()) {
160
-			$user = $this->userManager->get($row['uid']);
161
-			if(!is_null($user)) {
162
-				$users[] = $user;
163
-			}
164
-		}
165
-		$result->closeCursor();
166
-
167
-		return $users;
168
-	}
169
-
170
-	/**
171
-	 * get all SubAdmins
172
-	 * @return array
173
-	 */
174
-	public function getAllSubAdmins() {
175
-		$qb = $this->dbConn->getQueryBuilder();
176
-
177
-		$result = $qb->select('*')
178
-			->from('group_admin')
179
-			->execute();
180
-
181
-		$subadmins = [];
182
-		while($row = $result->fetch()) {
183
-			$user = $this->userManager->get($row['uid']);
184
-			$group = $this->groupManager->get($row['gid']);
185
-			if(!is_null($user) && !is_null($group)) {
186
-				$subadmins[] = [
187
-					'user'  => $user,
188
-					'group' => $group
189
-				];
190
-			}
191
-		}
192
-		$result->closeCursor();
193
-
194
-		return $subadmins;
195
-	}
196
-
197
-	/**
198
-	 * checks if a user is a SubAdmin of a group
199
-	 * @param IUser $user
200
-	 * @param IGroup $group
201
-	 * @return bool
202
-	 */
203
-	public function isSubAdminOfGroup(IUser $user, IGroup $group) {
204
-		$qb = $this->dbConn->getQueryBuilder();
205
-
206
-		/*
40
+    /** @var IUserManager */
41
+    private $userManager;
42
+
43
+    /** @var IGroupManager */
44
+    private $groupManager;
45
+
46
+    /** @var IDBConnection */
47
+    private $dbConn;
48
+
49
+    /**
50
+     * @param IUserManager $userManager
51
+     * @param IGroupManager $groupManager
52
+     * @param IDBConnection $dbConn
53
+     */
54
+    public function __construct(IUserManager $userManager,
55
+                                IGroupManager $groupManager,
56
+                                IDBConnection $dbConn) {
57
+        $this->userManager = $userManager;
58
+        $this->groupManager = $groupManager;
59
+        $this->dbConn = $dbConn;
60
+
61
+        $this->userManager->listen('\OC\User', 'postDelete', function($user) {
62
+            $this->post_deleteUser($user);
63
+        });
64
+        $this->groupManager->listen('\OC\Group', 'postDelete', function($group) {
65
+            $this->post_deleteGroup($group);
66
+        });
67
+    }
68
+
69
+    /**
70
+     * add a SubAdmin
71
+     * @param IUser $user user to be SubAdmin
72
+     * @param IGroup $group group $user becomes subadmin of
73
+     * @return bool
74
+     */
75
+    public function createSubAdmin(IUser $user, IGroup $group) {
76
+        $qb = $this->dbConn->getQueryBuilder();
77
+
78
+        $qb->insert('group_admin')
79
+            ->values([
80
+                'gid' => $qb->createNamedParameter($group->getGID()),
81
+                'uid' => $qb->createNamedParameter($user->getUID())
82
+            ])
83
+            ->execute();
84
+
85
+        $this->emit('\OC\SubAdmin', 'postCreateSubAdmin', [$user, $group]);
86
+        \OC_Hook::emit("OC_SubAdmin", "post_createSubAdmin", ["gid" => $group->getGID()]);
87
+        return true;
88
+    }
89
+
90
+    /**
91
+     * delete a SubAdmin
92
+     * @param IUser $user the user that is the SubAdmin
93
+     * @param IGroup $group the group
94
+     * @return bool
95
+     */
96
+    public function deleteSubAdmin(IUser $user, IGroup $group) {
97
+        $qb = $this->dbConn->getQueryBuilder();
98
+
99
+        $qb->delete('group_admin')
100
+            ->where($qb->expr()->eq('gid', $qb->createNamedParameter($group->getGID())))
101
+            ->andWhere($qb->expr()->eq('uid', $qb->createNamedParameter($user->getUID())))
102
+            ->execute();
103
+
104
+        $this->emit('\OC\SubAdmin', 'postDeleteSubAdmin', [$user, $group]);
105
+        \OC_Hook::emit("OC_SubAdmin", "post_deleteSubAdmin", ["gid" => $group->getGID()]);
106
+        return true;
107
+    }
108
+
109
+    /**
110
+     * get groups of a SubAdmin
111
+     * @param IUser $user the SubAdmin
112
+     * @return IGroup[]
113
+     */
114
+    public function getSubAdminsGroups(IUser $user) {
115
+        $qb = $this->dbConn->getQueryBuilder();
116
+
117
+        $result = $qb->select('gid')
118
+            ->from('group_admin')
119
+            ->where($qb->expr()->eq('uid', $qb->createNamedParameter($user->getUID())))
120
+            ->execute();
121
+
122
+        $groups = [];
123
+        while($row = $result->fetch()) {
124
+            $group = $this->groupManager->get($row['gid']);
125
+            if(!is_null($group)) {
126
+                $groups[$group->getGID()] = $group;
127
+            }
128
+        }
129
+        $result->closeCursor();
130
+
131
+        return $groups;
132
+    }
133
+
134
+    /**
135
+     * get an array of groupid and displayName for a user
136
+     * @param IUser $user
137
+     * @return array ['displayName' => displayname]
138
+     */
139
+    public function getSubAdminsGroupsName(IUser $user) {
140
+        return array_map(function($group) {
141
+            return array('displayName' => $group->getDisplayName());
142
+        }, $this->getSubAdminsGroups($user));
143
+    }
144
+
145
+    /**
146
+     * get SubAdmins of a group
147
+     * @param IGroup $group the group
148
+     * @return IUser[]
149
+     */
150
+    public function getGroupsSubAdmins(IGroup $group) {
151
+        $qb = $this->dbConn->getQueryBuilder();
152
+
153
+        $result = $qb->select('uid')
154
+            ->from('group_admin')
155
+            ->where($qb->expr()->eq('gid', $qb->createNamedParameter($group->getGID())))
156
+            ->execute();
157
+
158
+        $users = [];
159
+        while($row = $result->fetch()) {
160
+            $user = $this->userManager->get($row['uid']);
161
+            if(!is_null($user)) {
162
+                $users[] = $user;
163
+            }
164
+        }
165
+        $result->closeCursor();
166
+
167
+        return $users;
168
+    }
169
+
170
+    /**
171
+     * get all SubAdmins
172
+     * @return array
173
+     */
174
+    public function getAllSubAdmins() {
175
+        $qb = $this->dbConn->getQueryBuilder();
176
+
177
+        $result = $qb->select('*')
178
+            ->from('group_admin')
179
+            ->execute();
180
+
181
+        $subadmins = [];
182
+        while($row = $result->fetch()) {
183
+            $user = $this->userManager->get($row['uid']);
184
+            $group = $this->groupManager->get($row['gid']);
185
+            if(!is_null($user) && !is_null($group)) {
186
+                $subadmins[] = [
187
+                    'user'  => $user,
188
+                    'group' => $group
189
+                ];
190
+            }
191
+        }
192
+        $result->closeCursor();
193
+
194
+        return $subadmins;
195
+    }
196
+
197
+    /**
198
+     * checks if a user is a SubAdmin of a group
199
+     * @param IUser $user
200
+     * @param IGroup $group
201
+     * @return bool
202
+     */
203
+    public function isSubAdminOfGroup(IUser $user, IGroup $group) {
204
+        $qb = $this->dbConn->getQueryBuilder();
205
+
206
+        /*
207 207
 		 * Primary key is ('gid', 'uid') so max 1 result possible here
208 208
 		 */
209
-		$result = $qb->select('*')
210
-			->from('group_admin')
211
-			->where($qb->expr()->eq('gid', $qb->createNamedParameter($group->getGID())))
212
-			->andWhere($qb->expr()->eq('uid', $qb->createNamedParameter($user->getUID())))
213
-			->execute();
214
-
215
-		$fetch =  $result->fetch();
216
-		$result->closeCursor();
217
-		$result = !empty($fetch) ? true : false;
218
-
219
-		return $result;
220
-	}
221
-
222
-	/**
223
-	 * checks if a user is a SubAdmin
224
-	 * @param IUser $user
225
-	 * @return bool
226
-	 */
227
-	public function isSubAdmin(IUser $user) {
228
-		// Check if the user is already an admin
229
-		if ($this->groupManager->isAdmin($user->getUID())) {
230
-			return true;
231
-		}
232
-
233
-		$qb = $this->dbConn->getQueryBuilder();
234
-
235
-		$result = $qb->select('gid')
236
-			->from('group_admin')
237
-			->andWhere($qb->expr()->eq('uid', $qb->createNamedParameter($user->getUID())))
238
-			->setMaxResults(1)
239
-			->execute();
240
-
241
-		$isSubAdmin = $result->fetch();
242
-		$result->closeCursor();
243
-
244
-		return $isSubAdmin !== false;
245
-	}
246
-
247
-	/**
248
-	 * checks if a user is a accessible by a subadmin
249
-	 * @param IUser $subadmin
250
-	 * @param IUser $user
251
-	 * @return bool
252
-	 */
253
-	public function isUserAccessible($subadmin, $user) {
254
-		if(!$this->isSubAdmin($subadmin)) {
255
-			return false;
256
-		}
257
-		if($this->groupManager->isAdmin($user->getUID())) {
258
-			return false;
259
-		}
260
-		$accessibleGroups = $this->getSubAdminsGroups($subadmin);
261
-		foreach($accessibleGroups as $accessibleGroup) {
262
-			if($accessibleGroup->inGroup($user)) {
263
-				return true;
264
-			}
265
-		}
266
-		return false;
267
-	}
268
-
269
-	/**
270
-	 * delete all SubAdmins by $user
271
-	 * @param IUser $user
272
-	 * @return boolean
273
-	 */
274
-	private function post_deleteUser($user) {
275
-		$qb = $this->dbConn->getQueryBuilder();
276
-
277
-		$qb->delete('group_admin')
278
-			->where($qb->expr()->eq('uid', $qb->createNamedParameter($user->getUID())))
279
-			->execute();
280
-
281
-		return true;
282
-	}
283
-
284
-	/**
285
-	 * delete all SubAdmins by $group
286
-	 * @param IGroup $group
287
-	 * @return boolean
288
-	 */
289
-	private function post_deleteGroup($group) {
290
-		$qb = $this->dbConn->getQueryBuilder();
291
-
292
-		$qb->delete('group_admin')
293
-			->where($qb->expr()->eq('gid', $qb->createNamedParameter($group->getGID())))
294
-			->execute();
295
-
296
-		return true;
297
-	}
209
+        $result = $qb->select('*')
210
+            ->from('group_admin')
211
+            ->where($qb->expr()->eq('gid', $qb->createNamedParameter($group->getGID())))
212
+            ->andWhere($qb->expr()->eq('uid', $qb->createNamedParameter($user->getUID())))
213
+            ->execute();
214
+
215
+        $fetch =  $result->fetch();
216
+        $result->closeCursor();
217
+        $result = !empty($fetch) ? true : false;
218
+
219
+        return $result;
220
+    }
221
+
222
+    /**
223
+     * checks if a user is a SubAdmin
224
+     * @param IUser $user
225
+     * @return bool
226
+     */
227
+    public function isSubAdmin(IUser $user) {
228
+        // Check if the user is already an admin
229
+        if ($this->groupManager->isAdmin($user->getUID())) {
230
+            return true;
231
+        }
232
+
233
+        $qb = $this->dbConn->getQueryBuilder();
234
+
235
+        $result = $qb->select('gid')
236
+            ->from('group_admin')
237
+            ->andWhere($qb->expr()->eq('uid', $qb->createNamedParameter($user->getUID())))
238
+            ->setMaxResults(1)
239
+            ->execute();
240
+
241
+        $isSubAdmin = $result->fetch();
242
+        $result->closeCursor();
243
+
244
+        return $isSubAdmin !== false;
245
+    }
246
+
247
+    /**
248
+     * checks if a user is a accessible by a subadmin
249
+     * @param IUser $subadmin
250
+     * @param IUser $user
251
+     * @return bool
252
+     */
253
+    public function isUserAccessible($subadmin, $user) {
254
+        if(!$this->isSubAdmin($subadmin)) {
255
+            return false;
256
+        }
257
+        if($this->groupManager->isAdmin($user->getUID())) {
258
+            return false;
259
+        }
260
+        $accessibleGroups = $this->getSubAdminsGroups($subadmin);
261
+        foreach($accessibleGroups as $accessibleGroup) {
262
+            if($accessibleGroup->inGroup($user)) {
263
+                return true;
264
+            }
265
+        }
266
+        return false;
267
+    }
268
+
269
+    /**
270
+     * delete all SubAdmins by $user
271
+     * @param IUser $user
272
+     * @return boolean
273
+     */
274
+    private function post_deleteUser($user) {
275
+        $qb = $this->dbConn->getQueryBuilder();
276
+
277
+        $qb->delete('group_admin')
278
+            ->where($qb->expr()->eq('uid', $qb->createNamedParameter($user->getUID())))
279
+            ->execute();
280
+
281
+        return true;
282
+    }
283
+
284
+    /**
285
+     * delete all SubAdmins by $group
286
+     * @param IGroup $group
287
+     * @return boolean
288
+     */
289
+    private function post_deleteGroup($group) {
290
+        $qb = $this->dbConn->getQueryBuilder();
291
+
292
+        $qb->delete('group_admin')
293
+            ->where($qb->expr()->eq('gid', $qb->createNamedParameter($group->getGID())))
294
+            ->execute();
295
+
296
+        return true;
297
+    }
298 298
 }
Please login to merge, or discard this patch.
Spacing   +11 added lines, -11 removed lines patch added patch discarded remove patch
@@ -120,9 +120,9 @@  discard block
 block discarded – undo
120 120
 			->execute();
121 121
 
122 122
 		$groups = [];
123
-		while($row = $result->fetch()) {
123
+		while ($row = $result->fetch()) {
124 124
 			$group = $this->groupManager->get($row['gid']);
125
-			if(!is_null($group)) {
125
+			if (!is_null($group)) {
126 126
 				$groups[$group->getGID()] = $group;
127 127
 			}
128 128
 		}
@@ -156,9 +156,9 @@  discard block
 block discarded – undo
156 156
 			->execute();
157 157
 
158 158
 		$users = [];
159
-		while($row = $result->fetch()) {
159
+		while ($row = $result->fetch()) {
160 160
 			$user = $this->userManager->get($row['uid']);
161
-			if(!is_null($user)) {
161
+			if (!is_null($user)) {
162 162
 				$users[] = $user;
163 163
 			}
164 164
 		}
@@ -179,10 +179,10 @@  discard block
 block discarded – undo
179 179
 			->execute();
180 180
 
181 181
 		$subadmins = [];
182
-		while($row = $result->fetch()) {
182
+		while ($row = $result->fetch()) {
183 183
 			$user = $this->userManager->get($row['uid']);
184 184
 			$group = $this->groupManager->get($row['gid']);
185
-			if(!is_null($user) && !is_null($group)) {
185
+			if (!is_null($user) && !is_null($group)) {
186 186
 				$subadmins[] = [
187 187
 					'user'  => $user,
188 188
 					'group' => $group
@@ -212,7 +212,7 @@  discard block
 block discarded – undo
212 212
 			->andWhere($qb->expr()->eq('uid', $qb->createNamedParameter($user->getUID())))
213 213
 			->execute();
214 214
 
215
-		$fetch =  $result->fetch();
215
+		$fetch = $result->fetch();
216 216
 		$result->closeCursor();
217 217
 		$result = !empty($fetch) ? true : false;
218 218
 
@@ -251,15 +251,15 @@  discard block
 block discarded – undo
251 251
 	 * @return bool
252 252
 	 */
253 253
 	public function isUserAccessible($subadmin, $user) {
254
-		if(!$this->isSubAdmin($subadmin)) {
254
+		if (!$this->isSubAdmin($subadmin)) {
255 255
 			return false;
256 256
 		}
257
-		if($this->groupManager->isAdmin($user->getUID())) {
257
+		if ($this->groupManager->isAdmin($user->getUID())) {
258 258
 			return false;
259 259
 		}
260 260
 		$accessibleGroups = $this->getSubAdminsGroups($subadmin);
261
-		foreach($accessibleGroups as $accessibleGroup) {
262
-			if($accessibleGroup->inGroup($user)) {
261
+		foreach ($accessibleGroups as $accessibleGroup) {
262
+			if ($accessibleGroup->inGroup($user)) {
263 263
 				return true;
264 264
 			}
265 265
 		}
Please login to merge, or discard this patch.