def getStrategicObjectives(self, skip_states=['created']): """ get a list of contained strategic objectives """ if self.is_dashboard() and self.sel_type == 'strategicobjective': return self.objs else: pcat = self.real_context.portal_catalog brains = pcat(portal_type='strategicobjective', path={'query': '/'.join(self.real_context.getPhysicalPath()), 'depth': 1}, review_state=filter_states(self.portal, 'strategicobjective', skip_states), sort_on='getObjPositionInParent') return [brain.getObject() for brain in brains]
def getTasks(self, action=None, depth=99, skip_states=['created']): """ Get tasks ordered by path """ if self.is_dashboard() and self.sel_type == 'task': return [tsk for tsk in self.objs if tsk.__parent__ == action] else: context = action is None and self.real_context or action pcat = self.real_context.portal_catalog brains = pcat(portal_type='task', path={'query': '/'.join(context.getPhysicalPath()), 'depth': depth}, review_state=filter_states(self.portal, 'task', skip_states), sort_on='getObjPositionInParent') return [brain.getObject() for brain in brains]
def getActions(self, oo=None, skip_states=['created']): """ return a list of contained pstactions """ if self.is_dashboard() and self.sel_type == 'pstaction': return [act for act in self.objs if act.__parent__ == oo] else: context = oo is None and self.real_context or oo pcat = self.real_context.portal_catalog brains = pcat(portal_type='pstaction', path={'query': '/'.join(context.getPhysicalPath()), 'depth': 1}, review_state=filter_states(self.portal, 'pstaction', skip_states), sort_on='getObjPositionInParent') return [brain.getObject() for brain in brains]
def getOperationalObjectives(self, so=None, skip_states=['created']): """ get a list of contained operational objectives """ if self.is_dashboard() and self.sel_type == 'operationalobjective': return [oo for oo in self.objs if oo.__parent__ == so] else: context = so is None and self.real_context or so pcat = self.real_context.portal_catalog brains = pcat(portal_type='operationalobjective', path={'query': '/'.join(context.getPhysicalPath()), 'depth': 1}, review_state=filter_states(self.portal, 'operationalobjective', skip_states), sort_on='getObjPositionInParent') return [brain.getObject() for brain in brains]