diff options
author | Pavel Zuna <pzuna@redhat.com> | 2009-11-26 15:53:07 +0100 |
---|---|---|
committer | Rob Crittenden <rcritten@redhat.com> | 2009-11-30 13:38:23 -0500 |
commit | 973f36c496b1c1f3bfdae2c5661edb935d5273ab (patch) | |
tree | 72d8b714fa9d66f00631c0a1920964e14392dbbb /ipalib | |
parent | ce72b59f55a7a90b543305033dcded04dd3ab92e (diff) | |
download | freeipa-973f36c496b1c1f3bfdae2c5661edb935d5273ab.tar.gz freeipa-973f36c496b1c1f3bfdae2c5661edb935d5273ab.tar.xz freeipa-973f36c496b1c1f3bfdae2c5661edb935d5273ab.zip |
Fix Bool parameter type. It was impossible to set it to FALSE.
Diffstat (limited to 'ipalib')
-rw-r--r-- | ipalib/cli.py | 2 | ||||
-rw-r--r-- | ipalib/parameters.py | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/ipalib/cli.py b/ipalib/cli.py index f54e6e754..64ace0359 100644 --- a/ipalib/cli.py +++ b/ipalib/cli.py @@ -764,7 +764,7 @@ class cli(backend.Executioner): ) if option.password and self.env.interactive: kw['action'] = 'store_true' - elif option.type is bool: + elif option.type is bool and option.autofill: if option.default is True: kw['action'] = 'store_false' else: diff --git a/ipalib/parameters.py b/ipalib/parameters.py index 8a1aede96..68264af49 100644 --- a/ipalib/parameters.py +++ b/ipalib/parameters.py @@ -799,8 +799,8 @@ class Bool(Param): # FIXME: This my quick hack to get some UI stuff working, change these defaults # --jderose 2009-08-28 kwargs = Param.kwargs + ( - ('truths', frozenset, frozenset([1, u'1', u'True'])), - ('falsehoods', frozenset, frozenset([0, u'0', u'False'])), + ('truths', frozenset, frozenset([1, u'1', u'true'])), + ('falsehoods', frozenset, frozenset([0, u'0', u'false'])), ) def _convert_scalar(self, value, index=None): @@ -809,6 +809,8 @@ class Bool(Param): """ if type(value) is self.type: return value + if isinstance(value, basestring): + value = value.lower() if value in self.truths: return True if value in self.falsehoods: |