Passed
Push — master ( b2341c...323f40 )
by Roeland
11:16
created
lib/public/Contacts/ContactsMenu/IEntry.php 1 patch
Indentation   +28 added lines, -28 removed lines patch added patch discarded remove patch
@@ -31,36 +31,36 @@
 block discarded – undo
31 31
  */
32 32
 interface IEntry extends JsonSerializable {
33 33
 
34
-	/**
35
-	 * @since 12.0
36
-	 * @return string
37
-	 */
38
-	public function getFullName();
34
+    /**
35
+     * @since 12.0
36
+     * @return string
37
+     */
38
+    public function getFullName();
39 39
 
40
-	/**
41
-	 * @since 12.0
42
-	 * @return string[]
43
-	 */
44
-	public function getEMailAddresses();
40
+    /**
41
+     * @since 12.0
42
+     * @return string[]
43
+     */
44
+    public function getEMailAddresses();
45 45
 
46
-	/**
47
-	 * @since 12.0
48
-	 * @return string|null image URI
49
-	 */
50
-	public function getAvatar();
46
+    /**
47
+     * @since 12.0
48
+     * @return string|null image URI
49
+     */
50
+    public function getAvatar();
51 51
 
52
-	/**
53
-	 * @since 12.0
54
-	 * @param IAction $action an action to show in the contacts menu
55
-	 */
56
-	public function addAction(IAction $action);
52
+    /**
53
+     * @since 12.0
54
+     * @param IAction $action an action to show in the contacts menu
55
+     */
56
+    public function addAction(IAction $action);
57 57
 
58
-	/**
59
-	 * Get an arbitrary property from the contact
60
-	 *
61
-	 * @since 12.0
62
-	 * @param string $key
63
-	 * @return mixed the value of the property or null
64
-	 */
65
-	public function getProperty($key);
58
+    /**
59
+     * Get an arbitrary property from the contact
60
+     *
61
+     * @since 12.0
62
+     * @param string $key
63
+     * @return mixed the value of the property or null
64
+     */
65
+    public function getProperty($key);
66 66
 }
Please login to merge, or discard this patch.
lib/private/DB/MDB2SchemaReader.php 1 patch
Indentation   +292 added lines, -292 removed lines patch added patch discarded remove patch
@@ -39,313 +39,313 @@
 block discarded – undo
39 39
 
