X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=scripts%2Fsetconfig.php;h=009c50dbf291061c4513c918341067780510fcd3;hb=dcb7ce36d8e4e1fe34d99cc52b4e1dc5d866fada;hp=b102f99b1fc38639d1fd2fdc798a0fc4fe2bb290;hpb=99958de69db84474d0a3d5056a16a77c9b9ff652;p=quix0rs-gnu-social.git diff --git a/scripts/setconfig.php b/scripts/setconfig.php index b102f99b1f..009c50dbf2 100755 --- a/scripts/setconfig.php +++ b/scripts/setconfig.php @@ -20,25 +20,53 @@ define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); -$shortoptions = 'd'; -$longoptions = array('delete'); +$shortoptions = 'da'; +$longoptions = array('delete', 'all'); $helptext = << With three args, set the setting to the value. With two args, just show the setting. With -d, delete the setting. +With no args, lists all currently set values. [section] section to use (required) [setting] setting to use (required) value to set (optional) -d --delete delete the setting (no value) + -a --all list all configuration, not just the database values END_OF_SETCONFIG_HELP; require_once INSTALLDIR.'/scripts/commandline.inc'; +if (empty($args)) { + if (have_option('a', 'all')) { + foreach ($config as $section => $section_value) { + foreach ($section_value as $setting => $value) { + if (have_option('v', 'verbose') || !is_array($value)) { + // Don't print array's without the verbose flag + printf("%-20s %-20s %s\n", $section, $setting, var_export($value, true)); + } + } + } + } else { + $count = 0; + $config = new Config(); + $config->find(); + while ($config->fetch()) { + $count++; + printf("%-20s %-20s %s\n", $config->section, $config->setting, + var_export($config->value, true)); + } + if ($count == 0) { + print "No configuration set in database for this site.\n"; + } + } + exit(0); +} + if (count($args) < 2 || count($args) > 3) { show_help(); exit(1);