aboutsummaryrefslogtreecommitdiff
path: root/cli/import-for-user.php
diff options
context:
space:
mode:
authorGravatar Kasimir Cash <kasimir.cash@outlook.com> 2024-01-17 07:42:43 +0000
committerGravatar GitHub <noreply@github.com> 2024-01-17 08:42:43 +0100
commit6d14813840d163c76f6dc25395b0007a88b42e9d (patch)
treed01fccbd7e31f4fdccfc6649621ba1d8d75a9eef /cli/import-for-user.php
parent314077a457f04cc2f0472e036af029e2676fbf02 (diff)
Standardise command line option parsing (#6036)
* Separates long & short options for parsing * Adds parsing for short options + doc rewrites * Fixes undefined constant in check.translation * Standardises CL option parsing * Refactors option parsing * Renames getLongOptions -> getOptions * Removes unused code * Converges on string typing for options * Updates docs & help files * Updates array syntax array( ) -> [ ]
Diffstat (limited to 'cli/import-for-user.php')
-rwxr-xr-xcli/import-for-user.php27
1 files changed, 17 insertions, 10 deletions
diff --git a/cli/import-for-user.php b/cli/import-for-user.php
index b4731b13b..6969a8946 100755
--- a/cli/import-for-user.php
+++ b/cli/import-for-user.php
@@ -5,20 +5,27 @@ require(__DIR__ . '/_cli.php');
performRequirementCheck(FreshRSS_Context::systemConf()->db['type'] ?? '');
-$params = array(
- 'user:',
- 'filename:',
-);
-
-$options = getopt('', $params);
-
-if (!validateOptions($argv, $params) || empty($options['user']) || empty($options['filename']) || !is_string($options['user']) || !is_string($options['filename'])) {
+$parameters = [
+ 'long' => [
+ 'user' => ':',
+ 'filename' => ':',
+ ],
+ 'short' => [],
+ 'deprecated' => [],
+];
+
+$options = parseCliParams($parameters);
+
+if (!empty($options['invalid'])
+ || empty($options['valid']['user']) || empty($options['valid']['filename'])
+ || !is_string($options['valid']['user']) || !is_string($options['valid']['filename'])
+) {
fail('Usage: ' . basename(__FILE__) . " --user username --filename /path/to/file.ext");
}
-$username = cliInitUser($options['user']);
+$username = cliInitUser($options['valid']['user']);
-$filename = $options['filename'];
+$filename = $options['valid']['filename'];
if (!is_readable($filename)) {
fail('FreshRSS error: file is not readable “' . $filename . '”');
}