Completed
Pull Request — master (#10059)
by Georg
15:50
created
apps/systemtags/templates/list.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -18,14 +18,14 @@
 block discarded – undo
18 18
 		<tr>
19 19
 			<th id='headerName' class="hidden column-name">
20 20
 				<div id="headerName-container">
21
-					<a class="name sort columntitle" data-sort="name"><span><?php p($l->t( 'Name' )); ?></span><span class="sort-indicator"></span></a>
21
+					<a class="name sort columntitle" data-sort="name"><span><?php p($l->t('Name')); ?></span><span class="sort-indicator"></span></a>
22 22
 				</div>
23 23
 			</th>
24 24
 			<th id="headerSize" class="hidden column-size">
25 25
 				<a class="size sort columntitle" data-sort="size"><span><?php p($l->t('Size')); ?></span><span class="sort-indicator"></span></a>
26 26
 			</th>
27 27
 			<th id="headerDate" class="hidden column-mtime">
28
-				<a id="modified" class="columntitle" data-sort="mtime"><span><?php p($l->t( 'Modified' )); ?></span><span class="sort-indicator"></span></a>
28
+				<a id="modified" class="columntitle" data-sort="mtime"><span><?php p($l->t('Modified')); ?></span><span class="sort-indicator"></span></a>
29 29
 			</th>
30 30
 		</tr>
31 31
 	</thead>
Please login to merge, or discard this patch.
apps/systemtags/lib/Activity/Provider.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -279,7 +279,7 @@
 block discarded – undo
279 279
 		if ($tagData === null) {
280 280
 			list($name, $status) = explode('|||', substr($parameter, 3, -3));
281 281
 			$tagData = [
282
-				'id' => 0,// No way to recover the ID
282
+				'id' => 0, // No way to recover the ID
283 283
 				'name' => $name,
284 284
 				'assignable' => $status === 'assignable',
285 285
 				'visible' => $status !== 'invisible',
Please login to merge, or discard this patch.
Indentation   +307 added lines, -307 removed lines patch added patch discarded remove patch
@@ -32,311 +32,311 @@
 block discarded – undo
32 32
 
33 33
 class Provider implements IProvider {
34 34
 
35
-	const CREATE_TAG = 'create_tag';
36
-	const UPDATE_TAG = 'update_tag';
37
-	const DELETE_TAG = 'delete_tag';
38
-
39
-	const ASSIGN_TAG = 'assign_tag';
40
-	const UNASSIGN_TAG = 'unassign_tag';
41
-
42
-	/** @var IFactory */
43
-	protected $languageFactory;
44
-
45
-	/** @var IL10N */
46
-	protected $l;
47
-
48
-	/** @var IURLGenerator */
49
-	protected $url;
50
-
51
-	/** @var IManager */
52
-	protected $activityManager;
53
-
54
-	/** @var IUserManager */
55
-	protected $userManager;
56
-
57
-	/** @var string[] */
58
-	protected $displayNames = [];
59
-
60
-	/**
61
-	 * @param IFactory $languageFactory
62
-	 * @param IURLGenerator $url
63
-	 * @param IManager $activityManager
64
-	 * @param IUserManager $userManager
65
-	 */
66
-	public function __construct(IFactory $languageFactory, IURLGenerator $url, IManager $activityManager, IUserManager $userManager) {
67
-		$this->languageFactory = $languageFactory;
68
-		$this->url = $url;
69
-		$this->activityManager = $activityManager;
70
-		$this->userManager = $userManager;
71
-	}
72
-
73
-	/**
74
-	 * @param string $language
75
-	 * @param IEvent $event
76
-	 * @param IEvent|null $previousEvent
77
-	 * @return IEvent
78
-	 * @throws \InvalidArgumentException
79
-	 * @since 11.0.0
80
-	 */
81
-	public function parse($language, IEvent $event, IEvent $previousEvent = null) {
82
-		if ($event->getApp() !== 'systemtags') {
83
-			throw new \InvalidArgumentException();
84
-		}
85
-
86
-		$this->l = $this->languageFactory->get('systemtags', $language);
87
-
88
-		if ($this->activityManager->isFormattingFilteredObject()) {
89
-			try {
90
-				return $this->parseShortVersion($event);
91
-			} catch (\InvalidArgumentException $e) {
92
-				// Ignore and simply use the long version...
93
-			}
94
-		}
95
-
96
-		return $this->parseLongVersion($event);
97
-	}
98
-
99
-	/**
100
-	 * @param IEvent $event
101
-	 * @return IEvent
102
-	 * @throws \InvalidArgumentException
103
-	 * @since 11.0.0
104
-	 */
105
-	public function parseShortVersion(IEvent $event) {
106
-		$parsedParameters = $this->getParameters($event);
107
-
108
-		if ($this->activityManager->getRequirePNG()) {
109
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/tag.png')));
110
-		} else {
111
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/tag.svg')));
112
-		}
113
-
114
-		if ($event->getSubject() === self::ASSIGN_TAG) {
115
-			if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
116
-				$event->setParsedSubject($this->l->t('Added system tag %1$s', [
117
-						$this->generatePlainSystemTag($parsedParameters['systemtag']),
118
-					]))
119
-					->setRichSubject($this->l->t('Added system tag {systemtag}'), [
120
-						'systemtag' => $parsedParameters['systemtag'],
121
-					]);
122
-			} else {
123
-				$event->setParsedSubject($this->l->t('%1$s added system tag %2$s', [
124
-						$parsedParameters['actor']['name'],
125
-						$this->generatePlainSystemTag($parsedParameters['systemtag']),
126
-					]))
127
-					->setRichSubject($this->l->t('{actor} added system tag {systemtag}'), [
128
-						'actor' => $parsedParameters['actor'],
129
-						'systemtag' => $parsedParameters['systemtag'],
130
-					]);
131
-			}
132
-		} else if ($event->getSubject() === self::UNASSIGN_TAG) {
133
-			if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
134
-				$event->setParsedSubject($this->l->t('Removed system tag %1$s', [
135
-						$this->generatePlainSystemTag($parsedParameters['systemtag']),
136
-					]))
137
-					->setRichSubject($this->l->t('Removed system tag {systemtag}'), [
138
-						'systemtag' => $parsedParameters['systemtag'],
139
-					]);
140
-			} else {
141
-				$event->setParsedSubject($this->l->t('%1$s removed system tag %2$s', [
142
-						$parsedParameters['actor']['name'],
143
-						$this->generatePlainSystemTag($parsedParameters['systemtag']),
144
-					]))
145
-					->setRichSubject($this->l->t('{actor} removed system tag {systemtag}'), [
146
-						'actor' => $parsedParameters['actor'],
147
-						'systemtag' => $parsedParameters['systemtag'],
148
-					]);
149
-			}
150
-		} else {
151
-			throw new \InvalidArgumentException();
152
-		}
153
-
154
-		return $event;
155
-	}
156
-
157
-	/**
158
-	 * @param IEvent $event
159
-	 * @return IEvent
160
-	 * @throws \InvalidArgumentException
161
-	 * @since 11.0.0
162
-	 */
163
-	public function parseLongVersion(IEvent $event) {
164
-		$parsedParameters = $this->getParameters($event);
165
-
166
-		if ($this->activityManager->getRequirePNG()) {
167
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/tag.png')));
168
-		} else {
169
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/tag.svg')));
170
-		}
171
-
172
-		if ($event->getSubject() === self::CREATE_TAG) {
173
-			if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
174
-				$event->setParsedSubject($this->l->t('You created system tag %1$s', [
175
-						$this->generatePlainSystemTag($parsedParameters['systemtag']),
176
-					]))
177
-					->setRichSubject($this->l->t('You created system tag {systemtag}'), $parsedParameters);
178
-			} else {
179
-				$event->setParsedSubject($this->l->t('%1$s created system tag %2$s', [
180
-						$parsedParameters['actor']['name'],
181
-						$this->generatePlainSystemTag($parsedParameters['systemtag']),
182
-					]))
183
-					->setRichSubject($this->l->t('{actor} created system tag {systemtag}'), $parsedParameters);
184
-			}
185
-		} else if ($event->getSubject() === self::DELETE_TAG) {
186
-			if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
187
-				$event->setParsedSubject($this->l->t('You deleted system tag %1$s', [
188
-						$this->generatePlainSystemTag($parsedParameters['systemtag']),
189
-					]))
190
-					->setRichSubject($this->l->t('You deleted system tag {systemtag}'), $parsedParameters);
191
-			} else {
192
-				$event->setParsedSubject($this->l->t('%1$s deleted system tag %2$s', [
193
-						$parsedParameters['actor']['name'],
194
-						$this->generatePlainSystemTag($parsedParameters['systemtag']),
195
-					]))
196
-					->setRichSubject($this->l->t('{actor} deleted system tag {systemtag}'), $parsedParameters);
197
-			}
198
-		} else if ($event->getSubject() === self::UPDATE_TAG) {
199
-			if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
200
-				$event->setParsedSubject($this->l->t('You updated system tag %2$s to %1$s', [
201
-						$this->generatePlainSystemTag($parsedParameters['newsystemtag']),
202
-						$this->generatePlainSystemTag($parsedParameters['oldsystemtag']),
203
-					]))
204
-					->setRichSubject($this->l->t('You updated system tag {oldsystemtag} to {newsystemtag}'), $parsedParameters);
205
-			} else {
206
-				$event->setParsedSubject($this->l->t('%1$s updated system tag %3$s to %2$s', [
207
-						$parsedParameters['actor']['name'],
208
-						$this->generatePlainSystemTag($parsedParameters['newsystemtag']),
209
-						$this->generatePlainSystemTag($parsedParameters['oldsystemtag']),
210
-					]))
211
-					->setRichSubject($this->l->t('{actor} updated system tag {oldsystemtag} to {newsystemtag}'), $parsedParameters);
212
-			}
213
-		} else if ($event->getSubject() === self::ASSIGN_TAG) {
214
-			if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
215
-				$event->setParsedSubject($this->l->t('You added system tag %2$s to %1$s', [
216
-						$parsedParameters['file']['path'],
217
-						$this->generatePlainSystemTag($parsedParameters['systemtag']),
218
-					]))
219
-					->setRichSubject($this->l->t('You added system tag {systemtag} to {file}'), $parsedParameters);
220
-			} else {
221
-				$event->setParsedSubject($this->l->t('%1$s added system tag %3$s to %2$s', [
222
-						$parsedParameters['actor']['name'],
223
-						$parsedParameters['file']['path'],
224
-						$this->generatePlainSystemTag($parsedParameters['systemtag']),
225
-					]))
226
-					->setRichSubject($this->l->t('{actor} added system tag {systemtag} to {file}'), $parsedParameters);
227
-			}
228
-		} else if ($event->getSubject() === self::UNASSIGN_TAG) {
229
-			if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
230
-				$event->setParsedSubject($this->l->t('You removed system tag %2$s from %1$s', [
231
-						$parsedParameters['file']['path'],
232
-						$this->generatePlainSystemTag($parsedParameters['systemtag']),
233
-					]))
234
-					->setRichSubject($this->l->t('You removed system tag {systemtag} from {file}'), $parsedParameters);
235
-			} else {
236
-				$event->setParsedSubject($this->l->t('%1$s removed system tag %3$s from %2$s', [
237
-						$parsedParameters['actor']['name'],
238
-						$parsedParameters['file']['path'],
239
-						$this->generatePlainSystemTag($parsedParameters['systemtag']),
240
-					]))
241
-					->setRichSubject($this->l->t('{actor} removed system tag {systemtag} from {file}'), $parsedParameters);
242
-			}
243
-		} else {
244
-			throw new \InvalidArgumentException();
245
-		}
246
-
247
-		return $event;
248
-	}
249
-
250
-	protected function getParameters(IEvent $event) {
251
-		$subject = $event->getSubject();
252
-		$parameters = $event->getSubjectParameters();
253
-
254
-		switch ($subject) {
255
-			case self::CREATE_TAG:
256
-			case self::DELETE_TAG:
257
-				return [
258
-					'actor' => $this->getUserParameter($parameters[0]),
259
-					'systemtag' => $this->getSystemTagParameter($parameters[1]),
260
-				];
261
-			case self::UPDATE_TAG:
262
-				return [
263
-					'actor' => $this->getUserParameter($parameters[0]),
264
-					'newsystemtag' => $this->getSystemTagParameter($parameters[1]),
265
-					'oldsystemtag' => $this->getSystemTagParameter($parameters[2]),
266
-				];
267
-			case self::ASSIGN_TAG:
268
-			case self::UNASSIGN_TAG:
269
-				return [
270
-					'actor' => $this->getUserParameter($parameters[0]),
271
-					'file' => $this->getFileParameter($event->getObjectId(), $parameters[1]),
272
-					'systemtag' => $this->getSystemTagParameter($parameters[2]),
273
-				];
274
-		}
275
-		return [];
276
-	}
277
-
278
-	protected function getFileParameter($id, $path) {
279
-		return [
280
-			'type' => 'file',
281
-			'id' => $id,
282
-			'name' => basename($path),
283
-			'path' => trim($path, '/'),
284
-		];
285
-	}
286
-
287
-	protected function getSystemTagParameter($parameter) {
288
-		$tagData = json_decode($parameter, true);
289
-		if ($tagData === null) {
290
-			list($name, $status) = explode('|||', substr($parameter, 3, -3));
291
-			$tagData = [
292
-				'id' => 0,// No way to recover the ID
293
-				'name' => $name,
294
-				'assignable' => $status === 'assignable',
295
-				'visible' => $status !== 'invisible',
296
-			];
297
-		}
298
-
299
-		return [
300
-			'type' => 'systemtag',
301
-			'id' => (int) $tagData['id'],
302
-			'name' => $tagData['name'],
303
-			'assignable' => $tagData['assignable'] ? '1' : '0',
304
-			'visibility' => $tagData['visible'] ? '1' : '0',
305
-		];
306
-	}
307
-
308
-	protected function getUserParameter($uid) {
309
-		if (!isset($this->displayNames[$uid])) {
310
-			$this->displayNames[$uid] = $this->getDisplayName($uid);
311
-		}
312
-
313
-		return [
314
-			'type' => 'user',
315
-			'id' => $uid,
316
-			'name' => $this->displayNames[$uid],
317
-		];
318
-	}
319
-
320
-	protected function generatePlainSystemTag(array $parameter) {
321
-		if ($parameter['assignable'] === '1') {
322
-			return $parameter['name'];
323
-		} else if ($parameter['visibility'] === '1') {
324
-			return $this->l->t('%s (restricted)', $parameter['name']);
325
-		} else {
326
-			return $this->l->t('%s (invisible)', $parameter['name']);
327
-		}
328
-	}
329
-
330
-	/**
331
-	 * @param string $uid
332
-	 * @return string
333
-	 */
334
-	protected function getDisplayName($uid) {
335
-		$user = $this->userManager->get($uid);
336
-		if ($user instanceof IUser) {
337
-			return $user->getDisplayName();
338
-		} else {
339
-			return $uid;
340
-		}
341
-	}
35
+    const CREATE_TAG = 'create_tag';
36
+    const UPDATE_TAG = 'update_tag';
37
+    const DELETE_TAG = 'delete_tag';
38
+
39
+    const ASSIGN_TAG = 'assign_tag';
40
+    const UNASSIGN_TAG = 'unassign_tag';
41
+
42
+    /** @var IFactory */
43
+    protected $languageFactory;
44
+
45
+    /** @var IL10N */
46
+    protected $l;
47
+
48
+    /** @var IURLGenerator */
49
+    protected $url;
50
+
51
+    /** @var IManager */
52
+    protected $activityManager;
53
+
54
+    /** @var IUserManager */
55
+    protected $userManager;
56
+
57
+    /** @var string[] */
58
+    protected $displayNames = [];
59
+
60
+    /**
61
+     * @param IFactory $languageFactory
62
+     * @param IURLGenerator $url
63
+     * @param IManager $activityManager
64
+     * @param IUserManager $userManager
65
+     */
66
+    public function __construct(IFactory $languageFactory, IURLGenerator $url, IManager $activityManager, IUserManager $userManager) {
67
+        $this->languageFactory = $languageFactory;
68
+        $this->url = $url;
69
+        $this->activityManager = $activityManager;
70
+        $this->userManager = $userManager;
71
+    }
72
+
73
+    /**
74
+     * @param string $language
75
+     * @param IEvent $event
76
+     * @param IEvent|null $previousEvent
77
+     * @return IEvent
78
+     * @throws \InvalidArgumentException
79
+     * @since 11.0.0
80
+     */
81
+    public function parse($language, IEvent $event, IEvent $previousEvent = null) {
82
+        if ($event->getApp() !== 'systemtags') {
83
+            throw new \InvalidArgumentException();
84
+        }
85
+
86
+        $this->l = $this->languageFactory->get('systemtags', $language);
87
+
88
+        if ($this->activityManager->isFormattingFilteredObject()) {
89
+            try {
90
+                return $this->parseShortVersion($event);
91
+            } catch (\InvalidArgumentException $e) {
92
+                // Ignore and simply use the long version...
93
+            }
94
+        }
95
+
96
+        return $this->parseLongVersion($event);
97
+    }
98
+
99
+    /**
100
+     * @param IEvent $event
101
+     * @return IEvent
102
+     * @throws \InvalidArgumentException
103
+     * @since 11.0.0
104
+     */
105
+    public function parseShortVersion(IEvent $event) {
106
+        $parsedParameters = $this->getParameters($event);
107
+
108
+        if ($this->activityManager->getRequirePNG()) {
109
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/tag.png')));
110
+        } else {
111
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/tag.svg')));
112
+        }
113
+
114
+        if ($event->getSubject() === self::ASSIGN_TAG) {
115
+            if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
116
+                $event->setParsedSubject($this->l->t('Added system tag %1$s', [
117
+                        $this->generatePlainSystemTag($parsedParameters['systemtag']),
118
+                    ]))
119
+                    ->setRichSubject($this->l->t('Added system tag {systemtag}'), [
120
+                        'systemtag' => $parsedParameters['systemtag'],
121
+                    ]);
122
+            } else {
123
+                $event->setParsedSubject($this->l->t('%1$s added system tag %2$s', [
124
+                        $parsedParameters['actor']['name'],
125
+                        $this->generatePlainSystemTag($parsedParameters['systemtag']),
126
+                    ]))
127
+                    ->setRichSubject($this->l->t('{actor} added system tag {systemtag}'), [
128
+                        'actor' => $parsedParameters['actor'],
129
+                        'systemtag' => $parsedParameters['systemtag'],
130
+                    ]);
131
+            }
132
+        } else if ($event->getSubject() === self::UNASSIGN_TAG) {
133
+            if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
134
+                $event->setParsedSubject($this->l->t('Removed system tag %1$s', [
135
+                        $this->generatePlainSystemTag($parsedParameters['systemtag']),
136
+                    ]))
137
+                    ->setRichSubject($this->l->t('Removed system tag {systemtag}'), [
138
+                        'systemtag' => $parsedParameters['systemtag'],
139
+                    ]);
140
+            } else {
141
+                $event->setParsedSubject($this->l->t('%1$s removed system tag %2$s', [
142
+                        $parsedParameters['actor']['name'],
143
+                        $this->generatePlainSystemTag($parsedParameters['systemtag']),
144
+                    ]))
145
+                    ->setRichSubject($this->l->t('{actor} removed system tag {systemtag}'), [
146
+                        'actor' => $parsedParameters['actor'],
147
+                        'systemtag' => $parsedParameters['systemtag'],
148
+                    ]);
149
+            }
150
+        } else {
151
+            throw new \InvalidArgumentException();
152
+        }
153
+
154
+        return $event;
155
+    }
156
+
157
+    /**
158
+     * @param IEvent $event
159
+     * @return IEvent
160
+     * @throws \InvalidArgumentException
161
+     * @since 11.0.0
162
+     */
163
+    public function parseLongVersion(IEvent $event) {
164
+        $parsedParameters = $this->getParameters($event);
165
+
166
+        if ($this->activityManager->getRequirePNG()) {
167
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/tag.png')));
168
+        } else {
169
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/tag.svg')));
170
+        }
171
+
172
+        if ($event->getSubject() === self::CREATE_TAG) {
173
+            if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
174
+                $event->setParsedSubject($this->l->t('You created system tag %1$s', [
175
+                        $this->generatePlainSystemTag($parsedParameters['systemtag']),
176
+                    ]))
177
+                    ->setRichSubject($this->l->t('You created system tag {systemtag}'), $parsedParameters);
178
+            } else {
179
+                $event->setParsedSubject($this->l->t('%1$s created system tag %2$s', [
180
+                        $parsedParameters['actor']['name'],
181
+                        $this->generatePlainSystemTag($parsedParameters['systemtag']),
182
+                    ]))
183
+                    ->setRichSubject($this->l->t('{actor} created system tag {systemtag}'), $parsedParameters);
184
+            }
185
+        } else if ($event->getSubject() === self::DELETE_TAG) {
186
+            if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
187
+                $event->setParsedSubject($this->l->t('You deleted system tag %1$s', [
188
+                        $this->generatePlainSystemTag($parsedParameters['systemtag']),
189
+                    ]))
190
+                    ->setRichSubject($this->l->t('You deleted system tag {systemtag}'), $parsedParameters);
191
+            } else {
192
+                $event->setParsedSubject($this->l->t('%1$s deleted system tag %2$s', [
193
+                        $parsedParameters['actor']['name'],
194
+                        $this->generatePlainSystemTag($parsedParameters['systemtag']),
195
+                    ]))
196
+                    ->setRichSubject($this->l->t('{actor} deleted system tag {systemtag}'), $parsedParameters);
197
+            }
198
+        } else if ($event->getSubject() === self::UPDATE_TAG) {
199
+            if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
200
+                $event->setParsedSubject($this->l->t('You updated system tag %2$s to %1$s', [
201
+                        $this->generatePlainSystemTag($parsedParameters['newsystemtag']),
202
+                        $this->generatePlainSystemTag($parsedParameters['oldsystemtag']),
203
+                    ]))
204
+                    ->setRichSubject($this->l->t('You updated system tag {oldsystemtag} to {newsystemtag}'), $parsedParameters);
205
+            } else {
206
+                $event->setParsedSubject($this->l->t('%1$s updated system tag %3$s to %2$s', [
207
+                        $parsedParameters['actor']['name'],
208
+                        $this->generatePlainSystemTag($parsedParameters['newsystemtag']),
209
+                        $this->generatePlainSystemTag($parsedParameters['oldsystemtag']),
210
+                    ]))
211
+                    ->setRichSubject($this->l->t('{actor} updated system tag {oldsystemtag} to {newsystemtag}'), $parsedParameters);
212
+            }
213
+        } else if ($event->getSubject() === self::ASSIGN_TAG) {
214
+            if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
215
+                $event->setParsedSubject($this->l->t('You added system tag %2$s to %1$s', [
216
+                        $parsedParameters['file']['path'],
217
+                        $this->generatePlainSystemTag($parsedParameters['systemtag']),
218
+                    ]))
219
+                    ->setRichSubject($this->l->t('You added system tag {systemtag} to {file}'), $parsedParameters);
220
+            } else {
221
+                $event->setParsedSubject($this->l->t('%1$s added system tag %3$s to %2$s', [
222
+                        $parsedParameters['actor']['name'],
223
+                        $parsedParameters['file']['path'],
224
+                        $this->generatePlainSystemTag($parsedParameters['systemtag']),
225
+                    ]))
226
+                    ->setRichSubject($this->l->t('{actor} added system tag {systemtag} to {file}'), $parsedParameters);
227
+            }
228
+        } else if ($event->getSubject() === self::UNASSIGN_TAG) {
229
+            if ($parsedParameters['actor']['id'] === $this->activityManager->getCurrentUserId()) {
230
+                $event->setParsedSubject($this->l->t('You removed system tag %2$s from %1$s', [
231
+                        $parsedParameters['file']['path'],
232
+                        $this->generatePlainSystemTag($parsedParameters['systemtag']),
233
+                    ]))
234
+                    ->setRichSubject($this->l->t('You removed system tag {systemtag} from {file}'), $parsedParameters);
235
+            } else {
236
+                $event->setParsedSubject($this->l->t('%1$s removed system tag %3$s from %2$s', [
237
+                        $parsedParameters['actor']['name'],
238
+                        $parsedParameters['file']['path'],
239
+                        $this->generatePlainSystemTag($parsedParameters['systemtag']),
240
+                    ]))
241
+                    ->setRichSubject($this->l->t('{actor} removed system tag {systemtag} from {file}'), $parsedParameters);
242
+            }
243
+        } else {
244
+            throw new \InvalidArgumentException();
245
+        }
246
+
247
+        return $event;
248
+    }
249
+
250
+    protected function getParameters(IEvent $event) {
251
+        $subject = $event->getSubject();
252
+        $parameters = $event->getSubjectParameters();
253
+
254
+        switch ($subject) {
255
+            case self::CREATE_TAG:
256
+            case self::DELETE_TAG:
257
+                return [
258
+                    'actor' => $this->getUserParameter($parameters[0]),
259
+                    'systemtag' => $this->getSystemTagParameter($parameters[1]),
260
+                ];
261
+            case self::UPDATE_TAG:
262
+                return [
263
+                    'actor' => $this->getUserParameter($parameters[0]),
264
+                    'newsystemtag' => $this->getSystemTagParameter($parameters[1]),
265
+                    'oldsystemtag' => $this->getSystemTagParameter($parameters[2]),
266
+                ];
267
+            case self::ASSIGN_TAG:
268
+            case self::UNASSIGN_TAG:
269
+                return [
270
+                    'actor' => $this->getUserParameter($parameters[0]),
271
+                    'file' => $this->getFileParameter($event->getObjectId(), $parameters[1]),
272
+                    'systemtag' => $this->getSystemTagParameter($parameters[2]),
273
+                ];
274
+        }
275
+        return [];
276
+    }
277
+
278
+    protected function getFileParameter($id, $path) {
279
+        return [
280
+            'type' => 'file',
281
+            'id' => $id,
282
+            'name' => basename($path),
283
+            'path' => trim($path, '/'),
284
+        ];
285
+    }
286
+
287
+    protected function getSystemTagParameter($parameter) {
288
+        $tagData = json_decode($parameter, true);
289
+        if ($tagData === null) {
290
+            list($name, $status) = explode('|||', substr($parameter, 3, -3));
291
+            $tagData = [
292
+                'id' => 0,// No way to recover the ID
293
+                'name' => $name,
294
+                'assignable' => $status === 'assignable',
295
+                'visible' => $status !== 'invisible',
296
+            ];
297
+        }
298
+
299
+        return [
300
+            'type' => 'systemtag',
301
+            'id' => (int) $tagData['id'],
302
+            'name' => $tagData['name'],
303
+            'assignable' => $tagData['assignable'] ? '1' : '0',
304
+            'visibility' => $tagData['visible'] ? '1' : '0',
305
+        ];
306
+    }
307
+
308
+    protected function getUserParameter($uid) {
309
+        if (!isset($this->displayNames[$uid])) {
310
+            $this->displayNames[$uid] = $this->getDisplayName($uid);
311
+        }
312
+
313
+        return [
314
+            'type' => 'user',
315
+            'id' => $uid,
316
+            'name' => $this->displayNames[$uid],
317
+        ];
318
+    }
319
+
320
+    protected function generatePlainSystemTag(array $parameter) {
321
+        if ($parameter['assignable'] === '1') {
322
+            return $parameter['name'];
323
+        } else if ($parameter['visibility'] === '1') {
324
+            return $this->l->t('%s (restricted)', $parameter['name']);
325
+        } else {
326
+            return $this->l->t('%s (invisible)', $parameter['name']);
327
+        }
328
+    }
329
+
330
+    /**
331
+     * @param string $uid
332
+     * @return string
333
+     */
334
+    protected function getDisplayName($uid) {
335
+        $user = $this->userManager->get($uid);
336
+        if ($user instanceof IUser) {
337
+            return $user->getDisplayName();
338
+        } else {
339
+            return $uid;
340
+        }
341
+    }
342 342
 }
