Completed
Push — master ( c3f16a...5bade9 )
by Joas
28:33 queued 19s
created
core/templates/error.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -6,7 +6,7 @@
 block discarded – undo
6 6
 			<p><?php p($error['error']) ?></p>
7 7
 			<?php if (isset($error['hint']) && $error['hint']): ?>
8 8
 				<p class='hint'><?php p($error['hint']) ?></p>
9
-			<?php endif;?>
9
+			<?php endif; ?>
10 10
 		</li>
11 11
 	<?php endforeach ?>
12 12
 	</ul>
Please login to merge, or discard this patch.
core/Command/Encryption/ChangeKeyStorageRoot.php 2 patches
Spacing   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -142,7 +142,7 @@  discard block
 block discarded – undo
142 142
 		}
143 143
 
144 144
 		$result = $this->rootView->file_put_contents(
145
-			$newRoot . '/' . Storage::KEY_STORAGE_MARKER,
145
+			$newRoot.'/'.Storage::KEY_STORAGE_MARKER,
146 146
 			'Nextcloud will detect this folder as key storage root only if this file exists'
147 147
 		);
148 148
 
@@ -160,10 +160,10 @@  discard block
 block discarded – undo
160 160
 	 */
161 161
 	protected function moveSystemKeys($oldRoot, $newRoot) {
162 162
 		if (
163
-			$this->rootView->is_dir($oldRoot . '/files_encryption') &&
164
-			$this->targetExists($newRoot . '/files_encryption') === false
163
+			$this->rootView->is_dir($oldRoot.'/files_encryption') &&
164
+			$this->targetExists($newRoot.'/files_encryption') === false
165 165
 		) {
166
-			$this->rootView->rename($oldRoot . '/files_encryption', $newRoot . '/files_encryption');
166
+			$this->rootView->rename($oldRoot.'/files_encryption', $newRoot.'/files_encryption');
167 167
 		}
168 168
 	}
169 169
 
@@ -217,13 +217,13 @@  discard block
 block discarded – undo
217 217
 	 */
