Exemplo n.º 1
0
    def get_context_data(self, **kwargs):
        context = super(WorkVersionsView, self).get_context_data(**kwargs)

        actions = self.work.action_object_actions.all()
        amendment_actions = [
            aa for a in self.work.amendments.all()
            for aa in a.action_object_actions.all()
        ]
        commencement_actions = [
            c for a in self.work.commencements.all()
            for c in a.action_object_actions.all()
        ]
        versions = self.work.versions().defer('serialized_data').all()
        task_actions = self.get_task_actions()
        entries = sorted(chain(actions, amendment_actions,
                               commencement_actions, versions, task_actions),
                         key=lambda x: x.revision.date_created
                         if hasattr(x, 'revision') else x.timestamp,
                         reverse=True)
        entries = self.coalesce_entries(entries)

        decorate_versions([e for e in entries if hasattr(e, 'revision')])

        paginator, page, entries, is_paginated = self.paginate_queryset(
            entries, self.page_size)
        context.update({
            'paginator': paginator,
            'page': page,
            'is_paginated': is_paginated,
        })

        return context
Exemplo n.º 2
0
    def get_context_data(self, **kwargs):
        context = super(WorkOverviewView, self).get_context_data(**kwargs)

        work = self.object
        context['versions'] = decorate_versions(work.versions()[:3])

        return context
Exemplo n.º 3
0
    def get_context_data(self, **kwargs):
        context = super(WorkVersionsView, self).get_context_data(**kwargs)

        paginator, page, versions, is_paginated = self.paginate_queryset(
            self.work.versions(), self.page_size)
        context.update({
            'paginator': paginator,
            'page': page,
            'is_paginated': is_paginated,
            'versions': decorate_versions(versions),
        })

        return context