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