218 218
 	protected function moveUserEncryptionFolder($user, $oldRoot, $newRoot) {
219 219
 		if ($this->userManager->userExists($user)) {
220
-			$source = $oldRoot . '/' . $user . '/files_encryption';
221
-			$target = $newRoot . '/' . $user . '/files_encryption';
220
+			$source = $oldRoot.'/'.$user.'/files_encryption';
221
+			$target = $newRoot.'/'.$user.'/files_encryption';
222 222
 			if (
223 223
 				$this->rootView->is_dir($source) &&
224 224
 				$this->targetExists($target) === false
225 225
 			) {
226
-				$this->prepareParentFolder($newRoot . '/' . $user);
226
+				$this->prepareParentFolder($newRoot.'/'.$user);
227 227
 				$this->rootView->rename($source, $target);
228 228
 			}
229 229
 		}
@@ -241,7 +241,7 @@  discard block
 block discarded – undo
241 241
 			$sub_dirs = explode('/', ltrim($path, '/'));
242 242
 			$dir = '';
243 243
 			foreach ($sub_dirs as $sub_dir) {
244
-				$dir .= '/' . $sub_dir;
244
+				$dir .= '/'.$sub_dir;
245 245
 				if ($this->rootView->file_exists($dir) === false) {
246 246
 					$this->rootView->mkdir($dir);
247 247
 				}
Please login to merge, or discard this patch.
Indentation   +204 added lines, -204 removed lines patch added patch discarded remove patch
@@ -22,208 +22,208 @@
 block discarded – undo
22 22
 use Symfony\Component\Console\Question\ConfirmationQuestion;
23 23
 
24 24
 class ChangeKeyStorageRoot extends Command {
25
-	public function __construct(
26
-		protected View $rootView,
27
-		protected IUserManager $userManager,
28
-		protected IConfig $config,
29
-		protected Util $util,
30
-		protected QuestionHelper $questionHelper,
31
-	) {
32
-		parent::__construct();
33
-	}
34
-
35
-	protected function configure() {
36
-		parent::configure();
37
-		$this
38
-			->setName('encryption:change-key-storage-root')
39
-			->setDescription('Change key storage root')
40
-			->addArgument(
41
-				'newRoot',
42
-				InputArgument::OPTIONAL,
43
-				'new root of the key storage relative to the data folder'
44
-			);
45
-	}
46
-
47
-	protected function execute(InputInterface $input, OutputInterface $output): int {
48
-		$oldRoot = $this->util->getKeyStorageRoot();
49
-		$newRoot = $input->getArgument('newRoot');
50
-
51
-		if ($newRoot === null) {
52
-			$question = new ConfirmationQuestion('No storage root given, do you want to reset the key storage root to the default location? (y/n) ', false);
53
-			if (!$this->questionHelper->ask($input, $output, $question)) {
54
-				return 1;
55
-			}
56
-			$newRoot = '';
57
-		}
58
-
59
-		$oldRootDescription = $oldRoot !== '' ? $oldRoot : 'default storage location';
60
-		$newRootDescription = $newRoot !== '' ? $newRoot : 'default storage location';
61
-		$output->writeln("Change key storage root from <info>$oldRootDescription</info> to <info>$newRootDescription</info>");
62
-		$success = $this->moveAllKeys($oldRoot, $newRoot, $output);
63
-		if ($success) {
64
-			$this->util->setKeyStorageRoot($newRoot);
65
-			$output->writeln('');
66
-			$output->writeln("Key storage root successfully changed to <info>$newRootDescription</info>");
67
-			return 0;
68
-		}
69
-		return 1;
70
-	}
71
-
72
-	/**
73
-	 * move keys to new key storage root
74
-	 *
75
-	 * @param string $oldRoot
76
-	 * @param string $newRoot
77
-	 * @param OutputInterface $output
78
-	 * @return bool
79
-	 * @throws \Exception
80
-	 */
81
-	protected function moveAllKeys($oldRoot, $newRoot, OutputInterface $output) {
82
-		$output->writeln('Start to move keys:');
83
-
84
-		if ($this->rootView->is_dir($oldRoot) === false) {
85
-			$output->writeln('No old keys found: Nothing needs to be moved');
86
-			return false;
87
-		}
88
-
89
-		$this->prepareNewRoot($newRoot);
90
-		$this->moveSystemKeys($oldRoot, $newRoot);
91
-		$this->moveUserKeys($oldRoot, $newRoot, $output);
92
-
93
-		return true;
94
-	}
95
-
96
-	/**
97
-	 * prepare new key storage
98
-	 *
99
-	 * @param string $newRoot
100
-	 * @throws \Exception
101
-	 */
102
-	protected function prepareNewRoot($newRoot) {
103
-		if ($this->rootView->is_dir($newRoot) === false) {
104
-			throw new \Exception("New root folder doesn't exist. Please create the folder or check the permissions and try again.");
105
-		}
106
-
107
-		$result = $this->rootView->file_put_contents(
108
-			$newRoot . '/' . Storage::KEY_STORAGE_MARKER,
109
-			'Nextcloud will detect this folder as key storage root only if this file exists'
110
-		);
111
-
112
-		if (!$result) {
113
-			throw new \Exception("Can't access the new root folder. Please check the permissions and make sure that the folder is in your data folder");
114
-		}
115
-	}
116
-
117
-
118
-	/**
119
-	 * move system key folder
120
-	 *
121
-	 * @param string $oldRoot
122
-	 * @param string $newRoot
123
-	 */
124
-	protected function moveSystemKeys($oldRoot, $newRoot) {
125
-		if (
126
-			$this->rootView->is_dir($oldRoot . '/files_encryption') &&
127
-			$this->targetExists($newRoot . '/files_encryption') === false
128
-		) {
129
-			$this->rootView->rename($oldRoot . '/files_encryption', $newRoot . '/files_encryption');
130
-		}
131
-	}
132
-
133
-
134
-	/**
135
-	 * setup file system for the given user
136
-	 *
137
-	 * @param string $uid
138
-	 */
139
-	protected function setupUserFS($uid) {
140
-		\OC_Util::tearDownFS();
141
-		\OC_Util::setupFS($uid);
142
-	}
143
-
144
-
145
-	/**
146
-	 * iterate over each user and move the keys to the new storage
147
-	 *
148
-	 * @param string $oldRoot
149
-	 * @param string $newRoot
150
-	 * @param OutputInterface $output
151
-	 */
152
-	protected function moveUserKeys($oldRoot, $newRoot, OutputInterface $output) {
153
-		$progress = new ProgressBar($output);
154
-		$progress->start();
155
-
156
-
157
-		foreach ($this->userManager->getBackends() as $backend) {
158
-			$limit = 500;
159
-			$offset = 0;
160
-			do {
161
-				$users = $backend->getUsers('', $limit, $offset);
162
-				foreach ($users as $user) {
163
-					$progress->advance();
164
-					$this->setupUserFS($user);
165
-					$this->moveUserEncryptionFolder($user, $oldRoot, $newRoot);
166
-				}
167
-				$offset += $limit;
168
-			} while (count($users) >= $limit);
169
-		}
170
-		$progress->finish();
171
-	}
172
-
173
-	/**
174
-	 * move user encryption folder to new root folder
175
-	 *
176
-	 * @param string $user
177
-	 * @param string $oldRoot
178
-	 * @param string $newRoot
179
-	 * @throws \Exception
180
-	 */
181
-	protected function moveUserEncryptionFolder($user, $oldRoot, $newRoot) {
182
-		if ($this->userManager->userExists($user)) {
183
-			$source = $oldRoot . '/' . $user . '/files_encryption';
184
-			$target = $newRoot . '/' . $user . '/files_encryption';
185
-			if (
186
-				$this->rootView->is_dir($source) &&
187
-				$this->targetExists($target) === false
188
-			) {
189
-				$this->prepareParentFolder($newRoot . '/' . $user);
190
-				$this->rootView->rename($source, $target);
191
-			}
192
-		}
193
-	}
194
-
195
-	/**
196
-	 * Make preparations to filesystem for saving a key file
197
-	 *
198
-	 * @param string $path relative to data/
199
-	 */
200
-	protected function prepareParentFolder($path) {
201
-		$path = Filesystem::normalizePath($path);
202
-		// If the file resides within a subdirectory, create it
203
-		if ($this->rootView->file_exists($path) === false) {
204
-			$sub_dirs = explode('/', ltrim($path, '/'));
205
-			$dir = '';
206
-			foreach ($sub_dirs as $sub_dir) {
207
-				$dir .= '/' . $sub_dir;
208
-				if ($this->rootView->file_exists($dir) === false) {
209
-					$this->rootView->mkdir($dir);
210
-				}
211
-			}
212
-		}
213
-	}
214
-
215
-	/**
216
-	 * check if target already exists
217
-	 *
218
-	 * @param $path
219
-	 * @return bool
220
-	 * @throws \Exception
221
-	 */
222
-	protected function targetExists($path) {
223
-		if ($this->rootView->file_exists($path)) {
224
-			throw new \Exception("new folder '$path' already exists");
225
-		}
226
-
227
-		return false;
228
-	}
25
+    public function __construct(
26
+        protected View $rootView,
27
+        protected IUserManager $userManager,
28
+        protected IConfig $config,
29
+        protected Util $util,
30
+        protected QuestionHelper $questionHelper,
31
+    ) {
32
+        parent::__construct();
33
+    }
34
+
35
+    protected function configure() {
36
+        parent::configure();
37
+        $this
38
+            ->setName('encryption:change-key-storage-root')
39
+            ->setDescription('Change key storage root')
40
+            ->addArgument(
41
+                'newRoot',
42
+                InputArgument::OPTIONAL,
43
+                'new root of the key storage relative to the data folder'
44
+            );
45
+    }
46
+
47
+    protected function execute(InputInterface $input, OutputInterface $output): int {
48
+        $oldRoot = $this->util->getKeyStorageRoot();
49
+        $newRoot = $input->getArgument('newRoot');
50
+
51
+        if ($newRoot === null) {
52
+            $question = new ConfirmationQuestion('No storage root given, do you want to reset the key storage root to the default location? (y/n) ', false);
53
+            if (!$this->questionHelper->ask($input, $output, $question)) {
54
+                return 1;
55
+            }
56
+            $newRoot = '';
57
+        }
58
+
59
+        $oldRootDescription = $oldRoot !== '' ? $oldRoot : 'default storage location';
60
+        $newRootDescription = $newRoot !== '' ? $newRoot : 'default storage location';
61
+        $output->writeln("Change key storage root from <info>$oldRootDescription</info> to <info>$newRootDescription</info>");
62
+        $success = $this->moveAllKeys($oldRoot, $newRoot, $output);
63
+        if ($success) {
64
+            $this->util->setKeyStorageRoot($newRoot);
65
+            $output->writeln('');
66
+            $output->writeln("Key storage root successfully changed to <info>$newRootDescription</info>");
67
+            return 0;
68
+        }
69
+        return 1;
70
+    }
71
+
72
+    /**
73
+     * move keys to new key storage root
74
+     *
75
+     * @param string $oldRoot
76
+     * @param string $newRoot
77
+     * @param OutputInterface $output
78
+     * @return bool
79
+     * @throws \Exception
80
+     */
81
+    protected function moveAllKeys($oldRoot, $newRoot, OutputInterface $output) {
82
+        $output->writeln('Start to move keys:');
83
+
84
+        if ($this->rootView->is_dir($oldRoot) === false) {
85
+            $output->writeln('No old keys found: Nothing needs to be moved');
86
+            return false;
87
+        }
88
+
89
+        $this->prepareNewRoot($newRoot);
90
+        $this->moveSystemKeys($oldRoot, $newRoot);
91
+        $this->moveUserKeys($oldRoot, $newRoot, $output);
92
+
93
+        return true;
94
+    }
95
+
96
+    /**
97
+     * prepare new key storage
98
+     *
99
+     * @param string $newRoot
100
+     * @throws \Exception
101
+     */
102
+    protected function prepareNewRoot($newRoot) {
103
+        if ($this->rootView->is_dir($newRoot) === false) {
104
+            throw new \Exception("New root folder doesn't exist. Please create the folder or check the permissions and try again.");
105
+        }
106
+
107
+        $result = $this->rootView->file_put_contents(
108
+            $newRoot . '/' . Storage::KEY_STORAGE_MARKER,
109
+            'Nextcloud will detect this folder as key storage root only if this file exists'
110
+        );
111
+
112
+        if (!$result) {
113
+            throw new \Exception("Can't access the new root folder. Please check the permissions and make sure that the folder is in your data folder");
114
+        }
115
+    }
116
+
117
+
118
+    /**
119
+     * move system key folder
120
+     *
121
+     * @param string $oldRoot
122
+     * @param string $newRoot
123
+     */
124
+    protected function moveSystemKeys($oldRoot, $newRoot) {
125
+        if (
126
+            $this->rootView->is_dir($oldRoot . '/files_encryption') &&
127
+            $this->targetExists($newRoot . '/files_encryption') === false
128
+        ) {
129
+            $this->rootView->rename($oldRoot . '/files_encryption', $newRoot . '/files_encryption');
130
+        }
131
+    }
132
+
133
+
134
+    /**
135
+     * setup file system for the given user
136
+     *
137
+     * @param string $uid
138
+     */
139
+    protected function setupUserFS($uid) {
140
+        \OC_Util::tearDownFS();
141
+        \OC_Util::setupFS($uid);
142
+    }
143
+
144
+
145
+    /**
146
+     * iterate over each user and move the keys to the new storage
147
+     *
148
+     * @param string $oldRoot
149
+     * @param string $newRoot
150
+     * @param OutputInterface $output
151
+     */
152
+    protected function moveUserKeys($oldRoot, $newRoot, OutputInterface $output) {
153
+        $progress = new ProgressBar($output);
154
+        $progress->start();
155
+
156
+
157
+        foreach ($this->userManager->getBackends() as $backend) {
158
+            $limit = 500;
159
+            $offset = 0;
160
+            do {
161
+                $users = $backend->getUsers('', $limit, $offset);
162
+                foreach ($users as $user) {
163
+                    $progress->advance();
164
+                    $this->setupUserFS($user);
165
+                    $this->moveUserEncryptionFolder($user, $oldRoot, $newRoot);
166
+                }
167
+                $offset += $limit;
168
+            } while (count($users) >= $limit);
169
+        }
170
+        $progress->finish();
171
+    }
172
+
173
+    /**
174
+     * move user encryption folder to new root folder
175
+     *
176
+     * @param string $user
177
+     * @param string $oldRoot
178
+     * @param string $newRoot
179
+     * @throws \Exception
180
+     */
181
+    protected function moveUserEncryptionFolder($user, $oldRoot, $newRoot) {
182
+        if ($this->userManager->userExists($user)) {
183
+            $source = $oldRoot . '/' . $user . '/files_encryption';
184
+            $target = $newRoot . '/' . $user . '/files_encryption';
185
+            if (
186
+                $this->rootView->is_dir($source) &&
187
+                $this->targetExists($target) === false
188
+            ) {
189
+                $this->prepareParentFolder($newRoot . '/' . $user);
190
+                $this->rootView->rename($source, $target);
191
+            }
192
+        }
193
+    }
194
+
195
+    /**
196
+     * Make preparations to filesystem for saving a key file
197
+     *
198
+     * @param string $path relative to data/
199
+     */
200
+    protected function prepareParentFolder($path) {
201
+        $path = Filesystem::normalizePath($path);
202
+        // If the file resides within a subdirectory, create it
203
+        if ($this->rootView->file_exists($path) === false) {
204
+            $sub_dirs = explode('/', ltrim($path, '/'));
205
+            $dir = '';
206
+            foreach ($sub_dirs as $sub_dir) {
207
+                $dir .= '/' . $sub_dir;
208
+                if ($this->rootView->file_exists($dir) === false) {
209
+                    $this->rootView->mkdir($dir);
210
+                }
211
+            }
212
+        }
213
+    }
214
+
215
+    /**
216
+     * check if target already exists
217
+     *
218
+     * @param $path
219
+     * @return bool
220
+     * @throws \Exception
221
+     */
222
+    protected function targetExists($path) {
223
+        if ($this->rootView->file_exists($path)) {
224
+            throw new \Exception("new folder '$path' already exists");
225
+        }
226
+
227
+        return false;
228
+    }
229 229
 }
Please login to merge, or discard this patch.
core/Command/Config/System/DeleteConfig.php 2 patches
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -67,7 +67,7 @@  discard block
 block discarded – undo
67 67
 
68 68
 		if (count($configNames) > 1) {
69 69
 			if ($input->hasParameterOption('--error-if-not-exists') && !in_array($configName, $this->systemConfig->getKeys())) {
70
-				$output->writeln('<error>System config ' . implode(' => ', $configNames) . ' could not be deleted because it did not exist</error>');
70
+				$output->writeln('<error>System config '.implode(' => ', $configNames).' could not be deleted because it did not exist</error>');
71 71
 				return 1;
72 72
 			}
73 73
 
@@ -76,21 +76,21 @@  discard block
 block discarded – undo
76 76
 			try {
77 77
 				$value = $this->removeSubValue(array_slice($configNames, 1), $value, $input->hasParameterOption('--error-if-not-exists'));
78 78
 			} catch (\UnexpectedValueException $e) {
79
-				$output->writeln('<error>System config ' . implode(' => ', $configNames) . ' could not be deleted because it did not exist</error>');
79
+				$output->writeln('<error>System config '.implode(' => ', $configNames).' could not be deleted because it did not exist</error>');
80 80
 				return 1;
81 81
 			}
82 82
 
83 83
 			$this->systemConfig->setValue($configName, $value);
84
-			$output->writeln('<info>System config value ' . implode(' => ', $configNames) . ' deleted</info>');
84
+			$output->writeln('<info>System config value '.implode(' => ', $configNames).' deleted</info>');
85 85
 			return 0;
86 86
 		} else {
87 87
 			if ($input->hasParameterOption('--error-if-not-exists') && !in_array($configName, $this->systemConfig->getKeys())) {
88
-				$output->writeln('<error>System config ' . $configName . ' could not be deleted because it did not exist</error>');
88
+				$output->writeln('<error>System config '.$configName.' could not be deleted because it did not exist</error>');
89 89
 				return 1;
90 90
 			}
91 91
 
92 92
 			$this->systemConfig->deleteValue($configName);
93
-			$output->writeln('<info>System config value ' . $configName . ' deleted</info>');
93
+			$output->writeln('<info>System config value '.$configName.' deleted</info>');
94 94
 			return 0;
95 95
 		}
96 96
 	}
Please login to merge, or discard this patch.
Indentation   +68 added lines, -68 removed lines patch added patch discarded remove patch
@@ -30,83 +30,83 @@
 block discarded – undo
30 30
 use Symfony\Component\Console\Output\OutputInterface;
31 31
 
32 32
 class DeleteConfig extends Base {
33
-	public function __construct(
34
-		SystemConfig $systemConfig,
35
-	) {
36
-		parent::__construct($systemConfig);
37
-	}
33
+    public function __construct(
34
+        SystemConfig $systemConfig,
35
+    ) {
36
+        parent::__construct($systemConfig);
37
+    }
38 38
 
39
-	protected function configure() {
40
-		parent::configure();
39
+    protected function configure() {
40
+        parent::configure();
41 41
 
42
-		$this
43
-			->setName('config:system:delete')
44
-			->setDescription('Delete a system config value')
45
-			->addArgument(
46
-				'name',
47
-				InputArgument::REQUIRED | InputArgument::IS_ARRAY,
48
-				'Name of the config to delete, specify multiple for array parameter'
49
-			)
50
-			->addOption(
51
-				'error-if-not-exists',
52
-				null,
53
-				InputOption::VALUE_NONE,
54
-				'Checks whether the config exists before deleting it'
55
-			)
56
-		;
57
-	}
42
+        $this
43
+            ->setName('config:system:delete')
44
+            ->setDescription('Delete a system config value')
45
+            ->addArgument(
46
+                'name',
47
+                InputArgument::REQUIRED | InputArgument::IS_ARRAY,
48
+                'Name of the config to delete, specify multiple for array parameter'
49
+            )
50
+            ->addOption(
51
+                'error-if-not-exists',
52
+                null,
53
+                InputOption::VALUE_NONE,
54
+                'Checks whether the config exists before deleting it'
55
+            )
56
+        ;
57
+    }
58 58
 
59
-	protected function execute(InputInterface $input, OutputInterface $output): int {
60
-		$configNames = $input->getArgument('name');
61
-		$configName = $configNames[0];
59
+    protected function execute(InputInterface $input, OutputInterface $output): int {
60
+        $configNames = $input->getArgument('name');
61
+        $configName = $configNames[0];
62 62
 
63
-		if (count($configNames) > 1) {
64
-			if ($input->hasParameterOption('--error-if-not-exists') && !in_array($configName, $this->systemConfig->getKeys())) {
65
-				$output->writeln('<error>System config ' . implode(' => ', $configNames) . ' could not be deleted because it did not exist</error>');
66
-				return 1;
67
-			}
63
+        if (count($configNames) > 1) {
64
+            if ($input->hasParameterOption('--error-if-not-exists') && !in_array($configName, $this->systemConfig->getKeys())) {
65
+                $output->writeln('<error>System config ' . implode(' => ', $configNames) . ' could not be deleted because it did not exist</error>');
66
+                return 1;
67
+            }
68 68
 
69
-			$value = $this->systemConfig->getValue($configName);
69
+            $value = $this->systemConfig->getValue($configName);
70 70
 
71
-			try {
72
-				$value = $this->removeSubValue(array_slice($configNames, 1), $value, $input->hasParameterOption('--error-if-not-exists'));
73
-			} catch (\UnexpectedValueException $e) {
74
-				$output->writeln('<error>System config ' . implode(' => ', $configNames) . ' could not be deleted because it did not exist</error>');
75
-				return 1;
76
-			}
71
+            try {
72
+                $value = $this->removeSubValue(array_slice($configNames, 1), $value, $input->hasParameterOption('--error-if-not-exists'));
73
+            } catch (\UnexpectedValueException $e) {
74
+                $output->writeln('<error>System config ' . implode(' => ', $configNames) . ' could not be deleted because it did not exist</error>');
75
+                return 1;
76
+            }
77 77
 
78
-			$this->systemConfig->setValue($configName, $value);
79
-			$output->writeln('<info>System config value ' . implode(' => ', $configNames) . ' deleted</info>');
80
-			return 0;
81
-		} else {
82
-			if ($input->hasParameterOption('--error-if-not-exists') && !in_array($configName, $this->systemConfig->getKeys())) {
83
-				$output->writeln('<error>System config ' . $configName . ' could not be deleted because it did not exist</error>');
84
-				return 1;
85
-			}
78
+            $this->systemConfig->setValue($configName, $value);
79
+            $output->writeln('<info>System config value ' . implode(' => ', $configNames) . ' deleted</info>');
80
+            return 0;
81
+        } else {
82
+            if ($input->hasParameterOption('--error-if-not-exists') && !in_array($configName, $this->systemConfig->getKeys())) {
83
+                $output->writeln('<error>System config ' . $configName . ' could not be deleted because it did not exist</error>');
84
+                return 1;
85
+            }
86 86
 
87
-			$this->systemConfig->deleteValue($configName);
88
-			$output->writeln('<info>System config value ' . $configName . ' deleted</info>');
89
-			return 0;
90
-		}
91
-	}
87
+            $this->systemConfig->deleteValue($configName);
88
+            $output->writeln('<info>System config value ' . $configName . ' deleted</info>');
89
+            return 0;
90
+        }
91
+    }
92 92
 
93
-	protected function removeSubValue($keys, $currentValue, $throwError) {
94
-		$nextKey = array_shift($keys);
93
+    protected function removeSubValue($keys, $currentValue, $throwError) {
94
+        $nextKey = array_shift($keys);
95 95
 
96
-		if (is_array($currentValue)) {
97
-			if (isset($currentValue[$nextKey])) {
98
-				if (empty($keys)) {
99
-					unset($currentValue[$nextKey]);
100
-				} else {
101
-					$currentValue[$nextKey] = $this->removeSubValue($keys, $currentValue[$nextKey], $throwError);
102
-				}
103
-			} elseif ($throwError) {
104
-				throw new \UnexpectedValueException('Config parameter does not exist');
105
-			}
106
-		} elseif ($throwError) {
107
-			throw new \UnexpectedValueException('Config parameter does not exist');
108
-		}
96
+        if (is_array($currentValue)) {
97
+            if (isset($currentValue[$nextKey])) {
98
+                if (empty($keys)) {
99
+                    unset($currentValue[$nextKey]);
100
+                } else {
101
+                    $currentValue[$nextKey] = $this->removeSubValue($keys, $currentValue[$nextKey], $throwError);
102
+                }
103
+            } elseif ($throwError) {
104
+                throw new \UnexpectedValueException('Config parameter does not exist');
105
+            }
106
+        } elseif ($throwError) {
107
+            throw new \UnexpectedValueException('Config parameter does not exist');
108
+        }
109 109
 
110
-		return $currentValue;
111
-	}
110
+        return $currentValue;
111
+    }
112 112
 }
Please login to merge, or discard this patch.
apps/dav/lib/Connector/Sabre/ShareeList.php 2 patches
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -52,10 +52,10 @@
 block discarded – undo
52 52
 	 */
53 53
 	public function xmlSerialize(Writer $writer) {
54 54
 		foreach ($this->shares as $share) {
55
-			$writer->startElement('{' . self::NS_NEXTCLOUD . '}sharee');
56
-			$writer->writeElement('{' . self::NS_NEXTCLOUD . '}id', $share->getSharedWith());
57
-			$writer->writeElement('{' . self::NS_NEXTCLOUD . '}display-name', $share->getSharedWithDisplayName());
58
-			$writer->writeElement('{' . self::NS_NEXTCLOUD . '}type', $share->getShareType());
55
+			$writer->startElement('{'.self::NS_NEXTCLOUD.'}sharee');
56
+			$writer->writeElement('{'.self::NS_NEXTCLOUD.'}id', $share->getSharedWith());
57
+			$writer->writeElement('{'.self::NS_NEXTCLOUD.'}display-name', $share->getSharedWithDisplayName());
58
+			$writer->writeElement('{'.self::NS_NEXTCLOUD.'}type', $share->getShareType());
59 59
 			$writer->endElement();
60 60
 		}
61 61
 	}
Please login to merge, or discard this patch.
Indentation   +21 added lines, -21 removed lines patch added patch discarded remove patch
@@ -16,27 +16,27 @@
 block discarded – undo
16 16
  * This property contains multiple "sharee" elements, each containing a share sharee
17 17
  */
18 18
 class ShareeList implements XmlSerializable {
19
-	public const NS_NEXTCLOUD = 'http://nextcloud.org/ns';
19
+    public const NS_NEXTCLOUD = 'http://nextcloud.org/ns';
20 20
 
21
-	public function __construct(
22
-		/** @var IShare[] */
23
-		private array $shares,
24
-	) {
25
-	}
21
+    public function __construct(
22
+        /** @var IShare[] */
23
+        private array $shares,
24
+    ) {
25
+    }
26 26
 
27
-	/**
28
-	 * The xmlSerialize method is called during xml writing.
29
-	 *
30
-	 * @param Writer $writer
31
-	 * @return void
32
-	 */
33
-	public function xmlSerialize(Writer $writer) {
34
-		foreach ($this->shares as $share) {
35
-			$writer->startElement('{' . self::NS_NEXTCLOUD . '}sharee');
36
-			$writer->writeElement('{' . self::NS_NEXTCLOUD . '}id', $share->getSharedWith());
37
-			$writer->writeElement('{' . self::NS_NEXTCLOUD . '}display-name', $share->getSharedWithDisplayName());
38
-			$writer->writeElement('{' . self::NS_NEXTCLOUD . '}type', $share->getShareType());
39
-			$writer->endElement();
40
-		}
41
-	}
27
+    /**
28
+     * The xmlSerialize method is called during xml writing.
29
+     *
30
+     * @param Writer $writer
31
+     * @return void
32
+     */
33
+    public function xmlSerialize(Writer $writer) {
34
+        foreach ($this->shares as $share) {
35
+            $writer->startElement('{' . self::NS_NEXTCLOUD . '}sharee');
36
+            $writer->writeElement('{' . self::NS_NEXTCLOUD . '}id', $share->getSharedWith());
37
+            $writer->writeElement('{' . self::NS_NEXTCLOUD . '}display-name', $share->getSharedWithDisplayName());
38
+            $writer->writeElement('{' . self::NS_NEXTCLOUD . '}type', $share->getShareType());
39
+            $writer->endElement();
40
+        }
41
+    }
42 42
 }
Please login to merge, or discard this patch.
apps/dav/lib/Connector/Sabre/Exception/PasswordLoginForbidden.php 1 patch
Indentation   +18 added lines, -18 removed lines patch added patch discarded remove patch
@@ -29,26 +29,26 @@
 block discarded – undo
29 29
 use Sabre\DAV\Server;
30 30
 
31 31
 class PasswordLoginForbidden extends NotAuthenticated {
32
-	public const NS_OWNCLOUD = 'http://owncloud.org/ns';
32
+    public const NS_OWNCLOUD = 'http://owncloud.org/ns';
33 33
 
34
-	public function getHTTPCode() {
35
-		return 401;
36
-	}
34
+    public function getHTTPCode() {
35
+        return 401;
36
+    }
37 37
 
38
-	/**
39
-	 * This method allows the exception to include additional information
40
-	 * into the WebDAV error response
41
-	 *
42
-	 * @param Server $server
43
-	 * @param DOMElement $errorNode
44
-	 * @return void
45
-	 */
46
-	public function serialize(Server $server, DOMElement $errorNode) {
38
+    /**
39
+     * This method allows the exception to include additional information
40
+     * into the WebDAV error response
41
+     *
42
+     * @param Server $server
43
+     * @param DOMElement $errorNode
44
+     * @return void
45
+     */
46
+    public function serialize(Server $server, DOMElement $errorNode) {
47 47
 
48
-		// set ownCloud namespace
49
-		$errorNode->setAttribute('xmlns:o', self::NS_OWNCLOUD);
48
+        // set ownCloud namespace
49
+        $errorNode->setAttribute('xmlns:o', self::NS_OWNCLOUD);
50 50
 
51
-		$error = $errorNode->ownerDocument->createElementNS('o:', 'o:hint', 'password login forbidden');
52
-		$errorNode->appendChild($error);
53
-	}
51
+        $error = $errorNode->ownerDocument->createElementNS('o:', 'o:hint', 'password login forbidden');
52
+        $errorNode->appendChild($error);
53
+    }
54 54
 }
Please login to merge, or discard this patch.
apps/dav/lib/CalDAV/Principal/Collection.php 1 patch
Indentation   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -30,13 +30,13 @@
 block discarded – undo
30 30
  */
31 31
 class Collection extends \Sabre\CalDAV\Principal\Collection {
32 32
 
33
-	/**
34
-	 * Returns a child object based on principal information
35
-	 *
36
-	 * @param array $principalInfo
37
-	 * @return User
38
-	 */
39
-	public function getChildForPrincipal(array $principalInfo) {
40
-		return new User($this->principalBackend, $principalInfo);
41
-	}
33
+    /**
34
+     * Returns a child object based on principal information
35
+     *
36
+     * @param array $principalInfo
37
+     * @return User
38
+     */
39
+    public function getChildForPrincipal(array $principalInfo) {
40
+        return new User($this->principalBackend, $principalInfo);
41
+    }
42 42
 }
Please login to merge, or discard this patch.
apps/dav/lib/CalDAV/Principal/User.php 1 patch
Indentation   +21 added lines, -21 removed lines patch added patch discarded remove patch
@@ -30,25 +30,25 @@
 block discarded – undo
30 30
  */
31 31
 class User extends \Sabre\CalDAV\Principal\User {
32 32
 
33
-	/**
34
-	 * Returns a list of ACE's for this node.
35
-	 *
36
-	 * Each ACE has the following properties:
37
-	 *   * 'privilege', a string such as {DAV:}read or {DAV:}write. These are
38
-	 *     currently the only supported privileges
39
-	 *   * 'principal', a url to the principal who owns the node
40
-	 *   * 'protected' (optional), indicating that this ACE is not allowed to
41
-	 *      be updated.
42
-	 *
43
-	 * @return array
44
-	 */
45
-	public function getACL() {
46
-		$acl = parent::getACL();
47
-		$acl[] = [
48
-			'privilege' => '{DAV:}read',
49
-			'principal' => '{DAV:}authenticated',
50
-			'protected' => true,
51
-		];
52
-		return $acl;
53
-	}
33
+    /**
34
+     * Returns a list of ACE's for this node.
35
+     *
36
+     * Each ACE has the following properties:
37
+     *   * 'privilege', a string such as {DAV:}read or {DAV:}write. These are
38
+     *     currently the only supported privileges
39
+     *   * 'principal', a url to the principal who owns the node
40
+     *   * 'protected' (optional), indicating that this ACE is not allowed to
41
+     *      be updated.
42
+     *
43
+     * @return array
44
+     */
45
+    public function getACL() {
46
+        $acl = parent::getACL();
47
+        $acl[] = [
48
+            'privilege' => '{DAV:}read',
49
+            'principal' => '{DAV:}authenticated',
50
+            'protected' => true,
51
+        ];
52
+        return $acl;
53
+    }
54 54
 }
Please login to merge, or discard this patch.
apps/dav/lib/CalDAV/Search/Xml/Filter/OffsetFilter.php 2 patches
Indentation   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -32,17 +32,17 @@
 block discarded – undo
32 32
 
33 33
 class OffsetFilter implements XmlDeserializable {
34 34
 
35
-	/**
36
-	 * @param Reader $reader
37
-	 * @throws BadRequest
38
-	 * @return int
39
-	 */
40
-	public static function xmlDeserialize(Reader $reader) {
41
-		$value = $reader->parseInnerTree();
42
-		if (!is_int($value) && !is_string($value)) {
43
-			throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}offset has illegal value');
44
-		}
35
+    /**
36
+     * @param Reader $reader
37
+     * @throws BadRequest
38
+     * @return int
39
+     */
40
+    public static function xmlDeserialize(Reader $reader) {
41
+        $value = $reader->parseInnerTree();
42
+        if (!is_int($value) && !is_string($value)) {
43
+            throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}offset has illegal value');
44
+        }
45 45
 
46
-		return (int)$value;
47
-	}
46
+        return (int)$value;
47
+    }
48 48
 }
