예제 #1
0
def vote_next(request):
    ip = request.META.get('REMOTE_ADDR')

    try:
        vote = Vote.objects.get(ip=ip)
    except Vote.DoesNotExist:
        try:
            reverse = socket.gethostbyaddr(ip)[0]
        except socket.herror:
            reverse = u'unknown <%s>' % ip

        vote = Vote(ip=ip, reverse=reverse)

    vote.point = 1
    vote.save()

    # test
    votes = Vote.objects.all()
    points = sum(vote.point for vote in votes)

    if settings.MODE == 'static' and points >= settings.STATIC_THRESHOLD:
        spotify_next()
    elif settings.MODE == 'dynamic':
        clients = Client.objects.filter(up=True).count()
        if points >= clients // 2:
            spotify_next()
        else:
            messages.add_message(request, messages.SUCCESS, 'You have successfully voted.')
    else:
        messages.add_message(request, messages.SUCCESS, 'You have successfully voted.')

    return redirect('app.views.index')
예제 #2
0
def vote(request):
    VoteFormSet = formset_factory(VoteForm, extra=0)
    if request.method == 'POST':
        formset = VoteFormSet(request.POST, request.FILES)
        if formset.is_valid():
            g = request.session.get('group')
            b = request.session.get('badge_number')
            n = request.session.get('student_name')

            if (g == None or b == None or n == None):
                return HttpResponseRedirect('/')

            print('valid')

            resp = ResponseStudent()
            resp.badge_number = b
            resp.student_name = n
            resp.group = Group.objects.filter(pk=g)[0]
            resp.save()
            for form in formset.cleaned_data:
                v = Vote()
                v.response_student = resp
                v.teacher = form['teacher']
                v.mark1 = form['mark1']
                v.mark2 = form['mark2']
                v.mark3 = form['mark3']
                v.mark4 = form['mark4']
                v.mark5 = form['mark5']
                v.mark6 = form['mark6']
                v.mark7 = form['mark7']
                v.mark8 = form['mark8']
                v.save()
        else:
            print('No valid')
    return render(request, 'app/thank_you.html')
예제 #3
0
def vote_next(request):
    ip = request.META.get('REMOTE_ADDR')

    try:
        vote = Vote.objects.get(ip=ip)
    except Vote.DoesNotExist:
        try:
            reverse = socket.gethostbyaddr(ip)[0]
        except socket.herror:
            reverse = u'unknown <%s>' % ip

        vote = Vote(ip=ip, reverse=reverse)

    vote.point = 1
    vote.save()

    # test
    votes = Vote.objects.all()
    points = sum(vote.point for vote in votes)

    if settings.MODE == 'static' and points >= settings.STATIC_THRESHOLD:
        spotify_next()
    elif settings.MODE == 'dynamic':
        clients = Client.objects.filter(up=True).count()
        if points >= clients // 2:
            spotify_next()
        else:
            messages.add_message(request, messages.SUCCESS,
                                 'You have successfully voted.')
    else:
        messages.add_message(request, messages.SUCCESS,
                             'You have successfully voted.')

    return redirect('app.views.index')
예제 #4
0
파일: helpers.py 프로젝트: simonv3/ideas
def vote(voteForm, user):
    clean = voteForm.cleaned_data
    idea = Idea.objects.get(id = clean['idea'])
    try:
        vote= Vote.objects.get(user = user, idea = idea)
    except:
        vote = Vote(vote = clean['vote'], user = user, idea = idea)
        vote.save()
    else:
        vote.delete()
예제 #5
0
def vote_keep(request):
    ip = request.META.get('REMOTE_ADDR')

    try:
        vote = Vote.objects.get(ip=ip)
    except Vote.DoesNotExist:
        try:
            reverse = socket.gethostbyaddr(ip)[0]
        except socket.herror:
            reverse = u'unknown <%s>' % ip

        vote = Vote(ip=ip, reverse=reverse)

    vote.point = -1
    vote.save()

    messages.add_message(request, messages.SUCCESS, 'You have successfully voted.')
    return redirect('app.views.index')
예제 #6
0
def vote_keep(request):
    ip = request.META.get('REMOTE_ADDR')

    try:
        vote = Vote.objects.get(ip=ip)
    except Vote.DoesNotExist:
        try:
            reverse = socket.gethostbyaddr(ip)[0]
        except socket.herror:
            reverse = u'unknown <%s>' % ip

        vote = Vote(ip=ip, reverse=reverse)

    vote.point = -1
    vote.save()

    messages.add_message(request, messages.SUCCESS,
                         'You have successfully voted.')
    return redirect('app.views.index')
예제 #7
0
파일: handlers.py 프로젝트: simonv3/ideas
 def read(self, request, idea_id, user_id, vote_value, apikey, apisignature):
     print vote_value
     """
     POST a vote
     """
     base = Vote.objects
     try:
         user = User.objects.get(id=user_id)
         idea = Idea.objects.get(id=idea_id)
     except:
         return {'error':'idea or user not found'}
     else:
         try:
             #check if the vote already exists
             vote = Vote.objects.get(user = user, idea = idea)
         except:
             vote = Vote(vote = vote_value, user = user, idea = idea)
             vote.save()
             return {'success':'true'}
         else:
             vote.delete()
             return {'success':'false'}