40 40
 class MDB2SchemaReader {
41 41
 
42
-	/**
43
-	 * @var string $DBTABLEPREFIX
44
-	 */
45
-	protected $DBTABLEPREFIX;
42
+    /**
43
+     * @var string $DBTABLEPREFIX
44
+     */
45
+    protected $DBTABLEPREFIX;
46 46
 
47
-	/**
48
-	 * @var \Doctrine\DBAL\Platforms\AbstractPlatform $platform
49
-	 */
50
-	protected $platform;
47
+    /**
48
+     * @var \Doctrine\DBAL\Platforms\AbstractPlatform $platform
49
+     */
50
+    protected $platform;
51 51
 
52
-	/** @var IConfig */
53
-	protected $config;
52
+    /** @var IConfig */
53
+    protected $config;
54 54
 
55
-	/**
56
-	 * @param \OCP\IConfig $config
57
-	 * @param \Doctrine\DBAL\Platforms\AbstractPlatform $platform
58
-	 */
59
-	public function __construct(IConfig $config, AbstractPlatform $platform) {
60
-		$this->platform = $platform;
61
-		$this->config = $config;
62
-		$this->DBTABLEPREFIX = $config->getSystemValue('dbtableprefix', 'oc_');
63
-	}
55
+    /**
56
+     * @param \OCP\IConfig $config
57
+     * @param \Doctrine\DBAL\Platforms\AbstractPlatform $platform
58
+     */
59
+    public function __construct(IConfig $config, AbstractPlatform $platform) {
60
+        $this->platform = $platform;
61
+        $this->config = $config;
62
+        $this->DBTABLEPREFIX = $config->getSystemValue('dbtableprefix', 'oc_');
63
+    }
64 64
 
65
-	/**
66
-	 * @param string $file
67
-	 * @param Schema $schema
68
-	 * @return Schema
69
-	 * @throws \DomainException
70
-	 */
71
-	public function loadSchemaFromFile($file, Schema $schema) {
72
-		$loadEntities = libxml_disable_entity_loader(false);
73
-		$xml = simplexml_load_file($file);
74
-		libxml_disable_entity_loader($loadEntities);
75
-		foreach ($xml->children() as $child) {
76
-			/**
77
-			 * @var \SimpleXMLElement $child
78
-			 */
79
-			switch ($child->getName()) {
80
-				case 'name':
81
-				case 'create':
82
-				case 'overwrite':
83
-				case 'charset':
84
-					break;
85
-				case 'table':
86
-					$this->loadTable($schema, $child);
87
-					break;
88
-				default:
89
-					throw new \DomainException('Unknown element: ' . $child->getName());
65
+    /**
66
+     * @param string $file
67
+     * @param Schema $schema
68
+     * @return Schema
69
+     * @throws \DomainException
70
+     */
71
+    public function loadSchemaFromFile($file, Schema $schema) {
72
+        $loadEntities = libxml_disable_entity_loader(false);
73
+        $xml = simplexml_load_file($file);
74
+        libxml_disable_entity_loader($loadEntities);
75
+        foreach ($xml->children() as $child) {
76
+            /**
77
+             * @var \SimpleXMLElement $child
78
+             */
79
+            switch ($child->getName()) {
80
+                case 'name':
81
+                case 'create':
82
+                case 'overwrite':
83
+                case 'charset':
84
+                    break;
85
+                case 'table':
86
+                    $this->loadTable($schema, $child);
87
+                    break;
88
+                default:
89
+                    throw new \DomainException('Unknown element: ' . $child->getName());
90 90
 
91
-			}
92
-		}
93
-		return $schema;
94
-	}
91
+            }
92
+        }
93
+        return $schema;
94
+    }
95 95
 
96
-	/**
97
-	 * @param \Doctrine\DBAL\Schema\Schema $schema
98
-	 * @param \SimpleXMLElement $xml
99
-	 * @throws \DomainException
100
-	 */
101
-	private function loadTable($schema, $xml) {
102
-		$table = null;
103
-		foreach ($xml->children() as $child) {
104
-			/**
105
-			 * @var \SimpleXMLElement $child
106
-			 */
107
-			switch ($child->getName()) {
108
-				case 'name':
109
-					$name = (string)$child;
110
-					$name = str_replace('*dbprefix*', $this->DBTABLEPREFIX, $name);
111
-					$name = $this->platform->quoteIdentifier($name);
112
-					$table = $schema->createTable($name);
113
-					break;
114
-				case 'create':
115
-				case 'overwrite':
116
-				case 'charset':
117
-					break;
118
-				case 'declaration':
119
-					if (is_null($table)) {
120
-						throw new \DomainException('Table declaration before table name');
121
-					}
122
-					$this->loadDeclaration($table, $child);
123
-					break;
124
-				default:
125
-					throw new \DomainException('Unknown element: ' . $child->getName());
96
+    /**
97
+     * @param \Doctrine\DBAL\Schema\Schema $schema
98
+     * @param \SimpleXMLElement $xml
99
+     * @throws \DomainException
100
+     */
101
+    private function loadTable($schema, $xml) {
102
+        $table = null;
103
+        foreach ($xml->children() as $child) {
104
+            /**
105
+             * @var \SimpleXMLElement $child
106
+             */
107
+            switch ($child->getName()) {
108
+                case 'name':
109
+                    $name = (string)$child;
110
+                    $name = str_replace('*dbprefix*', $this->DBTABLEPREFIX, $name);
111
+                    $name = $this->platform->quoteIdentifier($name);
112
+                    $table = $schema->createTable($name);
113
+                    break;
114
+                case 'create':
115
+                case 'overwrite':
116
+                case 'charset':
117
+                    break;
118
+                case 'declaration':
119
+                    if (is_null($table)) {
120
+                        throw new \DomainException('Table declaration before table name');
121
+                    }
122
+                    $this->loadDeclaration($table, $child);
123
+                    break;
124
+                default:
125
+                    throw new \DomainException('Unknown element: ' . $child->getName());
126 126
 
127
-			}
128
-		}
129
-	}
127
+            }
128
+        }
129
+    }
130 130
 
131
-	/**
132
-	 * @param \Doctrine\DBAL\Schema\Table $table
133
-	 * @param \SimpleXMLElement $xml
134
-	 * @throws \DomainException
135
-	 */
136
-	private function loadDeclaration($table, $xml) {
137
-		foreach ($xml->children() as $child) {
138
-			/**
139
-			 * @var \SimpleXMLElement $child
140
-			 */
141
-			switch ($child->getName()) {
142
-				case 'field':
143
-					$this->loadField($table, $child);
144
-					break;
145
-				case 'index':
146
-					$this->loadIndex($table, $child);
147
-					break;
148
-				default:
149
-					throw new \DomainException('Unknown element: ' . $child->getName());
131
+    /**
132
+     * @param \Doctrine\DBAL\Schema\Table $table
133
+     * @param \SimpleXMLElement $xml
134
+     * @throws \DomainException
135
+     */
136
+    private function loadDeclaration($table, $xml) {
137
+        foreach ($xml->children() as $child) {
138
+            /**
139
+             * @var \SimpleXMLElement $child
140
+             */
141
+            switch ($child->getName()) {
142
+                case 'field':
143
+                    $this->loadField($table, $child);
144
+                    break;
145
+                case 'index':
146
+                    $this->loadIndex($table, $child);
147
+                    break;
148
+                default:
149
+                    throw new \DomainException('Unknown element: ' . $child->getName());
150 150
 
151
-			}
152
-		}
153
-	}
151
+            }
152
+        }
153
+    }
154 154
 
155
-	/**
156
-	 * @param \Doctrine\DBAL\Schema\Table $table
157
-	 * @param \SimpleXMLElement $xml
158
-	 * @throws \DomainException
159
-	 */
160
-	private function loadField($table, $xml) {
161
-		$options = array( 'notnull' => false );
162
-		foreach ($xml->children() as $child) {
163
-			/**
164
-			 * @var \SimpleXMLElement $child
165
-			 */
166
-			switch ($child->getName()) {
167
-				case 'name':
168
-					$name = (string)$child;
169
-					$name = $this->platform->quoteIdentifier($name);
170
-					break;
171
-				case 'type':
172
-					$type = (string)$child;
173
-					switch ($type) {
174
-						case 'text':
175
-							$type = 'string';
176
-							break;
177
-						case 'clob':
178
-							$type = 'text';
179
-							break;
180
-						case 'timestamp':
181
-							$type = 'datetime';
182
-							break;
183
-						case 'numeric':
184
-							$type = 'decimal';
185
-							break;
186
-					}
187
-					break;
188
-				case 'length':
189
-					$length = (string)$child;
190
-					$options['length'] = $length;
191
-					break;
192
-				case 'unsigned':
193
-					$unsigned = $this->asBool($child);
194
-					$options['unsigned'] = $unsigned;
195
-					break;
196
-				case 'notnull':
197
-					$notnull = $this->asBool($child);
198
-					$options['notnull'] = $notnull;
199
-					break;
200
-				case 'autoincrement':
201
-					$autoincrement = $this->asBool($child);
202
-					$options['autoincrement'] = $autoincrement;
203
-					break;
204
-				case 'default':
205
-					$default = (string)$child;
206
-					$options['default'] = $default;
207
-					break;
208
-				case 'comments':
209
-					$comment = (string)$child;
210
-					$options['comment'] = $comment;
211
-					break;
212
-				case 'primary':
213
-					$primary = $this->asBool($child);
214
-					$options['primary'] = $primary;
215
-					break;
216
-				case 'precision':
217
-					$precision = (string)$child;
218
-					$options['precision'] = $precision;
219
-					break;
220
-				case 'scale':
221
-					$scale = (string)$child;
222
-					$options['scale'] = $scale;
223
-					break;
224
-				default:
225
-					throw new \DomainException('Unknown element: ' . $child->getName());
155
+    /**
156
+     * @param \Doctrine\DBAL\Schema\Table $table
157
+     * @param \SimpleXMLElement $xml
158
+     * @throws \DomainException
159
+     */
160
+    private function loadField($table, $xml) {
161
+        $options = array( 'notnull' => false );
162
+        foreach ($xml->children() as $child) {
163
+            /**
164
+             * @var \SimpleXMLElement $child
165
+             */
166
+            switch ($child->getName()) {
167
+                case 'name':
168
+                    $name = (string)$child;
169
+                    $name = $this->platform->quoteIdentifier($name);
170
+                    break;
171
+                case 'type':
172
+                    $type = (string)$child;
173
+                    switch ($type) {
174
+                        case 'text':
175
+                            $type = 'string';
176
+                            break;
177
+                        case 'clob':
178
+                            $type = 'text';
179
+                            break;
180
+                        case 'timestamp':
181
+                            $type = 'datetime';
182
+                            break;
183
+                        case 'numeric':
184
+                            $type = 'decimal';
185
+                            break;
186
+                    }
187
+                    break;
188
+                case 'length':
189
+                    $length = (string)$child;
190
+                    $options['length'] = $length;
191
+                    break;
192
+                case 'unsigned':
193
+                    $unsigned = $this->asBool($child);
194
+                    $options['unsigned'] = $unsigned;
195
+                    break;
196
+                case 'notnull':
197
+                    $notnull = $this->asBool($child);
198
+                    $options['notnull'] = $notnull;
199
+                    break;
200
+                case 'autoincrement':
201
+                    $autoincrement = $this->asBool($child);
202
+                    $options['autoincrement'] = $autoincrement;
203
+                    break;
204
+                case 'default':
205
+                    $default = (string)$child;
206
+                    $options['default'] = $default;
207
+                    break;
208
+                case 'comments':
209
+                    $comment = (string)$child;
210
+                    $options['comment'] = $comment;
211
+                    break;
212
+                case 'primary':
213
+                    $primary = $this->asBool($child);
214
+                    $options['primary'] = $primary;
215
+                    break;
216
+                case 'precision':
217
+                    $precision = (string)$child;
218
+                    $options['precision'] = $precision;
219
+                    break;
220
+                case 'scale':
221
+                    $scale = (string)$child;
222
+                    $options['scale'] = $scale;
223
+                    break;
224
+                default:
225
+                    throw new \DomainException('Unknown element: ' . $child->getName());
226 226
 
227
-			}
228
-		}
229
-		if (isset($name) && isset($type)) {
230
-			if (isset($options['default']) && empty($options['default'])) {
231
-				if (empty($options['notnull']) || !$options['notnull']) {
232
-					unset($options['default']);
233
-					$options['notnull'] = false;
234
-				} else {
235
-					$options['default'] = '';
236
-				}
237
-				if ($type == 'integer' || $type == 'decimal') {
238
-					$options['default'] = 0;
239
-				} elseif ($type == 'boolean') {
240
-					$options['default'] = false;
241
-				}
242
-				if (!empty($options['autoincrement']) && $options['autoincrement']) {
243
-					unset($options['default']);
244
-				}
245
-			}
246
-			if ($type === 'integer' && isset($options['default'])) {
247
-				$options['default'] = (int)$options['default'];
248
-			}
249
-			if ($type === 'integer' && isset($options['length'])) {
250
-				$length = $options['length'];
251
-				if ($length < 4) {
252
-					$type = 'smallint';
253
-				} else if ($length > 4) {
254
-					$type = 'bigint';
255
-				}
256
-			}
257
-			if ($type === 'boolean' && isset($options['default'])) {
258
-				$options['default'] = $this->asBool($options['default']);
259
-			}
260
-			if (!empty($options['autoincrement'])
261
-				&& !empty($options['notnull'])
262
-			) {
263
-				$options['primary'] = true;
264
-			}
227
+            }
228
+        }
229
+        if (isset($name) && isset($type)) {
230
+            if (isset($options['default']) && empty($options['default'])) {
231
+                if (empty($options['notnull']) || !$options['notnull']) {
232
+                    unset($options['default']);
233
+                    $options['notnull'] = false;
234
+                } else {
235
+                    $options['default'] = '';
236
+                }
237
+                if ($type == 'integer' || $type == 'decimal') {
238
+                    $options['default'] = 0;
239
+                } elseif ($type == 'boolean') {
240
+                    $options['default'] = false;
241
+                }
242
+                if (!empty($options['autoincrement']) && $options['autoincrement']) {
243
+                    unset($options['default']);
244
+                }
245
+            }
246
+            if ($type === 'integer' && isset($options['default'])) {
247
+                $options['default'] = (int)$options['default'];
248
+            }
249
+            if ($type === 'integer' && isset($options['length'])) {
250
+                $length = $options['length'];
251
+                if ($length < 4) {
252
+                    $type = 'smallint';
253
+                } else if ($length > 4) {
254
+                    $type = 'bigint';
255
+                }
256
+            }
257
+            if ($type === 'boolean' && isset($options['default'])) {
258
+                $options['default'] = $this->asBool($options['default']);
259
+            }
260
+            if (!empty($options['autoincrement'])
261
+                && !empty($options['notnull'])
262
+            ) {
263
+                $options['primary'] = true;
264
+            }
265 265
 
266
-			$table->addColumn($name, $type, $options);
267
-			if (!empty($options['primary']) && $options['primary']) {
268
-				$table->setPrimaryKey(array($name));
269
-			}
270
-		}
271
-	}
266
+            $table->addColumn($name, $type, $options);
267
+            if (!empty($options['primary']) && $options['primary']) {
268
+                $table->setPrimaryKey(array($name));
269
+            }
270
+        }
271
+    }
272 272
 
273
-	/**
274
-	 * @param \Doctrine\DBAL\Schema\Table $table
275
-	 * @param \SimpleXMLElement $xml
276
-	 * @throws \DomainException
277
-	 */
278
-	private function loadIndex($table, $xml) {
279
-		$name = null;
280
-		$fields = array();
281
-		foreach ($xml->children() as $child) {
282
-			/**
283
-			 * @var \SimpleXMLElement $child
284
-			 */
285
-			switch ($child->getName()) {
286
-				case 'name':
287
-					$name = (string)$child;
288
-					break;
289
-				case 'primary':
290
-					$primary = $this->asBool($child);
291
-					break;
292
-				case 'unique':
293
-					$unique = $this->asBool($child);
294
-					break;
295
-				case 'field':
296
-					foreach ($child->children() as $field) {
297
-						/**
298
-						 * @var \SimpleXMLElement $field
299
-						 */
300
-						switch ($field->getName()) {
301
-							case 'name':
302
-								$field_name = (string)$field;
303
-								$field_name = $this->platform->quoteIdentifier($field_name);
304
-								$fields[] = $field_name;
305
-								break;
306
-							case 'sorting':
307
-								break;
308
-							default:
309
-								throw new \DomainException('Unknown element: ' . $field->getName());
273
+    /**
274
+     * @param \Doctrine\DBAL\Schema\Table $table
275
+     * @param \SimpleXMLElement $xml
276
+     * @throws \DomainException
277
+     */
278
+    private function loadIndex($table, $xml) {
279
+        $name = null;
280
+        $fields = array();
281
+        foreach ($xml->children() as $child) {
282
+            /**
283
+             * @var \SimpleXMLElement $child
284
+             */
285
+            switch ($child->getName()) {
286
+                case 'name':
287
+                    $name = (string)$child;
288
+                    break;
289
+                case 'primary':
290
+                    $primary = $this->asBool($child);
291
+                    break;
292
+                case 'unique':
293
+                    $unique = $this->asBool($child);
294
+                    break;
295
+                case 'field':
296
+                    foreach ($child->children() as $field) {
297
+                        /**
298
+                         * @var \SimpleXMLElement $field
299
+                         */
300
+                        switch ($field->getName()) {
301
+                            case 'name':
302
+                                $field_name = (string)$field;
303
+                                $field_name = $this->platform->quoteIdentifier($field_name);
304
+                                $fields[] = $field_name;
305
+                                break;
306
+                            case 'sorting':
307
+                                break;
308
+                            default:
309
+                                throw new \DomainException('Unknown element: ' . $field->getName());
310 310
 
311
-						}
312
-					}
313
-					break;
314
-				default:
315
-					throw new \DomainException('Unknown element: ' . $child->getName());
311
+                        }
312
+                    }
313
+                    break;
314
+                default:
315
+                    throw new \DomainException('Unknown element: ' . $child->getName());
316 316
 
317
-			}
318
-		}
319
-		if (!empty($fields)) {
320
-			if (isset($primary) && $primary) {
321
-				if ($table->hasPrimaryKey()) {
322
-					return;
323
-				}
324
-				$table->setPrimaryKey($fields, $name);
325
-			} else {
326
-				if (isset($unique) && $unique) {
327
-					$table->addUniqueIndex($fields, $name);
328
-				} else {
329
-					$table->addIndex($fields, $name);
330
-				}
331
-			}
332
-		} else {
333
-			throw new \DomainException('Empty index definition: ' . $name . ' options:' . print_r($fields, true));
334
-		}
335
-	}
317
+            }
318
+        }
319
+        if (!empty($fields)) {
320
+            if (isset($primary) && $primary) {
321
+                if ($table->hasPrimaryKey()) {
322
+                    return;
323
+                }
324
+                $table->setPrimaryKey($fields, $name);
325
+            } else {
326
+                if (isset($unique) && $unique) {
327
+                    $table->addUniqueIndex($fields, $name);
328
+                } else {
329
+                    $table->addIndex($fields, $name);
330
+                }
331
+            }
332
+        } else {
333
+            throw new \DomainException('Empty index definition: ' . $name . ' options:' . print_r($fields, true));
334
+        }
335
+    }
336 336
 
337
-	/**
338
-	 * @param \SimpleXMLElement|string $xml
339
-	 * @return bool
340
-	 */
341
-	private function asBool($xml) {
342
-		$result = (string)$xml;
343
-		if ($result == 'true') {
344
-			$result = true;
345
-		} elseif ($result == 'false') {
346
-			$result = false;
347
-		}
348
-		return (bool)$result;
349
-	}
337
+    /**
338
+     * @param \SimpleXMLElement|string $xml
339
+     * @return bool
340
+     */
341
+    private function asBool($xml) {
342
+        $result = (string)$xml;
343
+        if ($result == 'true') {
344
+            $result = true;
345
+        } elseif ($result == 'false') {
346
+            $result = false;
347
+        }
348
+        return (bool)$result;
349
+    }
350 350
 
351 351
 }
