def post(self): args = fbUserParser.parse_args() fb_id = args['fbid'] fb_token = args['fbtoken'] if fb_id is None or fb_token is None: abort(400) fbuser_info = requests.get('https://graph.facebook.com/me?access_token=%s' %fb_token).json() if not fbuser_info.get('id') or fb_id != fbuser_info['id']: raise InvalidUsage('User info does not match',406) fb_email = args['fbemail'] user = User.objects(email=fb_email).first() if user is None: user = User(email=fb_email, fb_id=fbuser_info['id']) user.save() profile = Profile.objects(user=user).first() if profile is None: profile = Profile(user=user) profile.save() rongToken = rongcloudToken(profile.id) token = user.generate_auth_token() redis_store.set(str(user.id), token) return {'token': token, 'rongToken' : rongToken}
def post(self, user_id): args = profileParser.parse_args() username = args['username'] school = args['school'] intro = args['intro'] lolID = args['lolID'] dotaID = args['dotaID'] hstoneID = args['hstoneID'] gender = args['gender'] profile = Profile.objects(user=user_id).first() if profile is None: profile = Profile(user=user_id) profile.username = username profile.school = school profile.intro = intro profile.lolID = lolID profile.dotaID = dotaID profile.hstoneID = hstoneID profile.gender = gender profile.save() rongRefresh(profile.id) return serialize(profile)
def post(self, user_id): """ Upload user's profile icon """ uploaded_file = request.files['upload'] filename = "_".join([user_id, uploaded_file.filename]) # upload the file to S3 server conn = boto.connect_s3(os.environ['S3_KEY'], os.environ['S3_SECRET']) bucket = conn.get_bucket('profile-icon') key = bucket.new_key(filename) key.set_contents_from_file(uploaded_file) # update the user's profile document profile = Profile.objects(user=user_id).first() if profile is None: profile = Profile( user=user_id, profile_icon= 'https://s3-us-west-2.amazonaws.com/profile-icon/%s' % filename) profile.save() else: profile.profile_icon = 'https://s3-us-west-2.amazonaws.com/profile-icon/%s' % filename profile.save() return serialize(profile)
def post(self): args = userParser.parse_args() email = args['email'] password = args['password'] if email is None or password is None: abort(400) user = User(email=email) user.hash_password(password) profile = Profile(user=user) try: user.save() profile.save() except ValidationError, e: raise InvalidUsage(e.message)
def post(self, user_id): uploaded_file = request.files['upload'] filename = "_".join([user_id, uploaded_file.filename]) conn = boto.connect_s3('AKIAJAQHGWIZDOAEQ65A', 'FpmnFv/jte9ral/iXHtL8cDUnuKXAgAqp9aXVQMI') bucket = conn.get_bucket('profile-icon') key = bucket.new_key(filename) key.set_contents_from_file(uploaded_file) profile = Profile.objects(user=user_id).first() if profile is None: profile = Profile(user=user_id, profile_icon='https://s3-us-west-2.amazonaws.com/profile-icon/%s' %filename) profile.save() else: profile.profile_icon = 'https://s3-us-west-2.amazonaws.com/profile-icon/%s' %filename profile.save() rongRefresh(profile.id) return serialize(profile)
def post(self, user_id): """ Edit the user's profile if the profile exists Otherwise, create a new profile document """ args = profileParser.parse_args() username = args['username'] school = args['school'] intro = args['intro'] profile = Profile.objects(user=user_id).first() if profile is None: profile = Profile( user=user_id, username=username, school=school, intro=intro) profile.save() else: profile.username = username profile.school = school profile.intro = intro profile.save() return serialize(profile)
def post(self, user_id): """ Upload user's profile icon """ uploaded_file = request.files['upload'] filename = "_".join([user_id, uploaded_file.filename]) # upload the file to S3 server conn = boto.connect_s3(os.environ['S3_KEY'], os.environ['S3_SECRET']) bucket = conn.get_bucket('profile-icon') key = bucket.new_key(filename) key.set_contents_from_file(uploaded_file) # update the user's profile document profile = Profile.objects(user=user_id).first() if profile is None: profile = Profile(user=user_id, profile_icon= 'https://s3-us-west-2.amazonaws.com/profile-icon/%s' % filename) profile.save() else: profile.profile_icon = 'https://s3-us-west-2.amazonaws.com/profile-icon/%s' % filename profile.save() return serialize(profile)
def post(self, user_id): """ Edit the user's profile if the profile exists Otherwise, create a new profile document """ args = profileParser.parse_args() username = args['username'] school = args['school'] intro = args['intro'] profile = Profile.objects(user=user_id).first() if profile is None: profile = Profile(user=user_id, username=username, school=school, intro=intro) profile.save() else: profile.username = username profile.school = school profile.intro = intro profile.save() return serialize(profile)