summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrion Vibber <brion@pobox.com>2010-04-15 23:07:58 +0200
committerBrion Vibber <brion@pobox.com>2010-04-15 23:07:58 +0200
commit53650c7a5e8f2a27f8d0d02367bda8934f59c0e6 (patch)
tree2bb5c96b531a947c2176b5116813eb4185ffade6
parentc95bff77446f7ce3454ef62b0c22e298de1d3e69 (diff)
parent4f0672a94c0f0d63aba948f1f0ca678a088b8353 (diff)
Merge branch 'master' into testing
-rwxr-xr-xscripts/setconfig.php36
1 files changed, 24 insertions, 12 deletions
diff --git a/scripts/setconfig.php b/scripts/setconfig.php
index fe0e46d65..401dda0f2 100755
--- a/scripts/setconfig.php
+++ b/scripts/setconfig.php
@@ -20,8 +20,8 @@
define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
-$shortoptions = 'd';
-$longoptions = array('delete');
+$shortoptions = 'da';
+$longoptions = array('delete', 'all');
$helptext = <<<END_OF_SETCONFIG_HELP
setconfig.php [options] [section] [setting] <value>
@@ -35,22 +35,34 @@ With no args, lists all currently set values.
<value> 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)) {
- $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";
+ 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);
}