Please login to merge, or discard this patch.
apps/dav/lib/Avatars/RootCollection.php 1 patch
Indentation   +17 added lines, -17 removed lines patch added patch discarded remove patch
@@ -7,23 +7,23 @@
 block discarded – undo
7 7
 
8 8
 class RootCollection extends AbstractPrincipalCollection {
9 9
 
10
-	/**
11
-	 * This method returns a node for a principal.
12
-	 *
13
-	 * The passed array contains principal information, and is guaranteed to
14
-	 * at least contain a uri item. Other properties may or may not be
15
-	 * supplied by the authentication backend.
16
-	 *
17
-	 * @param array $principalInfo
18
-	 * @return AvatarHome
19
-	 */
20
-	public function getChildForPrincipal(array $principalInfo) {
21
-		$avatarManager = \OC::$server->getAvatarManager();
22
-		return new AvatarHome($principalInfo, $avatarManager);
23
-	}
10
+    /**
11
+     * This method returns a node for a principal.
12
+     *
13
+     * The passed array contains principal information, and is guaranteed to
14
+     * at least contain a uri item. Other properties may or may not be
15
+     * supplied by the authentication backend.
16
+     *
17
+     * @param array $principalInfo
18
+     * @return AvatarHome
19
+     */
20
+    public function getChildForPrincipal(array $principalInfo) {
21
+        $avatarManager = \OC::$server->getAvatarManager();
22
+        return new AvatarHome($principalInfo, $avatarManager);
23
+    }
24 24
 
25
-	public function getName() {
26
-		return 'avatars';
27
-	}
25
+    public function getName() {
26
+        return 'avatars';
27
+    }
28 28
 
29 29
 }
