コード例 #1
0
 def create(self, params):
     valid_params = verify_params(params, Review.REVIEW_REQUIRED_PARAMS)
     if valid_params:
         try:
             user = User.get_user_by_id(valid_params.get('user_id', None))
             if not user or not user.isVerified:
                 return jsonify(
                     message='User does not exist or is not verified'), 400
             new_review = Review(**valid_params)
             created_review = new_review.create()
             result = {
                 'message': 'Success!',
                 'review': created_review.to_dict(),
             }
             dish = Dish.get_dish_by_id(new_review.dish_id)
             if new_review.experience:
                 dish.rating += 2
             else:
                 dish.rating -= 2
             dish.update()
             return jsonify(result), 201
         except Exception as err:
             return jsonify(message="Server error!",
                            error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400
コード例 #2
0
 def update(self, oid, params):
     valid_params = verify_params(params, Review.REVIEW_REQUIRED_PARAMS)
     if oid and valid_params:
         try:
             review_to_update = Review.get_review_by_id(oid)
             old_dish = Dish.get_dish_by_id(review_to_update.dish_id)
             if not review_to_update:
                 return jsonify(message='Review Not Found!'), 404
             for key, value in valid_params.item():
                 setattr(review_to_update, key, value)
             review_to_update.update()
             result = {
                 'message': 'Success!',
                 'review': review_to_update.to_dict(),
             }
             if old_dish.did != review_to_update.dish_id:
                 new_dish = Dish.get_dish_by_id(review_to_update.dish_id)
                 if review_to_update.experience:
                     old_dish.rating -= 2
                     new_dish.rating += 2
                 else:
                     old_dish.rating += 2
                     new_dish.rating -= 2
                 old_dish.update()
                 new_dish.update()
             return jsonify(result), 200
         except Exception as err:
             return jsonify(message="Server error!",
                            error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400
 def update(self, oid, params):
     valid_params = verify_params(params, User.USER_REQUIRED_PARAMETERS)
     if oid and valid_params:
         try:
             user_to_update = User.get_user_by_id(oid)
             if user_to_update:
                 for key, value in valid_params.items():
                     if key == "password":
                         if value != user_to_update.password and not \
                                 bcrypt.checkpw(value.encode('utf-8'), user_to_update.password.encode('utf-8')):
                             user_to_update.update_password(value)
                     else:
                         setattr(user_to_update, key, value)
                 user_to_update.update()
                 result = {
                     "message": "Success!",
                     "user": user_to_update.to_dict(),
                 }
                 return jsonify(result), 200
             else:
                 return jsonify(message="Not Found!"), 404
         except Exception as err:
             return jsonify(message="Server Error!",
                            error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400
 def update(self, oid, params):
     valid_params = verify_params(params, UpVote.UPVOTE_REQUIRED_PARAMS)
     if oid and valid_params:
         try:
             upvote_to_update = UpVote.get_upvote_by_id(oid)
             old_dish = Dish.get_dish_by_id(upvote_to_update.dish_id)
             if not upvote_to_update:
                 return jsonify(message='Upvote Not Found!'), 404
             for key, value in valid_params.items():
                 setattr(upvote_to_update, key, value)
             upvote_to_update.update()
             result = {
                 "message": "Success!",
                 "upvote": upvote_to_update.to_dict()
             }
             if upvote_to_update.dish_id != old_dish.did:
                 new_dish = Dish.get_dish_by_id(upvote_to_update.dish_id)
                 old_dish.rating -= 1
                 new_dish.rating += 1
                 old_dish.update()
                 new_dish.update()
             return jsonify(result), 200
         except Exception as err:
             return jsonify(message="Server error!", error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400
コード例 #5
0
 def create_menu(json):
     valid_params = verify_params(json, Menu.MENU_REQUIRED_PARAMS)
     if valid_params:
         try:
             new_menu = Menu(**valid_params)
             created_menu = new_menu.create()
             result = {
                 'message': 'Success!',
                 'menu': created_menu.to_dict(),
             }
             return jsonify(result), 201
         except Exception as err:
             return jsonify(message="Server error!", error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400
コード例 #6
0
 def create(self, params):
     valid_params = verify_params(params, Category.CATEGORY_REQUIRED_PARAMS)
     if valid_params:
         try:
             new_category = Category(**valid_params)
             created_category = new_category.create()
             result = {
                 'message': 'Success!',
                 'category': created_category.to_dict(),
             }
             return jsonify(result), 201
         except Exception as err:
             return jsonify(message="Server error!", error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400
コード例 #7
0
 def create(self, params):
     valid_params = verify_params(params, Dish.DISH_REQUIRED_PARAMS)
     if valid_params:
         try:
             new_dish = Dish(**valid_params)
             created_dish = new_dish.create()
             result = {
                 'message': 'Success!',
                 'dish': created_dish.to_dict(),
             }
             return jsonify(result), 201
         except Exception as err:
             return jsonify(message="Server error!",
                            error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400
 def create(self, params):
     valid_params = verify_params(
         params, Establishment.ESTABLISHMENT_REQUIRED_PARAMS)
     if valid_params:
         try:
             new_establishment = Establishment(**valid_params)
             created_establishment = new_establishment.create()
             result = {
                 "message": "Success!",
                 "establishment": created_establishment.to_dict(),
             }
             return jsonify(result), 201
         except Exception as err:
             return jsonify(message="Server error!",
                            error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400
コード例 #9
0
 def update_menu(mid, json):
     valid_params = verify_params(json, Menu.MENU_REQUIRED_PARAMS)
     if mid and valid_params:
         try:
             menu_to_update = Menu.get_menu_by_id(mid)
             for key, value in valid_params.items():
                 setattr(menu_to_update, key, value)
             menu_to_update.update()
             result = {
                 "message": "Success!",
                 "menu": menu_to_update.to_dict()
             }
             return jsonify(result), 200
         except Exception as err:
             return jsonify(message="Server error!", error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400
 def login(self, json):
     valid_params = verify_params(json, User.USER_LOGIN_REQUIRED_PARAMS)
     if not valid_params:
         return jsonify(message="Bad Request!"), 400
     user = User.get_user_by_username(valid_params['username'])
     if user:
         password = valid_params['password']
         if bcrypt.checkpw(password.encode('utf-8'),
                           user.password.encode('utf-8')):
             session['logged_in'] = True
             status = True
             result = {"status": status, "user_id": user.uid}
             return jsonify(result), 200
         else:
             return jsonify(message="Username or password is wrong."), 400
     else:
         return jsonify(message="Username Not Found!"), 404
 def create(self, params):
     valid_params = verify_params(params, UpVote.UPVOTE_REQUIRED_PARAMS)
     if valid_params:
         try:
             new_upvote = UpVote(**valid_params)
             created_upvote = new_upvote.create()
             result = {
                 'message': 'Success!',
                 'upvote': created_upvote.to_dict(),
             }
             dish = Dish.get_dish_by_id(created_upvote.dish_id)
             dish.rating += 1
             dish.update()
             return jsonify(result), 201
         except Exception as err:
             return jsonify(message="Server error!", error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400
コード例 #12
0
 def update(self, oid, params):
     valid_params = verify_params(params, Category.CATEGORY_REQUIRED_PARAMS)
     if oid and valid_params:
         try:
             category_to_update = Category.get_category_by_id(oid)
             if not category_to_update:
                 return jsonify(message='Category Not Found!'), 404
             for key, value in valid_params.items():
                 setattr(category_to_update, key, value)
             category_to_update.update()
             result = {
                 "message": "Success!",
                 "category": category_to_update.to_dict()
             }
             return jsonify(result), 200
         except Exception as err:
             return jsonify(message="Server error!", error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400
 def create(self, params):
     valid_params = verify_params(params, User.USER_REQUIRED_PARAMETERS)
     if valid_params:
         try:
             username_exists = User.verify_username(
                 valid_params.get('username'))
             if username_exists:
                 return jsonify(message="Username already taken."), 400
             new_user = User(**valid_params)
             created_user = new_user.create()
             result = {
                 "message": "Success!",
                 "user": created_user.to_dict(),
             }
             return jsonify(result), 201
         except Exception as err:
             return jsonify(message="Server error!",
                            error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400
コード例 #14
0
 def update(self, oid, params):
     valid_params = verify_params(params, Dish.DISH_REQUIRED_PARAMS)
     if oid and valid_params:
         try:
             dish_to_update = Dish.get_dish_by_id(oid)
             if not dish_to_update:
                 return jsonify(message='Dish Not Found!'), 404
             for key, value in valid_params.items():
                 setattr(dish_to_update, key, value)
             dish_to_update.update()
             result = {
                 "message": "Success!",
                 "dish": dish_to_update.to_dict()
             }
             return jsonify(result), 200
         except Exception as err:
             return jsonify(message="Server error!",
                            error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400
 def update(self, oid, params):
     valid_params = verify_params(
         params, Establishment.ESTABLISHMENT_REQUIRED_PARAMS)
     if oid and valid_params:
         try:
             establishment_to_update = Establishment.get_establishment_by_id(
                 oid)
             if not establishment_to_update:
                 return jsonify(message="Not Found!"), 404
             for key, value in valid_params.items():
                 setattr(establishment_to_update, key, value)
             establishment_to_update.update()
             result = {
                 "message": "Success!",
                 "establishment": establishment_to_update.to_dict()
             }
             return jsonify(result), 200
         except Exception as err:
             return jsonify(message="Server error!",
                            error=err.__str__()), 500
     else:
         return jsonify(message="Bad Request!"), 400