示例#1
0
def api_user_login(request):

    api_result = {"api": "login"}

    username = request.POST["username"]
    password = request.POST["password"]

    print username, password
    user = authenticate(username=username, password=password)
    print user.pk
    if user is not None:
        if user.is_active:
            login(request, user)
            api_result["status"] = "success"
        else:
            # Return a 'disabled account' error message
            api_result["status"] = "failure"
    else:
        # Return an 'invalid login' error message.
        api_result["status"] = "failure"

    print request.user.is_authenticated()

    # if no polls in feed, initiate new user protocol
    polls = Feed.user_feed(user, 1, 10)

    if len(polls) == 0:
        create_feed_new_user(user)

    return JsonResponse(api_result)
示例#2
0
def api_user_register(request):
    api_result = {"api": "register", "status": "success"}

    try:
        name = request.POST["name"]
        email = request.POST["email"]
        password = request.POST["password"]
        cid = request.POST["client_id"]
        csecret = request.POST["client_secret"]

        try:
            client = Application.objects.get(client_id=cid, client_secret=csecret)
        except:
            api_result["status"] = "failure"
            api_result["error"] = "wrong client id and secret"
            return JsonResponse(api_result)

        # register the user if not present already
        try:
            u = User.objects.get(email=email)
            if u is not None:
                api_result["status"] = "failure"
                api_result["error"] = "user already present"
                return JsonResponse(api_result)
        except:
            u = User.objects.create_user(email, email, password)
            first_name = name.split()[0]
            last_name = " ".join(name.split()[1:])
            u.first_name = first_name
            u.last_name = last_name
            u.save()

            # create feed
            create_feed_new_user(u)

            return JsonResponse(api_result)
    except:
        api_result["status"] = "failure"
        api_result["error"] = "incomplete data"
        return JsonResponse(api_result)