Please login to merge, or discard this patch.
apps/dav/lib/Migration/CalDAVRemoveEmptyValue.php 1 patch
Indentation   +83 added lines, -83 removed lines patch added patch discarded remove patch
@@ -33,87 +33,87 @@
 block discarded – undo
33 33
 
34 34
 class CalDAVRemoveEmptyValue implements IRepairStep {
35 35
 
36
-	/** @var IDBConnection */
37
-	private $db;
38
-
39
-	/** @var CalDavBackend */
40
-	private $calDavBackend;
41
-
42
-	/** @var ILogger */
43
-	private $logger;
44
-
45
-	/**
46
-	 * @param IDBConnection $db
47
-	 * @param CalDavBackend $calDavBackend
48
-	 * @param ILogger $logger
49
-	 */
50
-	public function __construct(IDBConnection $db, CalDavBackend $calDavBackend, ILogger $logger) {
51
-		$this->db = $db;
52
-		$this->calDavBackend = $calDavBackend;
53
-		$this->logger = $logger;
54
-	}
55
-
56
-	public function getName() {
57
-		return 'Fix broken values of calendar objects';
58
-	}
59
-
60
-	public function run(IOutput $output) {
61
-		$pattern = ';VALUE=:';
62
-		$count = $warnings = 0;
63
-
64
-		$objects = $this->getInvalidObjects($pattern);
65
-
66
-		$output->startProgress(count($objects));
67
-		foreach ($objects as $row) {
68
-			$calObject = $this->calDavBackend->getCalendarObject((int)$row['calendarid'], $row['uri']);
69
-			$data = preg_replace('/' . $pattern . '/', ':', $calObject['calendardata']);
70
-
71
-			if ($data !== $calObject['calendardata']) {
72
-				$output->advance();
73
-
74
-				try {
75
-					$this->calDavBackend->getDenormalizedData($data);
76
-				} catch (InvalidDataException $e) {
77
-					$this->logger->info('Calendar object for calendar {cal} with uri {uri} still invalid', [
78
-						'app' => 'dav',
79
-						'cal' => (int)$row['calendarid'],
80
-						'uri' => $row['uri'],
81
-					]);
82
-					$warnings++;
83
-					continue;
84
-				}
85
-
86
-				$this->calDavBackend->updateCalendarObject((int)$row['calendarid'], $row['uri'], $data);
87
-				$count++;
88
-			}
89
-		}
90
-		$output->finishProgress();
91
-
92
-		if ($warnings > 0) {
93
-			$output->warning(sprintf('%d events could not be updated, see log file for more information', $warnings));
94
-		}
95
-		if ($count > 0) {
96
-			$output->info(sprintf('Updated %d events', $count));
97
-		}
98
-	}
99
-
100
-	protected function getInvalidObjects($pattern) {
101
-		$query = $this->db->getQueryBuilder();
102
-		$query->select(['calendarid', 'uri'])
103
-			->from('calendarobjects')
104
-			->where($query->expr()->like(
105
-				'calendardata',
106
-				$query->createNamedParameter(
107
-					'%' . $this->db->escapeLikeParameter($pattern) . '%',
108
-					IQueryBuilder::PARAM_STR
109
-				),
110
-				IQueryBuilder::PARAM_STR
111
-			));
112
-
113
-		$result = $query->execute();
114
-		$rows = $result->fetchAll();
115
-		$result->closeCursor();
116
-
117
-		return $rows;
118
-	}
36
+    /** @var IDBConnection */
37
+    private $db;
38
+
39
+    /** @var CalDavBackend */
40
+    private $calDavBackend;
41
+
42
+    /** @var ILogger */
43
+    private $logger;
44
+
45
+    /**
46
+     * @param IDBConnection $db
47
+     * @param CalDavBackend $calDavBackend
48
+     * @param ILogger $logger
49
+     */
50
+    public function __construct(IDBConnection $db, CalDavBackend $calDavBackend, ILogger $logger) {
51
+        $this->db = $db;
52
+        $this->calDavBackend = $calDavBackend;
53
+        $this->logger = $logger;
54
+    }
55
+
56
+    public function getName() {
57
+        return 'Fix broken values of calendar objects';
58
+    }
59
+
60
+    public function run(IOutput $output) {
61
+        $pattern = ';VALUE=:';
62
+        $count = $warnings = 0;
63
+
64
+        $objects = $this->getInvalidObjects($pattern);
65
+
66
+        $output->startProgress(count($objects));
67
+        foreach ($objects as $row) {
68
+            $calObject = $this->calDavBackend->getCalendarObject((int)$row['calendarid'], $row['uri']);
69
+            $data = preg_replace('/' . $pattern . '/', ':', $calObject['calendardata']);
70
+
71
+            if ($data !== $calObject['calendardata']) {
72
+                $output->advance();
73
+
74
+                try {
75
+                    $this->calDavBackend->getDenormalizedData($data);
76
+                } catch (InvalidDataException $e) {
77
+                    $this->logger->info('Calendar object for calendar {cal} with uri {uri} still invalid', [
78
+                        'app' => 'dav',
79
+                        'cal' => (int)$row['calendarid'],
80
+                        'uri' => $row['uri'],
81
+                    ]);
82
+                    $warnings++;
83
+                    continue;
84
+                }
85
+
86
+                $this->calDavBackend->updateCalendarObject((int)$row['calendarid'], $row['uri'], $data);
87
+                $count++;
88
+            }
89
+        }
90
+        $output->finishProgress();
91
+
92
+        if ($warnings > 0) {
93
+            $output->warning(sprintf('%d events could not be updated, see log file for more information', $warnings));
94
+        }
95
+        if ($count > 0) {
96
+            $output->info(sprintf('Updated %d events', $count));
97
+        }
98
+    }
99
+
100
+    protected function getInvalidObjects($pattern) {
101
+        $query = $this->db->getQueryBuilder();
102
+        $query->select(['calendarid', 'uri'])
103
+            ->from('calendarobjects')
104
+            ->where($query->expr()->like(
105
+                'calendardata',
106
+                $query->createNamedParameter(
107
+                    '%' . $this->db->escapeLikeParameter($pattern) . '%',
108
+                    IQueryBuilder::PARAM_STR
109
+                ),
110
+                IQueryBuilder::PARAM_STR
111
+            ));
112
+
113
+        $result = $query->execute();
114
+        $rows = $result->fetchAll();
115
+        $result->closeCursor();
116
+
117
+        return $rows;
118
+    }
119 119
 }
