diff --git a/.gitignore b/.gitignore index df07c09..15a2090 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ ajax/dojo/* *.pydevproject *.sublime-project *.sublime-workspace +.settings diff --git a/composer/schema/field.py b/composer/schema/field.py index fb058fe..5bbc020 100644 --- a/composer/schema/field.py +++ b/composer/schema/field.py @@ -368,7 +368,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 33d0357..0d027d0 100644 --- a/composer/schema/instance.py +++ b/composer/schema/instance.py @@ -53,7 +53,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 fd495b0..a325799 100644 --- a/util/date.py +++ b/util/date.py @@ -71,7 +71,6 @@ def year(d=None): d = datetime.today() return d.year - def toLocalTime(d): if pytz is None or not d: return d @@ -82,3 +81,13 @@ def toLocalTime(d): return d.astimezone(cet) except ValueError: return d + +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