Beispiel #1
0
def login(req):
    host = "http://" + req.get_host()
    print "ENTERING LOGIN", req, "end login req"
    if "redirect" not in req.session:
        req.session["redirect"] = host + str(reverse("facebook_callback_close"))

    if "popup" in req.GET:
        req.session["redirect"] = host + str(reverse("facebook_callback_close"))

    if "redirectArgs" in req.GET:
        print "calling handle_redirect_string", type(req.session["redirect"])
        req.session["redirect"] = handle_redirect_string(req.session["redirect"], req.GET["redirectArgs"])

    if req.user is not None:  # and "oauth_token" in req.user:
        if req.user.oauth_token:
            print "USERAAA", req.user, req.user.oauth_token

            print req.user, "login redirect:", req.session["redirect"]
            redirect = req.session["redirect"]
            del req.session["redirect"]
            return HttpResponseRedirect(redirect)

    try:
        token = get_unauthorized_token()
    except:
        HttpResponseRedirect(reverse("tauth_login"))
    print "unauthorized token", token
    req.session["token"] = token.to_string()
    url_auth = get_authorization_url(token)

    print "Twitter url login is ", url_auth
    return HttpResponseRedirect(url_auth)
Beispiel #2
0
def facebook_logout_callback(req):
    if "access_token" in req.session:
        del req.session['access_token']
        del req.session['base_domain']
        del req.session['secret']
        del req.session['session_key']
        del req.session['sessionid']
        del req.session['sig']
        del req.session['uid']

    if "access_token" in req.COOKIES:
        del req.COOKIES['access_token']
        del req.COOKIES['base_domain']
        del req.COOKIES['secret']
        del req.COOKIES['session_key']
        del req.COOKIES['sessionid']
        del req.COOKIES['sig']
        del req.COOKIES['uid']

    if "redirect" in req.session:
        redirect = req.session['redirect']

    if "redirectArgs" in req.GET:
        redirect = handle_redirect_string(redirect, req.GET["redirectArgs"])

    print "SESSION KEYS"
    for key in req.session.keys():
        print "KEY", key, req.session[key]

    print "COOKIES KEYS"
    for key in req.COOKIES.keys():
        print "KEY", key, req.COOKIES[key]
    print "redirecting logout", redirect
    return HttpResponseRedirect(redirect)
Beispiel #3
0
def logout(req):
    print "tauth_logout REQQQ", req
    if "redirect" in req.session:
        redirect = str(req.session["redirect"])
        del req.session["redirect"]
    else:
        redirect = str(reverse("facebook_callback_close"))

    if "popup" in req.GET:
        redirect = str(reverse("facebook_callback_close"))

    if "redirectArgs" in req.GET:
        redirect = handle_redirect_string(redirect, req.GET["redirectArgs"])

    if req.user is not None:
        req.user.oauth_token = ""
        req.user.oauth_token_secret = ""
        req.user.save()
        print "LOGOUT oauth_token", req.user.oauth_token

    if "user_id" in req.session:
        del req.session["user_id"]

    if "popup" in req.GET:
        return HttpResponse(json.dumps({}))

    if redirect:
        return HttpResponseRedirect(redirect)
    else:
        return render_to_response("logout.html", {})
Beispiel #4
0
def facebook_callback(req):

    print "FACEBOOK CALLBACK", req
    for s in req.session.keys():
        print "SESSION", s, req.session[s]

    fauth_utils.sync_session_cookies_v2(req)

    for s in req.session.keys():
        print "SESSION", s, req.session[s]
    
    (user, create) = FBUser.objects.get_or_create(facebook_id=req.session['uid'])
    user.access_token = req.session["access_token"]
    user.save()
    user.fill_info()
    user.save()

    redirect = req.session['redirect']

    if "redirectArgs" in req.GET:
        redirect = handle_redirect_string(redirect, req.GET["redirectArgs"])

    return HttpResponseRedirect(redirect)