Please login to merge, or discard this patch.
apps/dav/lib/CalDAV/Search/Xml/Filter/CompFilter.php 1 patch
Indentation   +14 added lines, -14 removed lines patch added patch discarded remove patch
@@ -27,21 +27,21 @@
 block discarded – undo
27 27
 
28 28
 class CompFilter implements XmlDeserializable {
29 29
 
30
-	/**
31
-	 * @param Reader $reader
32
-	 * @throws BadRequest
33
-	 * @return string
34
-	 */
35
-	static function xmlDeserialize(Reader $reader) {
36
-		$att = $reader->parseAttributes();
37
-		$componentName = $att['name'];
30
+    /**
31
+     * @param Reader $reader
32
+     * @throws BadRequest
33
+     * @return string
34
+     */
35
+    static function xmlDeserialize(Reader $reader) {
36
+        $att = $reader->parseAttributes();
37
+        $componentName = $att['name'];
38 38
 
39
-		$reader->parseInnerTree();
39
+        $reader->parseInnerTree();
40 40
 
41
-		if (!is_string($componentName)) {
42
-			throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}comp-filter requires a valid name attribute');
43
-		}
41
+        if (!is_string($componentName)) {
42
+            throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}comp-filter requires a valid name attribute');
43
+        }
44 44
 
45
-		return $componentName;
46
-	}
45
+        return $componentName;
46
+    }
47 47
 }
Please login to merge, or discard this patch.
apps/dav/lib/CalDAV/Search/Xml/Filter/SearchTermFilter.php 1 patch
Indentation   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -27,17 +27,17 @@
 block discarded – undo
27 27
 
28 28
 class SearchTermFilter implements XmlDeserializable {
29 29
 
30
-	/**
31
-	 * @param Reader $reader
32
-	 * @throws BadRequest
33
-	 * @return string
34
-	 */
35
-	static function xmlDeserialize(Reader $reader) {
36
-		$value = $reader->parseInnerTree();
37
-		if (!is_string($value)) {
38
-			throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}search-term has illegal value');
39
-		}
30
+    /**
31
+     * @param Reader $reader
32
+     * @throws BadRequest
33
+     * @return string
34
+     */
35
+    static function xmlDeserialize(Reader $reader) {
36
+        $value = $reader->parseInnerTree();
37
+        if (!is_string($value)) {
38
+            throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}search-term has illegal value');
39
+        }
40 40
 
41
-		return $value;
42
-	}
41
+        return $value;
42
+    }
43 43
 }
44 44
\ No newline at end of file
Please login to merge, or discard this patch.
apps/dav/lib/CalDAV/Search/Xml/Filter/PropFilter.php 1 patch
Indentation   +14 added lines, -14 removed lines patch added patch discarded remove patch
@@ -27,21 +27,21 @@
 block discarded – undo
27 27
 
