From fea68978f304d9582dad3e1bcef5c7a62889c1a4 Mon Sep 17 00:00:00 2001 From: Helmut Merz Date: Wed, 15 Jun 2011 18:50:57 +0200 Subject: [PATCH] show target and source info on work items that have been moved or delegated --- browser/form_macros.pt | 1 + knowledge/browser.py | 3 --- organize/work/browser.py | 14 +++++++++++++- organize/work/work_macros.pt | 31 +++++++++++++++++++++++++++++-- 4 files changed, 43 insertions(+), 6 deletions(-) diff --git a/browser/form_macros.pt b/browser/form_macros.pt index e7c746e..57130cd 100644 --- a/browser/form_macros.pt +++ b/browser/form_macros.pt @@ -134,6 +134,7 @@ + diff --git a/knowledge/browser.py b/knowledge/browser.py index 2b79bf7..53b7634 100644 --- a/knowledge/browser.py +++ b/knowledge/browser.py @@ -24,11 +24,8 @@ $Id$ """ from zope import interface, component -from zope.app import zapi from zope.app.pagetemplate import ViewPageTemplateFile from zope.cachedescriptors.property import Lazy -#from zope.formlib.namedtemplate import NamedTemplate -from zope.i18nmessageid import MessageFactory from cybertools.browser.action import actions from cybertools.typology.interfaces import IType diff --git a/organize/work/browser.py b/organize/work/browser.py index 1b64e60..d6d6ef9 100644 --- a/organize/work/browser.py +++ b/organize/work/browser.py @@ -31,7 +31,7 @@ from zope.cachedescriptors.property import Lazy from zope.event import notify from zope.lifecycleevent import ObjectModifiedEvent from zope.traversing.browser import absoluteURL -from zope.traversing.api import getName +from zope.traversing.api import getName, getParent from cybertools.ajax import innerHtml from cybertools.browser.action import actions @@ -116,6 +116,18 @@ class WorkItemDetails(TrackDetails): if value is not None: return weekDays[value.weekday()].title() + @Lazy + def sourceWorkItem(self): + sourceId = self.track.data.get('source') + if sourceId: + return getParent(self.track)[sourceId] + + @Lazy + def targetWorkItem(self): + targetId = self.track.data.get('target') + if targetId: + return getParent(self.track)[targetId] + def actions(self): info = DialogAction(self.view, description=_(u'Information about this work item.'), diff --git a/organize/work/work_macros.pt b/organize/work/work_macros.pt index 49a6a2c..95a010d 100644 --- a/organize/work/work_macros.pt +++ b/organize/work/work_macros.pt @@ -166,7 +166,8 @@ - +
@@ -201,7 +202,7 @@ - + @@ -212,6 +213,32 @@ () + + + + + + + + + + + +

Work Item Information


Comment:
State:
Delegated to:
Moved To:
+ Delegated by + Moved From: +