def post(self):
     data = parse.parse_args()
     data['firstname'] = html.escape(data['firstname'])
     data['lastname'] = html.escape(data['lastname'])
     v = validate_new_email(data['email'])
     if not v[0]:
         return {'message': v[1]}, 400
     new_user = UserDetails(
         first_name=data['firstname'],
         last_name=data['lastname'],
         email=data['email'],
         password=UserDetails.generate_hash(data['password'], ),
         user_type_id=1,
         cash=1000
     )
     try:
         new_user.save_to_db()
         access_token = create_access_token(identity=(new_user.email, new_user.user_id))
         refresh_token = create_refresh_token(identity=(new_user.email, new_user.user_id))
         return {
             'message': 'Success',
             'access_token': access_token,
             'refresh_token': refresh_token
         }
     except:
         e = sys.exc_info()[0]
         print(f'Error : {e}')
         return {'message': 'Something went wrong'}, 500
 def post(self):
     data = parse.parse_args()
     data['username'] = html.escape(data['username'])
     data['firstname'] = html.escape(data['firstname'])
     data['lastname'] = html.escape(data['lastname'])
     v = validate_new_email(data['email'])
     if not v[0]:
         return {'message': v[1]}, 400
     v = validate_new_user(data['username'])
     if not v[0]:
         return {'message': v[1]}, 400
     new_user = UserDetails(user_name=data['username'],
                            first_name=data['firstname'],
                            last_name=data['lastname'],
                            email=data['email'],
                            password=UserDetails.generate_hash(
                                data['password'], ))
     try:
         new_user.save_to_db()
         playlist = Playlist(user_id=new_user.user_id, name='Yêu thích')
         playlist.save_to_db()
         expires = datetime.timedelta(days=365)
         access_token = create_access_token(identity=(new_user.user_name,
                                                      new_user.user_id),
                                            expires_delta=expires)
         refresh_token = create_refresh_token(identity=(new_user.user_name,
                                                        new_user.user_id))
         return {
             'message': 'Success',
             'access_token': access_token,
             'refresh_token': refresh_token
         }
     except:
         e = sys.exc_info()[0]
         print(f'Error : {e}')
         return {'message': 'Something went wrong'}, 500