diff --git a/composer/schema/field.py b/composer/schema/field.py index e000e02..cc9dd58 100644 --- a/composer/schema/field.py +++ b/composer/schema/field.py @@ -334,7 +334,7 @@ class EmailFieldInstance(FieldInstance): class BooleanFieldInstance(FieldInstance): def marshall(self, value): - return value + return bool(value) def display(self, value): #return value and _(u'Yes') or _(u'No') diff --git a/composer/schema/instance.py b/composer/schema/instance.py index 1c5ffbf..125fffa 100644 --- a/composer/schema/instance.py +++ b/composer/schema/instance.py @@ -55,7 +55,7 @@ class Instance(BaseInstance): fi = f.getFieldInstance(self, context=kw.get('context'), request=kw.get('request')) name = f.name - value = getattr(self.context, name) or fi.default + value = getattr(self.context, name, fi.default) if mode in ('view', 'preview'): value = fi.display(value) else: diff --git a/util/date.py b/util/date.py index 0d112a7..74012a1 100644 --- a/util/date.py +++ b/util/date.py @@ -65,3 +65,14 @@ def year(d=None): if d is None: d = datetime.today() return d.year + +def month(d=None): + if d is None: + d = datetime.today() + return d.month + +def day(d=None): + if d is None: + d = datetime.today() + return d.day +