Пример #1
0
def order_vote(request, sid):
    """ vote for order """
    vote = get_object_or_404(Vote, sid=sid, is_proceeded=False)
    if settings.ALLOW_SUPERUSER_VOTE:
        if vote.client != request.user and not request.user.is_superuser:
            raise Http404("Not allowed")
    else:
        if vote.client != request.user:
            raise Http404("Not allowed")

    dt = get_service_data(request, pk=vote.order.container.owner.pk)
    dt.update({'_template': 'catalog/service_rating.html'})
    form_class = generate_vote_form(vote, VoteOrderForm)
    form = form_class(request.POST or None, instance=vote)
    # VoteOrderForm(request.POST or None, instance=vote)
    if request.method == 'POST':
        if form.is_valid():
            form.save(commit=False)
            instance = form.instance
            instance.is_proceeded = True
            instance.save()
            # making message
            messages.info(
                request, _("Thank you, your vote proceeded")
            )
            return dt  # {'redirect': 'catalog:order-vote-success'}

    dt.update({
        'vote_form': form,
    })
    return dt
Пример #2
0
 def render(self, context):
     vote = self.vote.resolve(context, ignore_failures=True)
     if isinstance(vote, Vote):
         form_class = generate_vote_form(vote, VoteOrderForm)
         context[self.varname] = form_class(None, instance=vote)
     return ''