Beispiel #1
0
 def get_context_data(self, **kwargs):
     context = super(MobilePledgeView, self).get_context_data(**kwargs)
     context['FACEBOOK_APP_ID'] = settings.FACEBOOK_APP_ID
     context['OG_URL'] = opengraph_url(self.request,
         settings.FACEBOOK_OG_PLEDGE_ACTION)
     context['VOTE_OBJ'] = settings.BASE_URL + reverse('pledge_object')
     return context
 def get_context_data(self, **kwargs):
     context = super(MobilePledgeView, self).get_context_data(**kwargs)
     context['FACEBOOK_APP_ID'] = settings.FACEBOOK_APP_ID
     context['OG_URL'] = opengraph_url(self.request,
                                       settings.FACEBOOK_OG_PLEDGE_ACTION)
     context['VOTE_OBJ'] = settings.BASE_URL + reverse('pledge_object')
     return context
Beispiel #3
0
def my_vote_vote(request):
    user = User.objects.get(fb_uid=request.facebook["uid"])
    after = request.session.get('after', None)

    if request.method == 'GET':
        return render_to_response("my_vote_vote.html", {
            'page': 'my_vote',
            'section': 'vote',
            'user': user,
        }, context_instance=RequestContext(request))

    elif request.method == 'POST':
        if 'yes' in request.POST:
            explicit_share = request.POST.get('tell-friends', '') == 'on'
            if explicit_share:
                og_url = opengraph_url(request, settings.FACEBOOK_OG_VOTE_ACTION)
                share = requests.post(og_url, params={
                        'election': settings.BASE_URL + reverse('vote_object'),
                        'access_token': request.facebook['access_token'],
                        'fb:explicitly_shared': 'true',
                        })
                print 'Explicit share vote response: %s' % share.status_code
                print share.content
            user.explicit_share_vote = explicit_share
            user.date_voted = datetime.now()
            try:
                friendships = Friendship.objects.filter(fb_uid=user.fb_uid)
                for friendship in friendships:
                    friendship.date_voted = datetime.now()
                    friendship.save()
            except Friendship.DoesNotExist:
                pass
            messages.add_message(
                request, messages.INFO,
                # Translators: message displayed to users in when they mark themselves as having voted.
                _("Your voice was heard! Make sure your friends' voices are also heard:")
            )
            if after:
                redirect_view = after
            else:
                redirect_view = 'main:invite_friends_2'
        else:
            user.date_voted = None
            messages.add_message(
                request, messages.INFO,
                # Translators: message displayed to users in when they mark themselves as not having voted.
                _("Got it, you haven't voted yet. Don't forget!")
            )
            if after:
                redirect_view = after
            else:
                redirect_view = 'main:invite_friends_2'
        user.save()

        update_friends_of.delay(user.id)

        return redirect(redirect_view)
def submit_pledge(request):
    next = reverse("main:my_vote")
    user = User.objects.get(fb_uid=request.facebook["uid"])

    explicit_share = request.GET.get('explicit_share', None) == 'true'
    if explicit_share:
        og_url = opengraph_url(request, settings.FACEBOOK_OG_PLEDGE_ACTION)
        share = requests.post(og_url,
                              params={
                                  'vote_obj':
                                  settings.BASE_URL + reverse('pledge_object'),
                                  'access_token':
                                  request.facebook['access_token'],
                                  'fb:explicitly_shared':
                                  'true',
                              })
        print 'Explicit share pledge response: %s' % share.status_code
        print share.content

    user = User.objects.get(id=user.id)
    user.explicit_share = explicit_share
    user.date_pledged = datetime.now()
    user.save()

    showing_message = False

    join_block = request.GET.get('join_block', None) == 'true'
    if join_block:
        block = _voting_block_from_session(request.session)
        if not VotingBlockMember.objects.filter(
                member=user, voting_block_id=block.pk).exists():
            showing_message = True
            messages.add_message(request, messages.INFO,
                                 _voting_block_join_message(block))
            try:
                VotingBlockMember.objects.create(member=user,
                                                 voting_block_id=block.pk,
                                                 joined=datetime.now())
            except IntegrityError:
                pass
        next = reverse("main:voting_blocks_item", args=[
            block.pk,
        ])

    update_friends_of.delay(user.id)
    if not showing_message:
        messages.add_message(
            request,
            messages.INFO,
            # Translators: message displayed to users in green bar when they pledge to vote
            _("Thank you for pledging to vote!"))
    return {"next": next}