Please login to merge, or discard this patch.
apps/systemtags/lib/Activity/Setting.php 1 patch
Indentation   +59 added lines, -59 removed lines patch added patch discarded remove patch
@@ -27,72 +27,72 @@
 block discarded – undo
27 27
 
28 28
 class Setting implements ISetting {
29 29
 
30
-	/** @var IL10N */
31
-	protected $l;
30
+    /** @var IL10N */
31
+    protected $l;
32 32
 
33
-	/**
34
-	 * @param IL10N $l
35
-	 */
36
-	public function __construct(IL10N $l) {
37
-		$this->l = $l;
38
-	}
33
+    /**
34
+     * @param IL10N $l
35
+     */
36
+    public function __construct(IL10N $l) {
37
+        $this->l = $l;
38
+    }
39 39
 
40
-	/**
41
-	 * @return string Lowercase a-z and underscore only identifier
42
-	 * @since 11.0.0
43
-	 */
44
-	public function getIdentifier() {
45
-		return 'systemtags';
46
-	}
40
+    /**
41
+     * @return string Lowercase a-z and underscore only identifier
42
+     * @since 11.0.0
43
+     */
44
+    public function getIdentifier() {
45
+        return 'systemtags';
46
+    }
47 47
 
48
-	/**
49
-	 * @return string A translated string
50
-	 * @since 11.0.0
51
-	 */
52
-	public function getName() {
53
-		return $this->l->t('<strong>System tags</strong> for a file have been modified');
54
-	}
48
+    /**
49
+     * @return string A translated string
50
+     * @since 11.0.0
51
+     */
52
+    public function getName() {
53
+        return $this->l->t('<strong>System tags</strong> for a file have been modified');
54
+    }
55 55
 
56
-	/**
57
-	 * @return int whether the filter should be rather on the top or bottom of
58
-	 * the admin section. The filters are arranged in ascending order of the
59
-	 * priority values. It is required to return a value between 0 and 100.
60
-	 * @since 11.0.0
61
-	 */
62
-	public function getPriority() {
63
-		return 50;
64
-	}
56
+    /**
57
+     * @return int whether the filter should be rather on the top or bottom of
58
+     * the admin section. The filters are arranged in ascending order of the
59
+     * priority values. It is required to return a value between 0 and 100.
60
+     * @since 11.0.0
61
+     */
62
+    public function getPriority() {
63
+        return 50;
64
+    }
65 65
 
66
-	/**
67
-	 * @return bool True when the option can be changed for the stream
68
-	 * @since 11.0.0
69
-	 */
70
-	public function canChangeStream() {
71
-		return true;
72
-	}
66
+    /**
67
+     * @return bool True when the option can be changed for the stream
68
+     * @since 11.0.0
69
+     */
70
+    public function canChangeStream() {
71
+        return true;
72
+    }
73 73
 
74
-	/**
75
-	 * @return bool True when the option can be changed for the stream
76
-	 * @since 11.0.0
77
-	 */
78
-	public function isDefaultEnabledStream() {
79
-		return true;
80
-	}
74
+    /**
75
+     * @return bool True when the option can be changed for the stream
76
+     * @since 11.0.0
77
+     */
78
+    public function isDefaultEnabledStream() {
79
+        return true;
80
+    }
81 81
 
82
-	/**
83
-	 * @return bool True when the option can be changed for the mail
84
-	 * @since 11.0.0
85
-	 */
86
-	public function canChangeMail() {
87
-		return true;
88
-	}
82
+    /**
83
+     * @return bool True when the option can be changed for the mail
84
+     * @since 11.0.0
85
+     */
86
+    public function canChangeMail() {
87
+        return true;
88
+    }
89 89
 
90
-	/**
91
-	 * @return bool True when the option can be changed for the stream
92
-	 * @since 11.0.0
93
-	 */
94
-	public function isDefaultEnabledMail() {
95
-		return false;
96
-	}
90
+    /**
91
+     * @return bool True when the option can be changed for the stream
92
+     * @since 11.0.0
93
+     */
94
+    public function isDefaultEnabledMail() {
95
+        return false;
96
+    }
97 97
 }
