def login_with_facebook(request, facebook_access_token): def denied(): raise PermissionDenied("No DrawQuest user exists for this Facebook account.") try: fb_user = FacebookUser.get_from_access_token(facebook_access_token) except FacebookUser.DoesNotExist: denied() if fb_user.user is None: denied() return _login_user(request, fb_user.user)
def login_with_facebook(request, facebook_access_token): def denied(): raise PermissionDenied( "No DrawQuest user exists for this Facebook account.") try: fb_user = FacebookUser.get_from_access_token(facebook_access_token) except FacebookUser.DoesNotExist: denied() if fb_user.user is None: denied() return _login_user(request, fb_user.user)
def login_with_facebook(request, facebook_access_token): try: fb_user = FacebookUser.get_from_access_token(facebook_access_token) except FacebookUser.DoesNotExist: raise PermissionDenied("No DrawQuest user exists for this Facebook account.") user = fb_user.user if not user.is_active: return inactive_user_http_response() # this is a total hack because we don't care to write a backend for the above authenticate method user.backend = settings.AUTHENTICATION_BACKENDS[0] auth.login(request, user) return { 'user': PrivateUserDetails.from_id(user.id).to_client(), 'user_bio': user.userinfo.bio_text, 'user_subscribed_to_starred': is_subscribed(user, 'starred'), 'sessionid': request.session.session_key, }
def login_with_facebook(request, facebook_access_token): try: fb_user = FacebookUser.get_from_access_token(facebook_access_token) except FacebookUser.DoesNotExist: raise PermissionDenied( "No DrawQuest user exists for this Facebook account.") user = fb_user.user if not user.is_active: return inactive_user_http_response() # this is a total hack because we don't care to write a backend for the above authenticate method user.backend = settings.AUTHENTICATION_BACKENDS[0] auth.login(request, user) return { 'user': PrivateUserDetails.from_id(user.id).to_client(), 'user_bio': user.userinfo.bio_text, 'user_subscribed_to_starred': is_subscribed(user, 'starred'), 'sessionid': request.session.session_key, }