Beispiel #5
0
def submit_pledge(request):
    next = reverse("main:my_vote")
    user = User.objects.get(fb_uid=request.facebook["uid"])

    explicit_share = request.GET.get('explicit_share', None) == 'true'
    if explicit_share:
        og_url = opengraph_url(request, settings.FACEBOOK_OG_PLEDGE_ACTION)
        share = requests.post(og_url, params={
            'vote': settings.BASE_URL + reverse('pledge_object'),
            'access_token': request.facebook['access_token'],
            'fb:explicitly_shared': 'true',
        })
        print 'Explicit share pledge response: %s' % share.status_code
        print share.content

    user = User.objects.get(id=user.id)
    user.explicit_share = explicit_share
    user.date_pledged = datetime.now()
    user.save()

    showing_message = False

    join_block = request.GET.get('join_block', None) == 'true'
    if join_block:
        block = _voting_block_from_session(request.session)
        if not VotingBlockMember.objects.filter(
            member=user, voting_block_id=block.pk).exists():
            showing_message = True
            messages.add_message(
                request, messages.INFO,
                _voting_block_join_message(block))
            try:
                VotingBlockMember.objects.create(
                    member=user,
                    voting_block_id=block.pk,
                    joined=datetime.now())
            except IntegrityError:
                pass
        next = reverse("main:voting_blocks_item", args=[block.pk,])

    update_friends_of.delay(user.id)
    if not showing_message:
        messages.add_message(
            request, messages.INFO,
            # Translators: message displayed to users in green bar when they pledge to vote
            _("Thank you for pledging to vote!"))
    return {"next": next}
def my_vote_vote(request):
    user = User.objects.get(fb_uid=request.facebook["uid"])
    after = request.session.get('after', None)

    if request.method == 'GET':
        return render_to_response("my_vote_vote.html", {
            'page': 'my_vote',
            'section': 'vote',
            'user': user,
        },
                                  context_instance=RequestContext(request))

    elif request.method == 'POST':
        if 'yes' in request.POST:
            explicit_share = request.POST.get('tell-friends', '') == 'on'
            if explicit_share:
                og_url = opengraph_url(request,
                                       settings.FACEBOOK_OG_VOTE_ACTION)
                share = requests.post(og_url,
                                      params={
                                          'election_obj':
                                          settings.BASE_URL +
                                          reverse('vote_object'),
                                          'access_token':
                                          request.facebook['access_token'],
                                          'fb:explicitly_shared':
                                          'true',
                                      })
                print 'Explicit share vote response: %s' % share.status_code
                print share.content
            user.explicit_share_vote = explicit_share
            user.date_voted = datetime.now()
            try:
                friendships = Friendship.objects.filter(fb_uid=user.fb_uid)
                for friendship in friendships:
                    friendship.date_voted = datetime.now()
                    friendship.save()
            except Friendship.DoesNotExist:
                pass
            messages.add_message(
                request,
                messages.INFO,
                # Translators: message displayed to users in when they mark themselves as having voted.
                _("Your voice was heard! Make sure your friends' voices are also heard:"
                  ))
            if after:
                redirect_view = after
            else:
                redirect_view = 'main:invite_friends_2'
        else:
            user.date_voted = None
            messages.add_message(
                request,
                messages.INFO,
                # Translators: message displayed to users in when they mark themselves as not having voted.
                _("Got it, you haven't voted yet. Don't forget!"))
            if after:
                redirect_view = after
            else:
                redirect_view = 'main:invite_friends_2'
        user.save()

        update_friends_of.delay(user.id)

        return redirect(redirect_view)