#!/usr/bin/env php . */ define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); $shortoptions = 'd'; $longoptions = array('delete'); $helptext = << With three args, set the setting to the value. With two args, just show the setting. With -d, delete the setting. [section] section to use (required) [setting] setting to use (required) value to set (optional) -d --delete delete the setting (no value) END_OF_SETCONFIG_HELP; require_once INSTALLDIR.'/scripts/commandline.inc'; if (count($args) < 2 || count($args) > 3) { show_help(); exit(1); } $section = $args[0]; $setting = $args[1]; if (count($args) == 3) { $value = $args[2]; } else { $value = null; } try { if (have_option('d', 'delete')) { // Delete if (count($args) != 2) { show_help(); exit(1); } if (have_option('v', 'verbose')) { print "Deleting setting $section/$setting..."; } $setting = Config::pkeyGet(array('section' => $section, 'setting' => $setting)); if (empty($setting)) { print "Not found.\n"; } else { $result = $setting->delete(); if ($result) { print "DONE.\n"; } else { print "ERROR.\n"; } } } else if (count($args) == 2) { // show if (have_option('v', 'verbose')) { print "$section/$setting = "; } $value = common_config($section, $setting); print "$value\n"; } else { // set if (have_option('v', 'verbose')) { print "Setting $section/$setting..."; } Config::save($section, $setting, $value); print "DONE.\n"; } } catch (Exception $e) { print $e->getMessage() . "\n"; exit(1); }