def file_upload(self, file, file_description, auth_token): user_id = InputValidator.check_session_value('user_id') if not InputValidator.file_validator(file): ResponseHandler.bad_request_response( 'You didnt submit a valid file') return cherrypy.HTTPRedirect('/') if AuthHandler.check_for_auth( user_id) and AuthHandler.check_auth_token(auth_token): user_id = str(user_id) FileHandler.write_file(user_id, file, file_description) raise cherrypy.HTTPRedirect('/') else: ResponseHandler.unauthorized_response('You are unauthorized') raise cherrypy.HTTPRedirect('/sign')
def login_account(self, email, password): if InputValidator.email_validator(email): user_id = DBusers.get_user_id(email)[0] if len(user_id) > 0: user = DBusers.check_user(email, password) return LoginHandler.prepare_login(user, str(user_id['id']), email) else: return ResponseHandler.forbidden_response('Not authorized') else: return ResponseHandler.bad_request_response( 'Not a valid email address')
def caesar_cipher(self, message, shift, option, auth_token): user_id = InputValidator.check_session_value('user_id') if not InputValidator.int_validator(int(shift)): return ResponseHandler.bad_request_response( 'Your Shift value has to be an int') if AuthHandler.check_for_auth( user_id) and AuthHandler.check_auth_token(auth_token): return ResponseHandler.success_response( CaesarCipher(int(shift)).cipher(message, option)) else: return ResponseHandler.unauthorized_response( 'You are unauthorized')
def request_password_reset(self, email): if InputValidator.email_validator(email): user_id = DBusers.get_user_id(email)[0]['id'] if user_id: return ResponseHandler.success_response( LoginHandler.send_reset_token(user_id, email)) else: return ResponseHandler.unauthorized_response( 'You are unauthorized') else: return ResponseHandler.bad_request_response( 'Not a valid email address')
def password_reset(self, token, email): if InputValidator.email_validator(email): user_id = DBusers.get_user_id(email)[0]['id'] if user_id: if HashHandler.check_token(user_id, token, 2): return ResponseHandler.success_response('Correct token') else: return ResponseHandler.forbidden_response('Wrong token') else: return ResponseHandler.unauthorized_response( 'You are unauthorized') else: return ResponseHandler.bad_request_response( 'Not a valid email address')
def new_password(self, password, token, email): if InputValidator.email_validator(email): user_id = DBusers.get_user_id(email)[0]['id'] if user_id: if HashHandler.check_token(user_id, token, 2): if len(DBusers.check_user(email, password)) == 0: DBtokens.delete(user_id, 2) return ResponseHandler.success_response( DBusers.update_password(user_id, password)) else: return ResponseHandler.forbidden_response( 'Do not use your old password!') else: return ResponseHandler.forbidden_response('Wrong token') else: return ResponseHandler.unauthorized_response( 'You are unauthorized') else: return ResponseHandler.bad_request_response( 'Not a valid email address')