Пример #1
0
def inforequest_index(request):
    inforequests = (Inforequest.objects
            .not_closed()
            .owned_by(request.user)
            .order_by_submission_date()
            .select_undecided_emails_count()
            .prefetch_related(Inforequest.prefetch_main_branch(None, Branch.objects.select_related(u'historicalobligee')))
            )
    drafts = (InforequestDraft.objects
            .owned_by(request.user)
            .order_by_pk()
            .select_related(u'obligee')
            )
    closed_inforequests = (Inforequest.objects
            .closed()
            .owned_by(request.user)
            .order_by_submission_date()
            .prefetch_related(Inforequest.prefetch_main_branch(None, Branch.objects.select_related(u'historicalobligee')))
            )

    return render(request, u'inforequests/index.html', {
            u'inforequests': inforequests,
            u'drafts': drafts,
            u'closed_inforequests': closed_inforequests,
            })
Пример #2
0
def inforequest_index(request):
    inforequests = (Inforequest.objects
            .not_closed()
            .owned_by(request.user)
            .order_by_submission_date()
            .select_undecided_emails_count()
            .prefetch_related(
                Inforequest.prefetch_main_branch(None,
                    Branch.objects.select_related(u'historicalobligee')))
            )
    drafts = (InforequestDraft.objects
            .owned_by(request.user)
            .order_by_pk()
            .select_related(u'obligee')
            )
    closed_inforequests = (Inforequest.objects
            .closed()
            .owned_by(request.user)
            .order_by_submission_date()
            .prefetch_related(
                Inforequest.prefetch_main_branch(None,
                    Branch.objects.select_related(u'historicalobligee')))
            )

    return render(request, u'inforequests/index/index.html', {
            u'inforequests': inforequests,
            u'drafts': drafts,
            u'closed_inforequests': closed_inforequests,
            })
Пример #3
0
def obligee_action_dispatcher(request):
    inforequests = (Inforequest.objects
            .not_closed()
            .owned_by(request.user)
            .order_by_submission_date()
            .select_undecided_emails_count()
            .prefetch_related(
                Inforequest.prefetch_main_branch(None,
                    Branch.objects.select_related(u'historicalobligee')))
            )

    # If the user has an inforequest with a new email, continue with it. If there is no new email
    # and the user has only one pending inforequest, continue with it. If the user has no pending
    # inforequests, return to inforequest index. Finally, if the user has at least two pending
    # inforequests, let him choose with which to continue.
    for inforequest in inforequests:
        if inforequest.has_undecided_emails:
            return HttpResponseRedirect(
                    reverse(u'inforequests:obligee_action', kwargs=dict(inforequest=inforequest)))
    if len(inforequests) == 1:
        return HttpResponseRedirect(
                reverse(u'inforequests:obligee_action', kwargs=dict(inforequest=inforequests[0])))
    if len(inforequests) == 0:
        return HttpResponseRedirect(reverse(u'inforequests:index'))

    return render(request, u'inforequests/obligee_action_dispatcher/dispatcher.html', {
            u'inforequests': inforequests,
            })
Пример #4
0
 def get_queryset(self, request):
     queryset = super(InforequestAdmin, self).get_queryset(request)
     queryset = queryset.select_related(u'applicant')
     queryset = queryset.select_undecided_emails_count()
     queryset = queryset.prefetch_related(
         Inforequest.prefetch_main_branch(
             None, Branch.objects.select_related(u'obligee')))
     return queryset
Пример #5
0
def inforequest_index(request):
    inforequests = (
        Inforequest.objects.not_closed()
        .owned_by(request.user)
        .order_by_submission_date()
        .select_undecided_emails_count()
        .prefetch_related(Inforequest.prefetch_main_branch(None, Branch.objects.select_related(u"historicalobligee")))
    )
    drafts = InforequestDraft.objects.owned_by(request.user).order_by_pk().select_related(u"obligee")
    closed_inforequests = (
        Inforequest.objects.closed()
        .owned_by(request.user)
        .order_by_submission_date()
        .prefetch_related(Inforequest.prefetch_main_branch(None, Branch.objects.select_related(u"historicalobligee")))
    )

    return render(
        request,
        u"inforequests/index/index.html",
        {u"inforequests": inforequests, u"drafts": drafts, u"closed_inforequests": closed_inforequests},
    )
Пример #6
0
 def get_queryset(self, request):
     queryset = super(UserAdminMixinInforequestInline, self).get_queryset(request)
     queryset = queryset.select_undecided_emails_count()
     queryset = queryset.prefetch_related(Inforequest.prefetch_main_branch(None, Branch.objects.select_related(u'obligee')))
     return queryset