98 98
 
Please login to merge, or discard this patch.
apps/systemtags/lib/Controller/LastUsedController.php 1 patch
Indentation   +26 added lines, -26 removed lines patch added patch discarded remove patch
@@ -30,30 +30,30 @@
 block discarded – undo
30 30
 
31 31
 class LastUsedController extends Controller {
32 32
 
33
-	/** @var IConfig */
34
-	protected $config;
35
-
36
-	/** @var IUserSession */
37
-	protected $userSession;
38
-
39
-	/**
40
-	 * @param string $appName
41
-	 * @param IRequest $request
42
-	 * @param IConfig $config
43
-	 * @param IUserSession $userSession
44
-	 */
45
-	public function __construct($appName, IRequest $request, IConfig $config, IUserSession $userSession) {
46
-		parent::__construct($appName, $request);
47
-		$this->config = $config;
48
-		$this->userSession = $userSession;
49
-	}
50
-
51
-	/**
52
-	 * @NoAdminRequired
53
-	 */
54
-	public function getLastUsedTagIds() {
55
-		$lastUsed = $this->config->getUserValue($this->userSession->getUser()->getUID(), 'systemtags', 'last_used', '[]');
56
-		$tagIds = json_decode($lastUsed, true);
57
-		return new DataResponse(array_map(function($id) { return (string) $id; }, $tagIds));
58
-	}
33
+    /** @var IConfig */
34
+    protected $config;
35
+
36
+    /** @var IUserSession */
37
+    protected $userSession;
38
+
39
+    /**
40
+     * @param string $appName
41
+     * @param IRequest $request
42
+     * @param IConfig $config
43
+     * @param IUserSession $userSession
44
+     */
45
+    public function __construct($appName, IRequest $request, IConfig $config, IUserSession $userSession) {
46
+        parent::__construct($appName, $request);
47
+        $this->config = $config;
48
+        $this->userSession = $userSession;
49
+    }
50
+
51
+    /**
52
+     * @NoAdminRequired
53
+     */
54
+    public function getLastUsedTagIds() {
55
+        $lastUsed = $this->config->getUserValue($this->userSession->getUser()->getUID(), 'systemtags', 'last_used', '[]');
56
+        $tagIds = json_decode($lastUsed, true);
57
+        return new DataResponse(array_map(function($id) { return (string) $id; }, $tagIds));
58
+    }
59 59
 }
