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)
Пример #2
0
 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'