def user(self): db = DB() # this method will return either one or all users based on id # if id == * all users are returned if (request.method == "GET"): email = request.params['email'] if email == '*': # users = db.getUsers() # check output # return json.dumps(users) return "returns all users" else: # user = db.getUser(email) # check output # return json.dumps(user) return "returns user with email " + email # this method works for real - just need to figure out host site links to people in the database # should this return the user's ID? elif (request.method == "PUT"): email = request.params['email'] if (db.userExists(email)): # Update user # db.updateUser(request.params['email'], request.params['new_email'], request.params['password'], request.params['first_name'], request.params['last_name'], request.params['role'], request.params['phone_number']) return "update user" # unimplemented until db is ready else: # TODO check for errors from database # Add new user user = User(request.params['email'], request.params['password'], request.params['first_name'], request.params['last_name'], request.params['role'], request.params['phone_number']) db.addUserModel(user) return "{\"success\":\"true\"}" # we might not implement this elif (request.method == "DELETE"): return "{\"success\":\"false\", \"message\":\"Unimplemented method\"}" else: return "{\"success\":\"false\",\"message\":\"Bad request method\"}"
def user(self): db = DB() # for all users send email : * # otherwise user with email will be returned if (request.method == "GET"): email = request.params['email'] if email == '*': users = db.getUsers(request.params['sortid']) return User.toTable(users) else: try: user = db.getUser(email) return json.dumps(user) except: return "free" elif (request.method == "PUT"): email = request.params['email'] if(db.userExists(email)): # If the user already exists, update them user = User(request.params['email'], request.params['password'], request.params['first_name'], request.params['last_name'], request.params['role'], request.params['phone_number'], request.params['host_site']) success = db.updateUserModel(user, request.params['new_email']) if success: return self.trueString else : return "{\"success\":\"false\", \"message\":\"Unable to update user. Ensure email address is correct.\"}" elif (request.params['email'] != ""): # Add new user user = User(request.params['email'], request.params['password'], request.params['first_name'], request.params['last_name'], request.params['role'], request.params['phone_number'], request.params['host_site']) success = db.addUserModel(user) if success: self.send_signup_email(request.params['email'], request.params['password'], request.params['first_name'], request.params['last_name'], request.params['role'], request.params['phone_number'], request.params['host_site']) return self.trueString else: return "{\"success\":\"false\", \"message\":\"Unable to add user.\"}" else: # Delete request success = db.removeUser(request.params['id']) if success: return "{\"success\":\"true\", \"message\":\"Deleted new host site\"}" else: return "{\"success\":\"fasle\", \"message\":\"Unable to add new host site\"}" elif (request.method == "DELETE"): return "{\"success\":\"false\", \"message\":\"Unimplemented method\"}" else: return "{\"success\":\"false\",\"message\":\"Bad request method\"}"
def user(self): db = DB() # this method will return either one or all users based on id # if id == * all users are returned if (request.method == "GET"): email = request.params['email'] if email == '*': # users = db.getUsers() # check output # return json.dumps(users) return "returns all users" else: # user = db.getUser(email) # check output # return json.dumps(user) return "returns user with email " + email # this method works for real - just need to figure out host site links to people in the database # should this return the user's ID? elif (request.method == "PUT"): email = request.params['email'] if(db.userExists(email)): # Update user # db.updateUser(request.params['email'], request.params['new_email'], request.params['password'], request.params['first_name'], request.params['last_name'], request.params['role'], request.params['phone_number']) return "update user" # unimplemented until db is ready else: # TODO check for errors from database # Add new user user = User(request.params['email'], request.params['password'], request.params['first_name'], request.params['last_name'], request.params['role'], request.params['phone_number']) db.addUserModel(user) return "{\"success\":\"true\"}" # we might not implement this elif (request.method == "DELETE"): return "{\"success\":\"false\", \"message\":\"Unimplemented method\"}" else: return "{\"success\":\"false\",\"message\":\"Bad request method\"}"
def user(self): db = DB() # for all users send email : * # otherwise user with email will be returned if (request.method == "GET"): email = request.params['email'] if email == '*': users = db.getUsers(request.params['sortid']) return User.toTable(users) else: try: user = db.getUser(email) return json.dumps(user) except: return "free" elif (request.method == "PUT"): email = request.params['email'] if (db.userExists(email)): # If the user already exists, update them user = User( request.params['email'], request.params['password'], request.params['first_name'], request.params['last_name'], request.params['role'], request.params['phone_number'], request.params['host_site']) success = db.updateUserModel(user, request.params['new_email']) if success: return self.trueString else: return "{\"success\":\"false\", \"message\":\"Unable to update user. Ensure email address is correct.\"}" elif (request.params['email'] != ""): # Add new user user = User( request.params['email'], request.params['password'], request.params['first_name'], request.params['last_name'], request.params['role'], request.params['phone_number'], request.params['host_site']) success = db.addUserModel(user) if success: self.send_signup_email(request.params['email'], request.params['password'], request.params['first_name'], request.params['last_name'], request.params['role'], request.params['phone_number'], request.params['host_site']) return self.trueString else: return "{\"success\":\"false\", \"message\":\"Unable to add user.\"}" else: # Delete request success = db.removeUser(request.params['id']) if success: return "{\"success\":\"true\", \"message\":\"Deleted new host site\"}" else: return "{\"success\":\"fasle\", \"message\":\"Unable to add new host site\"}" elif (request.method == "DELETE"): return "{\"success\":\"false\", \"message\":\"Unimplemented method\"}" else: return "{\"success\":\"false\",\"message\":\"Bad request method\"}"