Please login to merge, or discard this patch.
apps/systemtags/lib/Settings/Admin.php 1 patch
Indentation   +22 added lines, -22 removed lines patch added patch discarded remove patch
@@ -28,29 +28,29 @@
 block discarded – undo
28 28
 
29 29
 class Admin implements ISettings {
30 30
 
31
-	/**
32
-	 * @return TemplateResponse
33
-	 */
34
-	public function getForm() {
35
-		return new TemplateResponse('systemtags', 'admin', [], '');
36
-	}
31
+    /**
32
+     * @return TemplateResponse
33
+     */
34
+    public function getForm() {
35
+        return new TemplateResponse('systemtags', 'admin', [], '');
36
+    }
37 37
 
38
-	/**
39
-	 * @return string the section ID, e.g. 'sharing'
40
-	 */
41
-	public function getSection() {
42
-		return 'workflow';
43
-	}
38
+    /**
39
+     * @return string the section ID, e.g. 'sharing'
40
+     */
41
+    public function getSection() {
42
+        return 'workflow';
43
+    }
44 44
 
45
-	/**
46
-	 * @return int whether the form should be rather on the top or bottom of
47
-	 * the admin section. The forms are arranged in ascending order of the
48
-	 * priority values. It is required to return a value between 0 and 100.
49
-	 *
50
-	 * E.g.: 70
51
-	 */
52
-	public function getPriority() {
53
-		return 70;
54
-	}
45
+    /**
46
+     * @return int whether the form should be rather on the top or bottom of
47
+     * the admin section. The forms are arranged in ascending order of the
48
+     * priority values. It is required to return a value between 0 and 100.
49
+     *
50
+     * E.g.: 70
51
+     */
52
+    public function getPriority() {
53
+        return 70;
54
+    }
55 55
 
56 56
 }
