Ejemplo n.º 1
0
 def test_topic_poll_pre_vote_handler(self):
     """
     topic_poll_pre_vote_handler signal
     """
     self.poll_choice.vote_count = 2
     self.poll_choice.save()
     topic_poll_pre_vote.send(sender=self.poll.__class__, poll=self.poll, user=self.user)
     self.assertEqual(TopicPollChoice.objects.get(pk=self.poll_choice.pk).vote_count, 1)
     self.assertEqual(TopicPollChoice.objects.get(pk=self.poll_other_choice.pk).vote_count, 0)
 def test_topic_poll_pre_vote_handler(self):
     """
     topic_poll_pre_vote_handler signal
     """
     self.poll_choice.vote_count = 2
     self.poll_choice.save()
     topic_poll_pre_vote.send(sender=self.poll.__class__,
                              poll=self.poll,
                              user=self.user)
     self.assertEqual(
         TopicPollChoice.objects.get(pk=self.poll_choice.pk).vote_count, 1)
     self.assertEqual(
         TopicPollChoice.objects.get(
             pk=self.poll_other_choice.pk).vote_count, 0)
Ejemplo n.º 3
0
def poll_vote(request, pk):
    # TODO: check if user has access to this topic/poll
    poll = get_object_or_404(TopicPoll, pk=pk)

    if not request.user.is_authenticated():
        return redirect_to_login(next=poll.get_absolute_url(),
                                 login_url=settings.LOGIN_URL)

    form = TopicPollVoteManyForm(user=request.user, poll=poll, data=request.POST)

    if form.is_valid():
        topic_poll_pre_vote.send(sender=poll.__class__, poll=poll, user=request.user)
        form.save_m2m()
        topic_poll_post_vote.send(sender=poll.__class__, poll=poll, user=request.user)
        return redirect(request.POST.get('next', poll.get_absolute_url()))
    else:
        messages.error(request, utils.render_form_errors(form))
        return redirect(request.POST.get('next', poll.get_absolute_url()))
Ejemplo n.º 4
0
def poll_vote(request, pk):
    # TODO: check if user has access to this topic/poll
    poll = get_object_or_404(TopicPoll, pk=pk)

    if not request.user.is_authenticated():
        return redirect_to_login(next=poll.get_absolute_url(),
                                 login_url=settings.LOGIN_URL)

    form = TopicPollVoteManyForm(user=request.user,
                                 poll=poll,
                                 data=request.POST)

    if form.is_valid():
        topic_poll_pre_vote.send(sender=poll.__class__,
                                 poll=poll,
                                 user=request.user)
        form.save_m2m()
        topic_poll_post_vote.send(sender=poll.__class__,
                                  poll=poll,
                                  user=request.user)
        return redirect(request.POST.get('next', poll.get_absolute_url()))
    else:
        messages.error(request, utils.render_form_errors(form))
        return redirect(request.POST.get('next', poll.get_absolute_url()))