def post(self): json_data = request.get_json(force=True) if not json_data: return {'message': 'No input data provided'}, 400 user = User.query.filter_by(username=json_data['username']).first() if user: return {'message': 'Username not available'}, 400 user = User.query.filter_by( emailadress=json_data['emailadress']).first() if user: return {'message': 'Email address already exists'}, 400 api_key = self.generate_key() user = User.query.filter_by(api_key=api_key).first() if user: return {'message': 'API key already exists'}, 400 user = User( api_key=api_key, firstname=json_data['firstname'], lastname=json_data['lastname'], emailadress=json_data['emailadress'], password=json_data['password'], username=json_data['username'], ) db.session.add(user) db.session.commit() result = User.serialize(user) return {"status": 'success', 'data': result}, 201
def post(self): result = "" json_data = request.get_json(force=True) header = request.headers["Authorization"] if not header: result = self.username_and_and_password_signin(json_data) else: user = User.query.filter_by(api_key=header).first() result = User.serialize(user) if user: result = User.serialize(user) else: result = self.username_and_and_password_signin(json_data) return {"status": 'success', 'data': result}, 201
def username_and_password_signin(self, json_data): if not json_data: return {'message': 'No input data provided'}, 400 user = User.query.filter_by(username=json_data['username']).first() #incorrect password if user.password != json_data['password']: return {'message': 'Password incorrect'}, 400 #incorrect username if not user: return {'message': 'Username does not exist'}, 400 return User.serialize(user)
def post(self): json_data = request.get_json(force=True) #Check if data exists if not json_data: return {'message': 'No input data provided'}, 400 # Validate and deserialize input data, errors = user_schema.load(json_data) if errors: return errors, 422 # See if a user already exists user = User.query.filter_by(username=data['username']).first() if user: return {'message': 'User already exists'}, 400 #Create unqiue api_key for user api_key = self.generate_key() user = User.query.filter_by(api_key=api_key).first() #See if a user already has that API Key, if yes remake a new one and check again. while (user): api_key = self.generate_key() user = User.query.filter_by(api_key=api_key).first() # Create User user = User( api_key = api_key, username=json_data['username'], first_name=json_data['first_name'], last_name=json_data['last_name'], password=json_data['password'], email_address=json_data['email_address'] ) # Add user to database db.session.add(user) db.session.commit() # Return user value result = User.serialize(user) return { "status": 'success', 'data': result }, 201
def post(self): # print(request.get_json())\ json_data = request.get_json(force=True) if not json_data: return {'message': 'No input data provided'}, 400 # data , errors = User.load(json_data) # if errors: # return errors, 422 user = User.query.filter_by(username=json_data['username']).first() if user: return {'message': 'Username already exists'}, 400 user = User.query.filter_by( emailadress=json_data['emailadress']).first() if user: return {'message': 'Email address already exists'}, 400 api_key = self.generate_key() user = User.query.filter_by(api_key=api_key).first() if user: return {'message': 'Api key already exists'}, 400 user = User( api_key=api_key, firstname=json_data["firstname"], lastname=json_data["lastname"], emailadress=json_data["emailadress"], password=json_data["password"], username=json_data["username"], ) db.session.add(user) db.session.commit() result = User.serialize(user) return {"status": "success", "data": result}, 201
def post(self): json_data = request.get_json(force=True) # checks if data was passed if not json_data: return {'message': "No input data passed"}, 400 # checks if user already exist in db user = User.query.filter_by(username=json_data['username']).first() if user: return {'message': "User already exist"}, 400 user = User.query.filter_by(email=json_data['email']).first() if user: return {'message': "Email already used by another user"}, 400 key = self.generate_key() user = User.query.filter_by(api_key=key).first() if user: return {'message': "API key already exist"} # create new user object user = User(api_key=key, username=json_data['username'], password=json_data['password'], first_name=json_data['firstname'], last_name=json_data['lastname'], email=json_data['email']) # add user to database db.session.add(user) db.session.commit() # convert User object to string before return data result = User.serialize(user) return {'status': "success", 'data': result}, 201
def post(self): json_data = request.get_json(force=True) #validates that the username doesn't already exist user = User.query.filter_by(username=json_data['username']).first() if user: return {'message': 'User already exists'}, 400 #validates that the email hasnt already been signed up user = User.query.filter_by(email_address=json_data['email_address']).first() if user: return {'message': 'Email already signed up!'}, 400 api_key = self.generateApiKey() #makes sure api key is not already added in the database user = User.query.filter_by(api_key=api_key).first() if user: return {'message': 'API Key already exists!'}, 400 user = User( api_key=api_key, username=json_data['username'], first_name=json_data['first_name'], last_name=json_data['last_name'], password=json_data['password'], email_address=json_data['email_address'], image_url=json_data['image_url'] ) db.session.add(user) db.session.commit() result = User.serialize(user) return { "status": 200, "user": result}, 200