Please login to merge, or discard this patch.
apps/systemtags/appinfo/routes.php 1 patch
Indentation   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -22,7 +22,7 @@
 block discarded – undo
22 22
  */
23 23
 
24 24
 return [
25
-	'routes' => [
26
-		['name' => 'LastUsed#getLastUsedTagIds', 'url' => '/lastused', 'verb' => 'GET'],
27
-	]
25
+    'routes' => [
26
+        ['name' => 'LastUsed#getLastUsedTagIds', 'url' => '/lastused', 'verb' => 'GET'],
27
+    ]
28 28
 ];
Please login to merge, or discard this patch.
apps/files_sharing/templates/list.php 1 patch
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -15,14 +15,14 @@
 block discarded – undo
15 15
 		<tr>
16 16
 			<th id='headerName' class="hidden column-name">
17 17
 				<div id="headerName-container">
18
-					<a class="name sort columntitle" data-sort="name"><span><?php p($l->t( 'Name' )); ?></span><span class="sort-indicator"></span></a>
18
+					<a class="name sort columntitle" data-sort="name"><span><?php p($l->t('Name')); ?></span><span class="sort-indicator"></span></a>
19 19
 				</div>
20 20
 			</th>
21 21
 			<th id="headerDate" class="hidden column-mtime">
