def _decorated(request, *args, **kwargs):
     if request.GET.get('lp', True):
         latest_poll = LatestPoll.get_solo()
         if request.user and latest_poll.flow_uuid and request.user.is_authenticated():
             uuid = Ureporter.objects.get(user=request.user).uuid
             request.session.lp = not complete_run_already_exists(latest_poll.flow_uuid, uuid)
     return view_func(request, *args, **kwargs)
def retrieve_latest_poll():
    response = requests.get(settings.UREPORT_ROOT +
                            '/api/v1/polls/org/' + settings.UREPORT_ORG_ID + '/featured/?format=json').json()
    latest_poll_id_from_api = response['results'][0]['id']
    latest_poll_singleton = LatestPoll.get_solo()
    if not latest_poll_singleton.poll_id == latest_poll_id_from_api \
       and not latest_poll_singleton.has_in_previous_featured_polls(latest_poll_id_from_api):
        latest_poll_singleton.set_poll_id(latest_poll_id_from_api)
        latest_poll_singleton.add_featured_poll(latest_poll_id_from_api)
        notify_users_of_new_poll(latest_poll_id_from_api)
 def setUp(self):
     self.latest_poll_singleton = LatestPoll.get_solo()
     self.latest_poll_singleton.poll_id = 1
     self.latest_poll_singleton.flow_uuid = "flow uuid"
     self.latest_poll_singleton.save()
     self.factory = RequestFactory()
     self.user = User.objects.create_user(username='******',
                                          email='*****@*****.**')
     self.reporter = Ureporter.objects \
         .create(last_poll_taken=1, subscribed=True,
                 user=self.user)
    def setUp(self):
        self.latest_poll_singleton = LatestPoll.get_solo()
        self.latest_poll_singleton.poll_id = 1
        self.latest_poll_singleton.save()

        self.latest_poll_id = 2
        self.should_receive_email_user = Ureporter.objects \
            .create(last_poll_taken=1, subscribed=True,
                    user=User.objects.create_user(username='******',
                                                  email='*****@*****.**'))
        self.already_taken_poll_user = Ureporter.objects \
            .create(last_poll_taken=2, subscribed=True,
                    user=User.objects.create_user(username='******',
                                                  email='*****@*****.**'))
        self.not_subscribed_user = Ureporter.objects \
            .create(last_poll_taken=2, subscribed=False,
                    user=User.objects.create_user(username='******',
                                                  email='*****@*****.**'))
 def is_latest_poll_taken(self):
     latest_poll_id = LatestPoll.get_solo().poll_id
     return self.last_poll_taken == latest_poll_id