From ad32ab5cc780d50734d88967134c743c4f1db654 Mon Sep 17 00:00:00 2001 From: Frederic Massart Date: Thu, 21 Feb 2013 17:48:03 +0800 Subject: [PATCH] Config command can set integers and booleans --- moodle-config.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/moodle-config.py b/moodle-config.py index 732b3d8..2fd095c 100755 --- a/moodle-config.py +++ b/moodle-config.py @@ -46,7 +46,7 @@ if args.command == 'list': show_list(C.get(), 0) elif args.command == 'flatlist': - def show_list(settings, parent = ''): + def show_list(settings, parent=''): for name, setting in settings.items(): if type(setting) != dict: print u'%s: %s' % (parent + name, setting) @@ -67,5 +67,13 @@ elif args.command == 'set': debug('Too few arguments. Two needed: moodle config set settingName value') sys.exit(1) setting = args.arguments[0] - value = u' '.join(args.arguments[1:]) - C.set(setting, value) + val = u' '.join(args.arguments[1:]) + if val.startswith('b:'): + val = True if val[2:].lower() in ['1', 'true'] else False + elif val.startswith('i:'): + try: + val = int(val[2:]) + except ValueError: + # Not a valid int, let's consider it a string. + pass + C.set(setting, val) -- 2.11.0