22
-				<a id="modified" class="columntitle" data-sort="mtime"><span><?php p($l->t( 'Share time' )); ?></span><span class="sort-indicator"></span></a>
22
+				<a id="modified" class="columntitle" data-sort="mtime"><span><?php p($l->t('Share time')); ?></span><span class="sort-indicator"></span></a>
23 23
 			</th>
24 24
 			<th class="hidden column-expiration">
25
-				<a class="columntitle"><span><?php p($l->t( 'Expiration date' )); ?></span></a>
25
+				<a class="columntitle"><span><?php p($l->t('Expiration date')); ?></span></a>
26 26
 			</th>
27 27
 		</tr>
28 28
 	</thead>
Please login to merge, or discard this patch.
apps/files_sharing/lib/Activity/Providers/Base.php 2 patches
Indentation   +149 added lines, -149 removed lines patch added patch discarded remove patch
@@ -32,153 +32,153 @@
 block discarded – undo
32 32
 
33 33
 abstract class Base implements IProvider {
34 34
 
35
-	/** @var IFactory */
36
-	protected $languageFactory;
37
-
38
-	/** @var IL10N */
39
-	protected $l;
40
-
41
-	/** @var IURLGenerator */
42
-	protected $url;
43
-
44
-	/** @var IManager */
45
-	protected $activityManager;
46
-
47
-	/** @var IUserManager */
48
-	protected $userManager;
49
-
50
-	/** @var array */
51
-	protected $displayNames = [];
52
-
53
-	/**
54
-	 * @param IFactory $languageFactory
55
-	 * @param IURLGenerator $url
56
-	 * @param IManager $activityManager
57
-	 * @param IUserManager $userManager
58
-	 */
59
-	public function __construct(IFactory $languageFactory, IURLGenerator $url, IManager $activityManager, IUserManager $userManager) {
60
-		$this->languageFactory = $languageFactory;
61
-		$this->url = $url;
62
-		$this->activityManager = $activityManager;
63
-		$this->userManager = $userManager;
64
-	}
65
-
66
-	/**
67
-	 * @param string $language
68
-	 * @param IEvent $event
69
-	 * @param IEvent|null $previousEvent
70
-	 * @return IEvent
71
-	 * @throws \InvalidArgumentException
72
-	 * @since 11.0.0
73
-	 */
74
-	public function parse($language, IEvent $event, IEvent $previousEvent = null) {
75
-		if ($event->getApp() !== 'files_sharing') {
76
-			throw new \InvalidArgumentException();
77
-		}
78
-
79
-		$this->l = $this->languageFactory->get('files_sharing', $language);
80
-
81
-		if ($this->activityManager->isFormattingFilteredObject()) {
82
-			try {
83
-				return $this->parseShortVersion($event);
84
-			} catch (\InvalidArgumentException $e) {
85
-				// Ignore and simply use the long version...
86
-			}
87
-		}
88
-
89
-		return $this->parseLongVersion($event);
90
-	}
91
-
92
-	/**
93
-	 * @param IEvent $event
94
-	 * @return IEvent
95
-	 * @throws \InvalidArgumentException
96
-	 * @since 11.0.0
97
-	 */
98
-	abstract protected function parseShortVersion(IEvent $event);
99
-
100
-	/**
101
-	 * @param IEvent $event
102
-	 * @return IEvent
103
-	 * @throws \InvalidArgumentException
104
-	 * @since 11.0.0
105
-	 */
106
-	abstract protected function parseLongVersion(IEvent $event);
107
-
108
-	/**
109
-	 * @param IEvent $event
110
-	 * @param string $subject
111
-	 * @param array $parameters
112
-	 * @throws \InvalidArgumentException
113
-	 */
114
-	protected function setSubjects(IEvent $event, $subject, array $parameters) {
115
-		$placeholders = $replacements = [];
116
-		foreach ($parameters as $placeholder => $parameter) {
117
-			$placeholders[] = '{' . $placeholder . '}';
118
-			if ($parameter['type'] === 'file') {
119
-				$replacements[] = $parameter['path'];
120
-			} else {
121
-				$replacements[] = $parameter['name'];
122
-			}
123
-		}
124
-
125
-		$event->setParsedSubject(str_replace($placeholders, $replacements, $subject))
126
-			->setRichSubject($subject, $parameters);
127
-	}
128
-
129
-	/**
130
-	 * @param array|string $parameter
131
-	 * @param IEvent|null $event
132
-	 * @return array
133
-	 * @throws \InvalidArgumentException
134
-	 */
135
-	protected function getFile($parameter, IEvent $event = null) {
136
-		if (is_array($parameter)) {
137
-			$path = reset($parameter);
138
-			$id = (string) key($parameter);
139
-		} else if ($event !== null) {
140
-			// Legacy from before ownCloud 8.2
141
-			$path = $parameter;
142
-			$id = $event->getObjectId();
143
-		} else {
144
-			throw new \InvalidArgumentException('Could not generate file parameter');
145
-		}
146
-
147
-		return [
148
-			'type' => 'file',
149
-			'id' => $id,
150
-			'name' => basename($path),
151
-			'path' => trim($path, '/'),
152
-			'link' => $this->url->linkToRouteAbsolute('files.viewcontroller.showFile', ['fileid' => $id]),
153
-		];
154
-	}
155
-
156
-	/**
157
-	 * @param string $uid
158
-	 * @return array
159
-	 */
160
-	protected function getUser($uid) {
161
-		if (!isset($this->displayNames[$uid])) {
162
-			$this->displayNames[$uid] = $this->getDisplayName($uid);
163
-		}
164
-
165
-		return [
166
-			'type' => 'user',
167
-			'id' => $uid,
168
-			'name' => $this->displayNames[$uid],
169
-		];
170
-	}
171
-
172
-	/**
173
-	 * @param string $uid
174
-	 * @return string
175
-	 */
176
-	protected function getDisplayName($uid) {
177
-		$user = $this->userManager->get($uid);
178
-		if ($user instanceof IUser) {
179
-			return $user->getDisplayName();
180
-		} else {
181
-			return $uid;
182
-		}
183
-	}
35
+    /** @var IFactory */
36
+    protected $languageFactory;
37
+
38
+    /** @var IL10N */
39
+    protected $l;
40
+
41
+    /** @var IURLGenerator */
42
+    protected $url;
43
+
44
+    /** @var IManager */
45
+    protected $activityManager;
46
+
47
+    /** @var IUserManager */
48
+    protected $userManager;
49
+
50
+    /** @var array */
51
+    protected $displayNames = [];
52
+
53
+    /**
54
+     * @param IFactory $languageFactory
55
+     * @param IURLGenerator $url
56
+     * @param IManager $activityManager
57
+     * @param IUserManager $userManager
58
+     */
59
+    public function __construct(IFactory $languageFactory, IURLGenerator $url, IManager $activityManager, IUserManager $userManager) {
60
+        $this->languageFactory = $languageFactory;
61
+        $this->url = $url;
62
+        $this->activityManager = $activityManager;
63
+        $this->userManager = $userManager;
64
+    }
65
+
66
+    /**
67
+     * @param string $language
68
+     * @param IEvent $event
69
+     * @param IEvent|null $previousEvent
70
+     * @return IEvent
71
+     * @throws \InvalidArgumentException
72
+     * @since 11.0.0
73
+     */
74
+    public function parse($language, IEvent $event, IEvent $previousEvent = null) {
75
+        if ($event->getApp() !== 'files_sharing') {
76
+            throw new \InvalidArgumentException();
77
+        }
78
+
79
+        $this->l = $this->languageFactory->get('files_sharing', $language);
80
+
81
+        if ($this->activityManager->isFormattingFilteredObject()) {
82
+            try {
83
+                return $this->parseShortVersion($event);
84
+            } catch (\InvalidArgumentException $e) {
85
+                // Ignore and simply use the long version...
86
+            }
87
+        }
88
+
89
+        return $this->parseLongVersion($event);
90
+    }
91
+
92
+    /**
93
+     * @param IEvent $event
94
+     * @return IEvent
95
+     * @throws \InvalidArgumentException
96
+     * @since 11.0.0
97
+     */
98
+    abstract protected function parseShortVersion(IEvent $event);
99
+
100
+    /**
101
+     * @param IEvent $event
102
+     * @return IEvent
103
+     * @throws \InvalidArgumentException
104
+     * @since 11.0.0
105
+     */
106
+    abstract protected function parseLongVersion(IEvent $event);
107
+
108
+    /**
109
+     * @param IEvent $event
110
+     * @param string $subject
111
+     * @param array $parameters
112
+     * @throws \InvalidArgumentException
113
+     */
114
+    protected function setSubjects(IEvent $event, $subject, array $parameters) {
115
+        $placeholders = $replacements = [];
116
+        foreach ($parameters as $placeholder => $parameter) {
117
+            $placeholders[] = '{' . $placeholder . '}';
118
+            if ($parameter['type'] === 'file') {
119
+                $replacements[] = $parameter['path'];
120
+            } else {
121
+                $replacements[] = $parameter['name'];
122
+            }
123
+        }
124
+
125
+        $event->setParsedSubject(str_replace($placeholders, $replacements, $subject))
126
+            ->setRichSubject($subject, $parameters);
127
+    }
128
+
129
+    /**
130
+     * @param array|string $parameter
131
+     * @param IEvent|null $event
132
+     * @return array
133
+     * @throws \InvalidArgumentException
134
+     */
135
+    protected function getFile($parameter, IEvent $event = null) {
136
+        if (is_array($parameter)) {
137
+            $path = reset($parameter);
138
+            $id = (string) key($parameter);
139
+        } else if ($event !== null) {
140
+            // Legacy from before ownCloud 8.2
141
+            $path = $parameter;
142
+            $id = $event->getObjectId();
143
+        } else {
144
+            throw new \InvalidArgumentException('Could not generate file parameter');
145
+        }
146
+
147
+        return [
148
+            'type' => 'file',
149
+            'id' => $id,
150
+            'name' => basename($path),
151
+            'path' => trim($path, '/'),
152
+            'link' => $this->url->linkToRouteAbsolute('files.viewcontroller.showFile', ['fileid' => $id]),
153
+        ];
154
+    }
155
+
156
+    /**
157
+     * @param string $uid
158
+     * @return array
159
+     */
160
+    protected function getUser($uid) {
161
+        if (!isset($this->displayNames[$uid])) {
162
+            $this->displayNames[$uid] = $this->getDisplayName($uid);
163
+        }
164
+
165
+        return [
166
+            'type' => 'user',
167
+            'id' => $uid,
168
+            'name' => $this->displayNames[$uid],
169
+        ];
170
+    }
171
+
172
+    /**
173
+     * @param string $uid
174
+     * @return string
175
+     */
176
+    protected function getDisplayName($uid) {
177
+        $user = $this->userManager->get($uid);
178
+        if ($user instanceof IUser) {
179
+            return $user->getDisplayName();
180
+        } else {
181
+            return $uid;
182
+        }
183
+    }
184 184
 }
