summaryrefslogtreecommitdiff
path: root/Mailman/database/types.py
diff options
context:
space:
mode:
authorBarry Warsaw2007-11-06 18:16:22 -0500
committerBarry Warsaw2007-11-06 18:16:22 -0500
commitd6377c92857c513faf484ef9a91a6b00da789d4b (patch)
treec00600e52ec7ad327c947bc9a756e2694478a4d6 /Mailman/database/types.py
parent46f480dfaa6286ff8950af817de1c35910b37e16 (diff)
downloadmailman-d6377c92857c513faf484ef9a91a6b00da789d4b.tar.gz
mailman-d6377c92857c513faf484ef9a91a6b00da789d4b.tar.zst
mailman-d6377c92857c513faf484ef9a91a6b00da789d4b.zip
Diffstat (limited to 'Mailman/database/types.py')
-rw-r--r--Mailman/database/types.py26
1 files changed, 13 insertions, 13 deletions
diff --git a/Mailman/database/types.py b/Mailman/database/types.py
index ae71129cc..ec886699d 100644
--- a/Mailman/database/types.py
+++ b/Mailman/database/types.py
@@ -33,25 +33,25 @@ class _EnumVariable(Variable):
def parse_set(self, value, from_db):
if value is None:
return None
- if from_db:
- path, intvalue = value.rsplit(':', 1)
- modulename, classname = path.rsplit('.', 1)
- __import__(modulename)
- cls = getattr(sys.modules[modulename], classname)
- return cls[int(intvalue)]
- return value
+ if not from_db:
+ return value
+ path, intvalue = value.rsplit(':', 1)
+ modulename, classname = path.rsplit('.', 1)
+ __import__(modulename)
+ cls = getattr(sys.modules[modulename], classname)
+ return cls[int(intvalue)]
def parse_get(self, value, to_db):
if value is None:
return None
- if to_db:
- return '%s.%s:%d' % (value.enumclass.__module__,
- value.enumclass.__name__,
- int(value))
- return value
+ if not to_db:
+ return value
+ return '%s.%s:%d' % (value.enumclass.__module__,
+ value.enumclass.__name__,
+ int(value))
class Enum(SimpleProperty):
"""Custom munepy.Enum type for Storm."""
- variable_class = UnicodeVariable
+ variable_class = _EnumVariable