예제 #1
0
def update_user(sender, response, access_token):
    if current_user.is_authenticated():
        session[TOKENS_KEY][sender.name] = access_token
        current_user.access_keys = session[TOKENS_KEY]
        User.get_collection().update(
            {'_id':current_user._id},
            {'$set': {'access_keys': current_user.access_keys}})
    else:
        login_user(register_user(response, access_token))
예제 #2
0
def update_user(sender, request, access_token):
    if current_user.is_authenticated():
        session[TOKENS_KEY] = access_token
        current_user.access_key = access_token
        current_user.uids[request.args['service']] = request.args['uid']
        
        User.get_collection().update(
            {'_id':current_user._id},
            {'$set':
                {'access_key': current_user.access_key,
                 'uids': current_user.uids
                }
            })
    else:
        login_user(register_user(request, access_token))
예제 #3
0
def load_user(user_id):
    user = User.get_collection().find_one(ObjectId(user_id))
    
    if user:
        return User(**user)
    else:
        return None
예제 #4
0
def register_user(response, access_token):
    btid = response.content.get('btid')
    
    if btid:
        users = User.get_collection()
        user = Users.find_one({'btid': btid})
        
        if user:
            user['access_key'] = access_token
            user['uids'][response.content['service']] = response.content['uid']
            user = User(**user)
            User.save(user)
        else:
            user = User(btid, access_token,
                uids = {response.content['service']: response.content['uid']}, 
                confirmed = True)
                 
            user_id = User.get_collection().insert(dict(user))
            user._id = user_id
        
        session[TOKENS_KEY] = user['access_key']
        
        return user
    return None
예제 #5
0
def load_user(user_id):
    return User(**(User.get_collection().find_one(ObjectId(user_id))))