28 28
 class PropFilter implements XmlDeserializable {
29 29
 
30
-	/**
31
-	 * @param Reader $reader
32
-	 * @throws BadRequest
33
-	 * @return string
34
-	 */
35
-	static function xmlDeserialize(Reader $reader) {
36
-		$att = $reader->parseAttributes();
37
-		$componentName = $att['name'];
30
+    /**
31
+     * @param Reader $reader
32
+     * @throws BadRequest
33
+     * @return string
34
+     */
35
+    static function xmlDeserialize(Reader $reader) {
36
+        $att = $reader->parseAttributes();
37
+        $componentName = $att['name'];
38 38
 
39
-		$reader->parseInnerTree();
39
+        $reader->parseInnerTree();
40 40
 
41
-		if (!is_string($componentName)) {
42
-			throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}prop-filter requires a valid name attribute');
43
-		}
41
+        if (!is_string($componentName)) {
42
+            throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}prop-filter requires a valid name attribute');
43
+        }
44 44
 
45
-		return $componentName;
46
-	}
45
+        return $componentName;
46
+    }
47 47
 }
Please login to merge, or discard this patch.
apps/dav/lib/CalDAV/Search/Xml/Filter/ParamFilter.php 1 patch
Indentation   +21 added lines, -21 removed lines patch added patch discarded remove patch
@@ -27,29 +27,29 @@
 block discarded – undo
27 27
 
28 28
 class ParamFilter implements XmlDeserializable {
29 29
 
30
-	/**
31
-	 * @param Reader $reader
32
-	 * @throws BadRequest
33
-	 * @return string
34
-	 */
35
-	static function xmlDeserialize(Reader $reader) {
36
-		$att = $reader->parseAttributes();
37
-		$property = $att['property'];
38
-		$parameter = $att['name'];
30
+    /**
31
+     * @param Reader $reader
32
+     * @throws BadRequest
33
+     * @return string
34
+     */
35
+    static function xmlDeserialize(Reader $reader) {
36
+        $att = $reader->parseAttributes();
37
+        $property = $att['property'];
38
+        $parameter = $att['name'];
39 39
 
40
-		$reader->parseInnerTree();
40
+        $reader->parseInnerTree();
41 41
 
42
-		if (!is_string($property)) {
43
-			throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}param-filter requires a valid property attribute');
42
+        if (!is_string($property)) {
43
+            throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}param-filter requires a valid property attribute');
44 44
 
45
-		}
46
-		if (!is_string($parameter)) {
47
-			throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}param-filter requires a valid parameter attribute');
48
-		}
45
+        }
46
+        if (!is_string($parameter)) {
47
+            throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}param-filter requires a valid parameter attribute');
48
+        }
49 49
 
50
-		return [
51
-			'property' => $property,
52
-			'parameter' => $parameter,
53
-		];
54
-	}
50
+        return [
51
+            'property' => $property,
52
+            'parameter' => $parameter,
53
+        ];
54
+    }
55 55
 }
Please login to merge, or discard this patch.
lib/private/Activity/EventMerger.php 1 patch
Indentation   +201 added lines, -201 removed lines patch added patch discarded remove patch
@@ -27,230 +27,230 @@
 block discarded – undo
27 27
 
