def getUsers(user): try: return getAllUsers() except Exception as e: logging.error("Error in getting all user details - {}".format(e)) return getServerErrorResponse()
def decorated(*args, **kwargs): try: token = None # Check whether access token is included in the headers if "access-token" in request.headers: token = request.headers["access-token"] if not token: return {"message": "Access token is required"}, 401 data = decodeToken(token) # Decode token user = getUser(data["email"]) # Check if the user exists and correct token type if user is None or data["type"] != ACCESSTOKEN: print(data["type"]) return {"message": "Invalid authorization token"}, 401 # Check if user is verified or not if not isUserVerified(user.email): return { "message": "Account not verified. Verification mail sent." }, 401 return f(user, *args, **kwargs) except (InvalidSignatureError, ExpiredSignatureError) as e: return {"message": "Invalid or Expired Authorization Token"}, 400 except: return getServerErrorResponse()
def welcome(): try: return { "message": "Hello mate. Welcome to Car Paint Shop API. You can find the API docs at the below link. Cheers!", "link": "https://car-paint-shop.herokuapp.com/api-docs" }, 200 except Exception as e: logging.error("Error in welcome route - {}".format(e)) return getServerErrorResponse()
def accountVerificationRoute(): try: token = request.args.get("token") if token is None: return {"message": "Token required"}, 400 return verifyAccount(token) except (InvalidSignatureError, ExpiredSignatureError) as e: return getInvalidTokenErrorResponse() except Exception as e: logging.error("Error verifying user account - {}".format(e)) return getServerErrorResponse()
def resetPasswordRequestRoute(): try: req = request.get_json() # Validate condition, msg, status = validateResetPasswordRequestRoute(req) # Validation check if not condition: return msg, status return sendResetPassword(req) except Exception as e: logging.error("Error sending reset password mail- {}".format(e)) return getServerErrorResponse()
def loginRoute(): try: req = request.get_json() # Validate condition, msg, status = validateLoginRoute(req) # Validation check if not condition: return msg, status return login(req) except Exception as e: logging.error("Error logging in user - {}".format(e)) return getServerErrorResponse()
def registerRoute(): try: req = request.get_json(force=True) # Validate condition, msg, status = validateRegisterRoute(req) # Validation check if not condition: return msg, status return createUser(req) except Exception as e: logging.error("Error registering new user - {}".format(e)) return getServerErrorResponse()
def updateQueueLengthRoute(user): try: req = request.get_json(force=True) # Validate condition, msg, status = validateUpdateQueueLengthRoute(req) # Validation check if not condition: return msg, status return updateQueueLength(req) except Exception as e: logging.error("Error in updating queue details - {}".format(e)) return getServerErrorResponse()
def deleteUserRoute(user): try: req = request.get_json(force=True) # Validate condition, msg, status = validateDeleteUserRoute(req) # Validation check if not condition: return msg, status return deleteUser(req) except Exception as e: logging.error("Error in deleting user - {}".format(e)) return getServerErrorResponse()
def closePaintAreaRoute(user): try: req = request.get_json(force=True) # Validate condition, msg, status = validateClosePaintAreaRoute(req) # Validation check if not condition: return msg, status return closeSpecificPaintingArea(req) except Exception as e: logging.error("Error in closing paint area - {}".format(e)) return getServerErrorResponse()
def requestPaintJobRoute(user): try: req = request.get_json(force=True) # Validate condition, msg, status = validateRequestPaintJobRoute(req) # Validation check if not condition: return msg, status return requestPaint(req, user) except Exception as e: logging.error("Error in painting car - {}".format(e)) return getServerErrorResponse()
def resetPasswordRoute(): try: req = request.get_json() # Validate condition, msg, status = validateResetPasswordRoute(req) # Validation check if not condition: return msg, status return resetPassword(req) except (InvalidSignatureError, ExpiredSignatureError) as e: return getInvalidTokenErrorResponse() except Exception as e: logging.error("Error resetting password- {}".format(e)) return getServerErrorResponse()
def twoFactorAuthRoute(): try: req = request.get_json() # Validate condition, msg, status = validateTwoFactorAuthRoute(req) # Validation check if not condition: return msg, status return twoFactorAuth(req) except (InvalidSignatureError, ExpiredSignatureError) as e: return getInvalidTokenErrorResponse() except Exception as e: logging.error("Error in two factor authorization - {}".format(e)) return getServerErrorResponse()
def getQueueLengthRoute(user): try: return getQueueDetails() except Exception as e: logging.error("Error in getting queue details - {}".format(e)) return getServerErrorResponse()
def getAvailablePaintJobsRoute(): try: return getAllPaintJobs() except Exception as e: logging.error("Error in getting available paint job - {}".format(e)) return getServerErrorResponse()
def getAllPaintJobRecordsRoute(user): try: return getAllPaintJobRecords() except Exception as e: logging.error("Error in getting all paint job records - {}".format(e)) return getServerErrorResponse()