def csv_hours_report(self): result = [] result.append('start,duration,activity,title') for hour in self.hours: start = hour.start.ISO() duration = hour.workedHours activity_ = activity(hour) if activity_ is None: activity_ = '' title = hour.Title result.append('%s,%s,%s,"%s"' % (start,duration,activity_,title)) return '\n'.join(result)
def __init__(self, key, data=None): self.keyname = str(key) if key == 'activity' and data is not None: self.key = activity(data) elif data is None: self.key = key else: nodekey = data if isinstance(key, basestring): for k in key.split('/'): nodekey = getattr(nodekey, k) if callable(nodekey): nodekey = nodekey() self.key = nodekey