Пример #1
0
def poll_detail(context, obj):
    can_vote_on_poll, reason = obj.can_vote_on_poll(context['request'])
    context.update({
        'object': obj,
        'can_vote_on_poll': can_vote_on_poll,
        'reason': reason
    })
    if can_vote_on_poll and not context.has_key('form'):
        context['form'] = PollVoteForm(request=context['request'], poll=obj)
    return context
Пример #2
0
def poll_vote(request, poll_id, template):
    poll = get_object_or_404(Poll, id=poll_id)
    if request.method == 'POST':
        form = PollVoteForm(request.POST, request=request, poll=poll)
        if form.is_valid():
            form.save()
            msg = _("Your vote has been saved")
            messages.success(request, msg, fail_silently=True)

        # If we're posting from a widget but the post is not by ajax then
        # we have to switch to the detail template.
        if (template == 'poll/poll_widget.html') and not request.is_ajax():
            template = 'poll/poll_detail.html'
    else:
        form = PollVoteForm(request=request, poll=poll)

    extra = dict(form=form, object=poll, view_modifier=None)
    return render_to_response(template,
                              extra,
                              context_instance=RequestContext(request))