28 28
 class EventMerger implements IEventMerger {
29 29
 
30
-	/** @var IL10N */
31
-	protected $l10n;
30
+    /** @var IL10N */
31
+    protected $l10n;
32 32
 
33
-	/**
34
-	 * @param IL10N $l10n
35
-	 */
36
-	public function __construct(IL10N $l10n) {
37
-		$this->l10n = $l10n;
38
-	}
33
+    /**
34
+     * @param IL10N $l10n
35
+     */
36
+    public function __construct(IL10N $l10n) {
37
+        $this->l10n = $l10n;
38
+    }
39 39
 
40
-	/**
41
-	 * Combines two events when possible to have grouping:
42
-	 *
43
-	 * Example1: Two events with subject '{user} created {file}' and
44
-	 * $mergeParameter file with different file and same user will be merged
45
-	 * to '{user} created {file1} and {file2}' and the childEvent on the return
46
-	 * will be set, if the events have been merged.
47
-	 *
48
-	 * Example2: Two events with subject '{user} created {file}' and
49
-	 * $mergeParameter file with same file and same user will be merged to
50
-	 * '{user} created {file1}' and the childEvent on the return will be set, if
51
-	 * the events have been merged.
52
-	 *
53
-	 * The following requirements have to be met, in order to be merged:
54
-	 * - Both events need to have the same `getApp()`
55
-	 * - Both events must not have a message `getMessage()`
56
-	 * - Both events need to have the same subject `getSubject()`
57
-	 * - Both events need to have the same object type `getObjectType()`
58
-	 * - The time difference between both events must not be bigger then 3 hours
59
-	 * - Only up to 5 events can be merged.
60
-	 * - All parameters apart from such starting with $mergeParameter must be
61
-	 *   the same for both events.
62
-	 *
63
-	 * @param string $mergeParameter
64
-	 * @param IEvent $event
65
-	 * @param IEvent|null $previousEvent
66
-	 * @return IEvent
67
-	 */
68
-	public function mergeEvents($mergeParameter, IEvent $event, IEvent $previousEvent = null) {
69
-		// No second event => can not combine
70
-		if (!$previousEvent instanceof IEvent) {
71
-			return $event;
72
-		}
40
+    /**
41
+     * Combines two events when possible to have grouping:
42
+     *
43
+     * Example1: Two events with subject '{user} created {file}' and
44
+     * $mergeParameter file with different file and same user will be merged
45
+     * to '{user} created {file1} and {file2}' and the childEvent on the return
46
+     * will be set, if the events have been merged.
47
+     *
48
+     * Example2: Two events with subject '{user} created {file}' and
49
+     * $mergeParameter file with same file and same user will be merged to
50
+     * '{user} created {file1}' and the childEvent on the return will be set, if
51
+     * the events have been merged.
52
+     *
53
+     * The following requirements have to be met, in order to be merged:
54
+     * - Both events need to have the same `getApp()`
55
+     * - Both events must not have a message `getMessage()`
56
+     * - Both events need to have the same subject `getSubject()`
57
+     * - Both events need to have the same object type `getObjectType()`
58
+     * - The time difference between both events must not be bigger then 3 hours
59
+     * - Only up to 5 events can be merged.
60
+     * - All parameters apart from such starting with $mergeParameter must be
61
+     *   the same for both events.
62
+     *
63
+     * @param string $mergeParameter
64
+     * @param IEvent $event
65
+     * @param IEvent|null $previousEvent
66
+     * @return IEvent
67
+     */
68
+    public function mergeEvents($mergeParameter, IEvent $event, IEvent $previousEvent = null) {
69
+        // No second event => can not combine
70
+        if (!$previousEvent instanceof IEvent) {
71
+            return $event;
72
+        }
73 73
 
74
-		// Different app => can not combine
75
-		if ($event->getApp() !== $previousEvent->getApp()) {
76
-			return $event;
77
-		}
74
+        // Different app => can not combine
75
+        if ($event->getApp() !== $previousEvent->getApp()) {
76
+            return $event;
77
+        }
78 78
 
79
-		// Message is set => can not combine
80
-		if ($event->getMessage() !== '' || $previousEvent->getMessage() !== '') {
81
-			return $event;
82
-		}
79
+        // Message is set => can not combine
80
+        if ($event->getMessage() !== '' || $previousEvent->getMessage() !== '') {
81
+            return $event;
82
+        }
83 83
 
84
-		// Different subject => can not combine
85
-		if ($event->getSubject() !== $previousEvent->getSubject()) {
86
-			return $event;
87
-		}
84
+        // Different subject => can not combine
85
+        if ($event->getSubject() !== $previousEvent->getSubject()) {
86
+            return $event;
87
+        }
88 88
 
89
-		// Different object type => can not combine
90
-		if ($event->getObjectType() !== $previousEvent->getObjectType()) {
91
-			return $event;
92
-		}
89
+        // Different object type => can not combine
90
+        if ($event->getObjectType() !== $previousEvent->getObjectType()) {
91
+            return $event;
92
+        }
93 93
 
94
-		// More than 3 hours difference => can not combine
95
-		if (abs($event->getTimestamp() - $previousEvent->getTimestamp()) > 3 * 60 * 60) {
96
-			return $event;
97
-		}
94
+        // More than 3 hours difference => can not combine
95
+        if (abs($event->getTimestamp() - $previousEvent->getTimestamp()) > 3 * 60 * 60) {
96
+            return $event;
97
+        }
98 98
 
99
-		// Other parameters are not the same => can not combine
100
-		try {
101
-			list($combined, $parameters) = $this->combineParameters($mergeParameter, $event, $previousEvent);
102
-		} catch (\UnexpectedValueException $e) {
103
-			return $event;
104
-		}
99
+        // Other parameters are not the same => can not combine
100
+        try {
101
+            list($combined, $parameters) = $this->combineParameters($mergeParameter, $event, $previousEvent);
102
+        } catch (\UnexpectedValueException $e) {
103
+            return $event;
104
+        }
105 105
 
106
-		try {
107
-			$newSubject = $this->getExtendedSubject($event->getRichSubject(), $mergeParameter, $combined);
108
-			$parsedSubject = $this->generateParsedSubject($newSubject, $parameters);
106
+        try {
107
+            $newSubject = $this->getExtendedSubject($event->getRichSubject(), $mergeParameter, $combined);
108
+            $parsedSubject = $this->generateParsedSubject($newSubject, $parameters);
109 109
 
110
-			$event->setRichSubject($newSubject, $parameters)
111
-				->setParsedSubject($parsedSubject)
112
-				->setChildEvent($previousEvent);
113
-		} catch (\UnexpectedValueException $e) {
114
-			return $event;
115
-		}
110
+            $event->setRichSubject($newSubject, $parameters)
111
+                ->setParsedSubject($parsedSubject)
112
+                ->setChildEvent($previousEvent);
113
+        } catch (\UnexpectedValueException $e) {
114
+            return $event;
115
+        }
116 116
 
117
-		return $event;
118
-	}
117
+        return $event;
118
+    }
119 119
 
120
-	/**
121
-	 * @param string $mergeParameter
122
-	 * @param IEvent $event
123
-	 * @param IEvent $previousEvent
124
-	 * @return array
125
-	 * @throws \UnexpectedValueException
126
-	 */
127
-	protected function combineParameters($mergeParameter, IEvent $event, IEvent $previousEvent) {
128
-		$params1 = $event->getRichSubjectParameters();
129
-		$params2 = $previousEvent->getRichSubjectParameters();
130
-		$params = [];
120
+    /**
121
+     * @param string $mergeParameter
122
+     * @param IEvent $event
123
+     * @param IEvent $previousEvent
124
+     * @return array
125
+     * @throws \UnexpectedValueException
126
+     */
127
+    protected function combineParameters($mergeParameter, IEvent $event, IEvent $previousEvent) {
128
+        $params1 = $event->getRichSubjectParameters();
129
+        $params2 = $previousEvent->getRichSubjectParameters();
130
+        $params = [];
131 131
 
132
-		$combined = 0;
132
+        $combined = 0;
133 133
 
134
-		// Check that all parameters from $event exist in $previousEvent
135
-		foreach ($params1 as $key => $parameter) {
136
-			if (preg_match('/^' . $mergeParameter . '(\d+)?$/', $key)) {
137
-				if (!$this->checkParameterAlreadyExits($params, $mergeParameter, $parameter)) {
138
-					$combined++;
139
-					$params[$mergeParameter . $combined] = $parameter;
140
-				}
141
-				continue;
142
-			}
134
+        // Check that all parameters from $event exist in $previousEvent
135
+        foreach ($params1 as $key => $parameter) {
136
+            if (preg_match('/^' . $mergeParameter . '(\d+)?$/', $key)) {
137
+                if (!$this->checkParameterAlreadyExits($params, $mergeParameter, $parameter)) {
138
+                    $combined++;
139
+                    $params[$mergeParameter . $combined] = $parameter;
140
+                }
141
+                continue;
142
+            }
143 143
 
144
-			if (!isset($params2[$key]) || $params2[$key] !== $parameter) {
145
-				// Parameter missing on $previousEvent or different => can not combine
146
-				throw new \UnexpectedValueException();
147
-			}
144
+            if (!isset($params2[$key]) || $params2[$key] !== $parameter) {
145
+                // Parameter missing on $previousEvent or different => can not combine
146
+                throw new \UnexpectedValueException();
147
+            }
148 148
 
149
-			$params[$key] = $parameter;
150
-		}
149
+            $params[$key] = $parameter;
150
+        }
151 151
 
152
-		// Check that all parameters from $previousEvent exist in $event
153
-		foreach ($params2 as $key => $parameter) {
154
-			if (preg_match('/^' . $mergeParameter . '(\d+)?$/', $key)) {
155
-				if (!$this->checkParameterAlreadyExits($params, $mergeParameter, $parameter)) {
156
-					$combined++;
157
-					$params[$mergeParameter . $combined] = $parameter;
158
-				}
159
-				continue;
160
-			}
152
+        // Check that all parameters from $previousEvent exist in $event
153
+        foreach ($params2 as $key => $parameter) {
154
+            if (preg_match('/^' . $mergeParameter . '(\d+)?$/', $key)) {
155
+                if (!$this->checkParameterAlreadyExits($params, $mergeParameter, $parameter)) {
156
+                    $combined++;
157
+                    $params[$mergeParameter . $combined] = $parameter;
158
+                }
159
+                continue;
160
+            }
161 161
 
162
-			if (!isset($params1[$key]) || $params1[$key] !== $parameter) {
163
-				// Parameter missing on $event or different => can not combine
164
-				throw new \UnexpectedValueException();
165
-			}
162
+            if (!isset($params1[$key]) || $params1[$key] !== $parameter) {
163
+                // Parameter missing on $event or different => can not combine
164
+                throw new \UnexpectedValueException();
165
+            }
166 166
 
167
-			$params[$key] = $parameter;
168
-		}
167
+            $params[$key] = $parameter;
168
+        }
169 169
 
170
-		return [$combined, $params];
171
-	}
170
+        return [$combined, $params];
171
+    }
172 172
 
173
-	/**
174
-	 * @param array[] $parameters
175
-	 * @param string $mergeParameter
176
-	 * @param array $parameter
177
-	 * @return bool
178
-	 */
179
-	protected function checkParameterAlreadyExits($parameters, $mergeParameter, $parameter) {
180
-		foreach ($parameters as $key => $param) {
181
-			if (preg_match('/^' . $mergeParameter . '(\d+)?$/', $key)) {
182
-				if ($param === $parameter) {
183
-					return true;
184
-				}
185
-			}
186
-		}
187
-		return false;
188
-	}
173
+    /**
174
+     * @param array[] $parameters
175
+     * @param string $mergeParameter
176
+     * @param array $parameter
177
+     * @return bool
178
+     */
179
+    protected function checkParameterAlreadyExits($parameters, $mergeParameter, $parameter) {
180
+        foreach ($parameters as $key => $param) {
181
+            if (preg_match('/^' . $mergeParameter . '(\d+)?$/', $key)) {
182
+                if ($param === $parameter) {
183
+                    return true;
184
+                }
185
+            }
186
+        }
187
+        return false;
188
+    }
189 189
 
190
-	/**
191
-	 * @param string $subject
192
-	 * @param string $parameter
193
-	 * @param int $counter
194
-	 * @return mixed
195
-	 */
196
-	protected function getExtendedSubject($subject, $parameter, $counter) {
197
-		switch ($counter) {
198
-			case 1:
199
-				$replacement = '{' . $parameter . '1}';
200
-				break;
201
-			case 2:
202
-				$replacement = $this->l10n->t(
203
-					'%1$s and %2$s',
204
-					['{' . $parameter . '2}', '{' . $parameter . '1}']
205
-				);
206
-				break;
207
-			case 3:
208
-				$replacement = $this->l10n->t(
209
-					'%1$s, %2$s and %3$s',
210
-					['{' . $parameter . '3}', '{' . $parameter . '2}', '{' . $parameter . '1}']
211
-				);
212
-				break;
213
-			case 4:
214
-				$replacement = $this->l10n->t(
215
-					'%1$s, %2$s, %3$s and %4$s',
216
-					['{' . $parameter . '4}', '{' . $parameter . '3}', '{' . $parameter . '2}', '{' . $parameter . '1}']
217
-				);
218
-				break;
219
-			case 5:
220
-				$replacement = $this->l10n->t(
221
-					'%1$s, %2$s, %3$s, %4$s and %5$s',
222
-					['{' . $parameter . '5}', '{' . $parameter . '4}', '{' . $parameter . '3}', '{' . $parameter . '2}', '{' . $parameter . '1}']
223
-				);
224
-				break;
225
-			default:
226
-				throw new \UnexpectedValueException();
227
-		}
190
+    /**
191
+     * @param string $subject
192
+     * @param string $parameter
193
+     * @param int $counter
194
+     * @return mixed
195
+     */
196
+    protected function getExtendedSubject($subject, $parameter, $counter) {
197
+        switch ($counter) {
198
+            case 1:
199
+                $replacement = '{' . $parameter . '1}';
200
+                break;
201
+            case 2:
202
+                $replacement = $this->l10n->t(
203
+                    '%1$s and %2$s',
204
+                    ['{' . $parameter . '2}', '{' . $parameter . '1}']
205
+                );
206
+                break;
207
+            case 3:
208
+                $replacement = $this->l10n->t(
209
+                    '%1$s, %2$s and %3$s',
210
+                    ['{' . $parameter . '3}', '{' . $parameter . '2}', '{' . $parameter . '1}']
211
+                );
212
+                break;
213
+            case 4:
214
+                $replacement = $this->l10n->t(
215
+                    '%1$s, %2$s, %3$s and %4$s',
216
+                    ['{' . $parameter . '4}', '{' . $parameter . '3}', '{' . $parameter . '2}', '{' . $parameter . '1}']
217
+                );
218
+                break;
219
+            case 5:
220
+                $replacement = $this->l10n->t(
221
+                    '%1$s, %2$s, %3$s, %4$s and %5$s',
222
+                    ['{' . $parameter . '5}', '{' . $parameter . '4}', '{' . $parameter . '3}', '{' . $parameter . '2}', '{' . $parameter . '1}']
223
+                );
224
+                break;
225
+            default:
226
+                throw new \UnexpectedValueException();
227
+        }
228 228
 
229
-		return str_replace(
230
-			'{' . $parameter . '}',
231
-			$replacement,
232
-			$subject
233
-		);
234
-	}
229
+        return str_replace(
230
+            '{' . $parameter . '}',
231
+            $replacement,
232
+            $subject
233
+        );
234
+    }
235 235
 
236
-	/**
237
-	 * @param string $subject
238
-	 * @param array[] $parameters
239
-	 * @return string
240
-	 */
241
-	protected function generateParsedSubject($subject, $parameters) {
242
-		$placeholders = $replacements = [];
243
-		foreach ($parameters as $placeholder => $parameter) {
244
-			$placeholders[] = '{' . $placeholder . '}';
245
-			if ($parameter['type'] === 'file') {
246
-				$replacements[] = trim($parameter['path'], '/');
247
-			} else if (isset($parameter['name'])) {
248
-				$replacements[] = $parameter['name'];
249
-			} else {
250
-				$replacements[] = $parameter['id'];
251
-			}
252
-		}
236
+    /**
237
+     * @param string $subject
238
+     * @param array[] $parameters
239
+     * @return string
240
+     */
241
+    protected function generateParsedSubject($subject, $parameters) {
242
+        $placeholders = $replacements = [];
243
+        foreach ($parameters as $placeholder => $parameter) {
244
+            $placeholders[] = '{' . $placeholder . '}';
245
+            if ($parameter['type'] === 'file') {
246
+                $replacements[] = trim($parameter['path'], '/');
247
+            } else if (isset($parameter['name'])) {
248
+                $replacements[] = $parameter['name'];
249
+            } else {
250
+                $replacements[] = $parameter['id'];
251
+            }
252
+        }
253 253
 
254
-		return str_replace($placeholders, $replacements, $subject);
255
-	}
254
+        return str_replace($placeholders, $replacements, $subject);
255
+    }
256 256
 }
Please login to merge, or discard this patch.