diff --git a/browser/view.py b/browser/view.py index b1adce8..c28855a 100644 --- a/browser/view.py +++ b/browser/view.py @@ -18,8 +18,6 @@ """ A generic view class. - -$Id$ """ from zope.app.pagetemplate import ViewPageTemplateFile @@ -31,6 +29,7 @@ from zope.event import notify from zope.publisher.interfaces.browser import IBrowserSkinType from cybertools.browser.renderer import CachableRenderer +import cybertools.util.date mainTemplate = ViewPageTemplateFile('main.pt') @@ -152,3 +151,7 @@ class GenericView(object): def cachedRenderer(self, baseRenderer, *args): cr = self.cachableRendererFactory(self, baseRenderer) return cr.renderMacro(*args) + + def currentYear(self): + return cybertools.util.date.year() + diff --git a/composer/report/result.py b/composer/report/result.py index 7396fbe..9af877f 100644 --- a/composer/report/result.py +++ b/composer/report/result.py @@ -76,3 +76,7 @@ class ResultSet(object): def __iter__(self): return iter(self.getResult()) + @Lazy + def displayedColumns(self): + return self.context.getActiveOutputFields() + diff --git a/util/date.py b/util/date.py index e774fb8..e05b89b 100644 --- a/util/date.py +++ b/util/date.py @@ -56,3 +56,9 @@ def str2timeStamp(s): def strptime(s, format='%Y-%m-%d %H:%M:%S'): return datetime(*(time.strptime(s, format)[:6])) + + +def year(d=None): + if d is None: + d = datetime.today() + return d.year