Please login to merge, or discard this patch.
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -40,9 +40,9 @@
 block discarded – undo
40 40
 	public static function xmlDeserialize(Reader $reader) {
41 41
 		$value = $reader->parseInnerTree();
42 42
 		if (!is_int($value) && !is_string($value)) {
43
-			throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}offset has illegal value');
43
+			throw new BadRequest('The {'.SearchPlugin::NS_Nextcloud.'}offset has illegal value');
44 44
 		}
45 45
 
46
-		return (int)$value;
46
+		return (int) $value;
47 47
 	}
48 48
 }
Please login to merge, or discard this patch.
apps/dav/lib/CalDAV/Search/Xml/Filter/LimitFilter.php 2 patches
Indentation   +12 added lines, -12 removed lines patch added patch discarded remove patch
@@ -32,17 +32,17 @@
 block discarded – undo
32 32
 
33 33
 class LimitFilter implements XmlDeserializable {
34 34
 
35
-	/**
36
-	 * @param Reader $reader
37
-	 * @throws BadRequest
38
-	 * @return int
39
-	 */
40
-	public static function xmlDeserialize(Reader $reader) {
41
-		$value = $reader->parseInnerTree();
42
-		if (!is_int($value) && !is_string($value)) {
43
-			throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}limit has illegal value');
44
-		}
35
+    /**
36
+     * @param Reader $reader
37
+     * @throws BadRequest
38
+     * @return int
39
+     */
40
+    public static function xmlDeserialize(Reader $reader) {
41
+        $value = $reader->parseInnerTree();
42
+        if (!is_int($value) && !is_string($value)) {
43
+            throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}limit has illegal value');
44
+        }
45 45
 
46
-		return (int)$value;
47
-	}
46
+        return (int)$value;
47
+    }
48 48
 }
Please login to merge, or discard this patch.
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -40,9 +40,9 @@
 block discarded – undo
40 40
 	public static function xmlDeserialize(Reader $reader) {
41 41
 		$value = $reader->parseInnerTree();
42 42
 		if (!is_int($value) && !is_string($value)) {
43
-			throw new BadRequest('The {' . SearchPlugin::NS_Nextcloud . '}limit has illegal value');
43
+			throw new BadRequest('The {'.SearchPlugin::NS_Nextcloud.'}limit has illegal value');
44 44
 		}
45 45
 
46
-		return (int)$value;
46
+		return (int) $value;
47 47
 	}
48 48
 }
Please login to merge, or discard this patch.