Please login to merge, or discard this patch.
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -197,7 +197,7 @@
 block discarded – undo
197 197
 	protected function setSubjects(IEvent $event, $subject, array $parameters) {
198 198
 		$placeholders = $replacements = [];
199 199
 		foreach ($parameters as $placeholder => $parameter) {
200
-			$placeholders[] = '{' . $placeholder . '}';
200
+			$placeholders[] = '{'.$placeholder.'}';
201 201
 			if ($parameter['type'] === 'file') {
202 202
 				$replacements[] = $parameter['path'];
203 203
 			} else {
Please login to merge, or discard this patch.
apps/files_sharing/lib/Activity/Providers/RemoteShares.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -140,7 +140,7 @@
 block discarded – undo
140 140
 		return [
141 141
 			'type' => 'user',
142 142
 			'id' => $remoteUser->getUser(),
143
-			'name' => $cloudId,// Todo display name from contacts
143
+			'name' => $cloudId, // Todo display name from contacts
144 144
 			'server' => $remoteUser->getRemote(),
145 145
 		];
146 146
 	}
Please login to merge, or discard this patch.
Indentation   +124 added lines, -124 removed lines patch added patch discarded remove patch
@@ -32,128 +32,128 @@
 block discarded – undo
32 32
 
33 33
 class RemoteShares extends Base {
34 34
 
35
-	protected $cloudIdManager;
36
-
37
-	const SUBJECT_REMOTE_SHARE_ACCEPTED = 'remote_share_accepted';
38
-	const SUBJECT_REMOTE_SHARE_DECLINED = 'remote_share_declined';
39
-	const SUBJECT_REMOTE_SHARE_RECEIVED = 'remote_share_received';
40
-	const SUBJECT_REMOTE_SHARE_UNSHARED = 'remote_share_unshared';
41
-
42
-	/**
43
-	 * @param IFactory $languageFactory
44
-	 * @param IURLGenerator $url
45
-	 * @param IManager $activityManager
46
-	 * @param IUserManager $userManager
47
-	 * @param ICloudIdManager $cloudIdManager
48
-	 */
49
-	public function __construct(IFactory $languageFactory,
50
-								IURLGenerator $url,
51
-								IManager $activityManager,
52
-								IUserManager $userManager,
53
-								ICloudIdManager $cloudIdManager
54
-	) {
55
-		parent::__construct($languageFactory, $url, $activityManager, $userManager);
56
-		$this->cloudIdManager = $cloudIdManager;
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_REMOTE_SHARE_ACCEPTED) {
69
-			$subject = $this->l->t('{user} accepted the remote share');
70
-		} else if ($event->getSubject() === self::SUBJECT_REMOTE_SHARE_DECLINED) {
71
-			$subject = $this->l->t('{user} declined the remote share');
72
-		} else {
73
-			throw new \InvalidArgumentException();
74
-		}
75
-
76
-		if ($this->activityManager->getRequirePNG()) {
77
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.png')));
78
-		} else {
79
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.svg')));
80
-		}
81
-		$this->setSubjects($event, $subject, $parsedParameters);
82
-
83
-		return $event;
84
-	}
85
-
86
-	/**
87
-	 * @param IEvent $event
88
-	 * @return IEvent
89
-	 * @throws \InvalidArgumentException
90
-	 * @since 11.0.0
91
-	 */
92
-	public function parseLongVersion(IEvent $event) {
93
-		$parsedParameters = $this->getParsedParameters($event);
94
-
95
-		if ($event->getSubject() === self::SUBJECT_REMOTE_SHARE_RECEIVED) {
96
-			$subject = $this->l->t('You received a new remote share {file} from {user}');
97
-		} else if ($event->getSubject() === self::SUBJECT_REMOTE_SHARE_ACCEPTED) {
98
-			$subject = $this->l->t('{user} accepted the remote share of {file}');
99
-		} else if ($event->getSubject() === self::SUBJECT_REMOTE_SHARE_DECLINED) {
100
-			$subject = $this->l->t('{user} declined the remote share of {file}');
101
-		} else if ($event->getSubject() === self::SUBJECT_REMOTE_SHARE_UNSHARED) {
102
-			$subject = $this->l->t('{user} unshared {file} from you');
103
-		} else {
104
-			throw new \InvalidArgumentException();
105
-		}
106
-
107
-		if ($this->activityManager->getRequirePNG()) {
108
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.png')));
109
-		} else {
110
-			$event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.svg')));
111
-		}
112
-		$this->setSubjects($event, $subject, $parsedParameters);
113
-
114
-		return $event;
115
-	}
116
-
117
-	protected function getParsedParameters(IEvent $event) {
118
-		$subject = $event->getSubject();
119
-		$parameters = $event->getSubjectParameters();
120
-
121
-		switch ($subject) {
122
-			case self::SUBJECT_REMOTE_SHARE_RECEIVED:
123
-			case self::SUBJECT_REMOTE_SHARE_UNSHARED:
124
-				return [
125
-					'file' => [
126
-						'type' => 'pending-federated-share',
127
-						'id' => $parameters[1],
128
-						'name' => $parameters[1],
129
-					],
130
-					'user' => $this->getFederatedUser($parameters[0]),
131
-				];
132
-			case self::SUBJECT_REMOTE_SHARE_ACCEPTED:
133
-			case self::SUBJECT_REMOTE_SHARE_DECLINED:
134
-				$fileParameter = $parameters[1];
135
-				if (!is_array($fileParameter)) {
136
-					$fileParameter = [$event->getObjectId() => $event->getObjectName()];
137
-				}
138
-				return [
139
-					'file' => $this->getFile($fileParameter),
140
-					'user' => $this->getFederatedUser($parameters[0]),
141
-				];
142
-		}
143
-		throw new \InvalidArgumentException();
144
-	}
145
-
146
-	/**
147
-	 * @param string $cloudId
148
-	 * @return array
149
-	 */
150
-	protected function getFederatedUser($cloudId) {
151
-		$remoteUser = $this->cloudIdManager->resolveCloudId($cloudId);
152
-		return [
153
-			'type' => 'user',
154
-			'id' => $remoteUser->getUser(),
155
-			'name' => $cloudId,// Todo display name from contacts
156
-			'server' => $remoteUser->getRemote(),
157
-		];
158
-	}
35
+    protected $cloudIdManager;
36
+
37
+    const SUBJECT_REMOTE_SHARE_ACCEPTED = 'remote_share_accepted';
38
+    const SUBJECT_REMOTE_SHARE_DECLINED = 'remote_share_declined';
39
+    const SUBJECT_REMOTE_SHARE_RECEIVED = 'remote_share_received';
40
+    const SUBJECT_REMOTE_SHARE_UNSHARED = 'remote_share_unshared';
41
+
42
+    /**
43
+     * @param IFactory $languageFactory
44
+     * @param IURLGenerator $url
45
+     * @param IManager $activityManager
46
+     * @param IUserManager $userManager
47
+     * @param ICloudIdManager $cloudIdManager
48
+     */
49
+    public function __construct(IFactory $languageFactory,
50
+                                IURLGenerator $url,
51
+                                IManager $activityManager,
52
+                                IUserManager $userManager,
53
+                                ICloudIdManager $cloudIdManager
54
+    ) {
55
+        parent::__construct($languageFactory, $url, $activityManager, $userManager);
56
+        $this->cloudIdManager = $cloudIdManager;
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_REMOTE_SHARE_ACCEPTED) {
69
+            $subject = $this->l->t('{user} accepted the remote share');
70
+        } else if ($event->getSubject() === self::SUBJECT_REMOTE_SHARE_DECLINED) {
71
+            $subject = $this->l->t('{user} declined the remote share');
72
+        } else {
73
+            throw new \InvalidArgumentException();
74
+        }
75
+
76
+        if ($this->activityManager->getRequirePNG()) {
77
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.png')));
78
+        } else {
79
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.svg')));
80
+        }
81
+        $this->setSubjects($event, $subject, $parsedParameters);
82
+
83
+        return $event;
84
+    }
85
+
86
+    /**
87
+     * @param IEvent $event
88
+     * @return IEvent
89
+     * @throws \InvalidArgumentException
90
+     * @since 11.0.0
91
+     */
92
+    public function parseLongVersion(IEvent $event) {
93
+        $parsedParameters = $this->getParsedParameters($event);
94
+
95
+        if ($event->getSubject() === self::SUBJECT_REMOTE_SHARE_RECEIVED) {
96
+            $subject = $this->l->t('You received a new remote share {file} from {user}');
97
+        } else if ($event->getSubject() === self::SUBJECT_REMOTE_SHARE_ACCEPTED) {
98
+            $subject = $this->l->t('{user} accepted the remote share of {file}');
99
+        } else if ($event->getSubject() === self::SUBJECT_REMOTE_SHARE_DECLINED) {
100
+            $subject = $this->l->t('{user} declined the remote share of {file}');
101
+        } else if ($event->getSubject() === self::SUBJECT_REMOTE_SHARE_UNSHARED) {
102
+            $subject = $this->l->t('{user} unshared {file} from you');
103
+        } else {
104
+            throw new \InvalidArgumentException();
105
+        }
106
+
107
+        if ($this->activityManager->getRequirePNG()) {
108
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.png')));
109
+        } else {
110
+            $event->setIcon($this->url->getAbsoluteURL($this->url->imagePath('core', 'actions/share.svg')));
111
+        }
112
+        $this->setSubjects($event, $subject, $parsedParameters);
113
+
114
+        return $event;
115
+    }
116
+
117
+    protected function getParsedParameters(IEvent $event) {
118
+        $subject = $event->getSubject();
119
+        $parameters = $event->getSubjectParameters();
120
+
121
+        switch ($subject) {
122
+            case self::SUBJECT_REMOTE_SHARE_RECEIVED:
123
+            case self::SUBJECT_REMOTE_SHARE_UNSHARED:
124
+                return [
125
+                    'file' => [
126
+                        'type' => 'pending-federated-share',
127
+                        'id' => $parameters[1],
128
+                        'name' => $parameters[1],
129
+                    ],
130
+                    'user' => $this->getFederatedUser($parameters[0]),
131
+                ];
132
+            case self::SUBJECT_REMOTE_SHARE_ACCEPTED:
133
+            case self::SUBJECT_REMOTE_SHARE_DECLINED:
134
+                $fileParameter = $parameters[1];
135
+                if (!is_array($fileParameter)) {
136
+                    $fileParameter = [$event->getObjectId() => $event->getObjectName()];
137
+                }
138
+                return [
139
+                    'file' => $this->getFile($fileParameter),
140
+                    'user' => $this->getFederatedUser($parameters[0]),
141
+                ];
142
+        }
143
+        throw new \InvalidArgumentException();
144
+    }
145
+
146
+    /**
147
+     * @param string $cloudId
148
+     * @return array
149
+     */
150
+    protected function getFederatedUser($cloudId) {
151
+        $remoteUser = $this->cloudIdManager->resolveCloudId($cloudId);
152
+        return [
153
+            'type' => 'user',
154
+            'id' => $remoteUser->getUser(),
155
+            'name' => $cloudId,// Todo display name from contacts
156
+            'server' => $remoteUser->getRemote(),
157
+        ];
158
+    }
159 159
 }
Please login to merge, or discard this patch.