def _generate(self): store = DeployedAdapter(self.context) catalog = getToolByName(self.context, 'portal_catalog') try: since_date = DeployedAdapter(self.context).done().next().date since_timestamp = int(since_date.strftime('%s')) except StopIteration: since_timestamp = 1 since_date = datetime.datetime.fromtimestamp(since_timestamp) brains = catalog( modified={'query': [since_date, ], 'range': 'min'}, effectiveRange = DateTime(), Language = 'all', ) data = [] for brain in brains: obj = brain.getObject() full_history = ContentHistoryView(obj, self.request).fullHistory() if full_history: history = [] for item in full_history: if item['time'] > since_timestamp: history.append(item) if history: data.append({ 'url': obj.absolute_url(), 'obj': obj, 'history': history }) return self.template(data=data)
def __call__(self): store = DeployedAdapter(self.context) export_id = self.request.get('export_id', None) if export_id is None: return 'false' try: entry = store.get(export_id) except KeyError: return 'false' entry.public = '{0:%Y-%m-%d %H:%M}'.format(datetime.now()) return entry.public
def _view(self, export_id): store = DeployedAdapter(self.context) entry = store.get(export_id) if getattr(entry, 'rn', None) is not None: return self.view_template(data=entry.rn) return 'false'