def put(self): claims = get_jwt_claims() if not claims['is_super_admin']: return {'message': 'Super Admin privilege required.'}, 412 data = _user_role_parser.parse_args() for key in data.keys(): if str(data[key]).lower() in ('none', 'null', ''): data[key] = None try: role_name = data["role_name"] except Exception as e: return {"message": f"Role name required. {repr(e)}"} user_role = UserRoleModel.find_by_role_name(role_name)[0] if user_role: user_role.set_attribute(data) else: user_role = UserRoleModel(**data) user_role.save_to_db() return user_role.json(), 201
def post(self): claims = get_jwt_claims() if not claims['is_super_admin']: return {'message': 'Super Admin privilege required.'}, 412 data = _user_role_parser.parse_args() try: role_name = data["role_name"] except Exception as e: return {'message': f"Role name missing. {repr(e)}"} if UserRoleModel.find_by_role_name(role_name): return {'message': f"Role name already exists."}, 400 user_role = UserRoleModel(**data) try: user_role.save_to_db() except Exception as e: return { "message": f"An error occurred inserting the role. Error: {repr(e)}" }, 500 return user_role.json(), 201