Beispiel #1
0
def trippins_login(request):
    context = {}

    # if already login, directly redirect to stream page
    if request.user.is_authenticated():
        return redirect(reverse('index'))

    if request.method == 'GET':
        context['form'] = LoginForm()
        return render(request, 'authentication/login.html', context)

    form = LoginForm(request.POST)
    context['form'] = form

    if not form.is_valid():
        print form.errors
        return render(request, 'authentication/login.html', context)
    user = authenticate(username=form.cleaned_data['username'], \
                        password=form.cleaned_data['password'])
    try:
        login(request, user)
        request.session["max_follow_pid"] = getMaxFeedPid(request)
        print getMaxFeedPid(request)
    except Exception as err:
        print err
        print 'username password mismatch'
        context['error_message'] = "Your username and password seems wrong, please try again"
        return render(request, 'authentication/login.html', context)

    return redirect(reverse('index'))
Beispiel #2
0
def check_updates(request, max_pid=0):
    try:
        # in case user logined in via cookie
        max_pid = request.session["max_follow_pid"]
    except:
        max_pid = getMaxFeedPid(request)
        request.session["max_follow_pid"] = max_pid

    context = {}

    user = TripUser.objects.get(user = request.user)
    following_set = [followee for followee in user.followings.all()]

    new_pins = Pin.objects.filter(user__in = following_set, id__gt = max_pid).order_by('-date')
    if len(new_pins)>0:
        request.session["max_follow_pid"] = new_pins[0].id
    print "current max follow pid %s" % (Pin.get_max_id())
    context['pins'] = new_pins
    return render(request, 'pins.json', context, content_type='application/json')