diff --git a/docs/customization.qmd b/docs/customization.qmd index 78c21e0..92bb267 100644 --- a/docs/customization.qmd +++ b/docs/customization.qmd @@ -258,7 +258,7 @@ organization = session.exec(select(Organization).where(Organization.name == "Acm user.has_permission(permission, organization) ``` -You should create custom `AppPermissions` enum values for your application in `utils/app/` (if needed) and validate that users have the necessary permissions before allowing them to modify organization data resources. +You can add custom permission enum values to the `ValidPermissions` enum in `utils/core/enums.py` (below the core permissions section) and validate that users have the necessary permissions before allowing them to modify organization data resources. ### Cascade deletes diff --git a/utils/app/enums.py b/utils/app/enums.py deleted file mode 100644 index f7cbdad..0000000 --- a/utils/app/enums.py +++ /dev/null @@ -1,5 +0,0 @@ -from enum import Enum - - -class AppPermissions(Enum): - pass diff --git a/utils/core/enums.py b/utils/core/enums.py index ffc4277..c9bd30d 100644 --- a/utils/core/enums.py +++ b/utils/core/enums.py @@ -1,6 +1,10 @@ -from utils.app.enums import AppPermissions +from enum import Enum -class ValidPermissions(AppPermissions): + +class ValidPermissions(Enum): + """ + Core permissions - do not modify these: + """ DELETE_ORGANIZATION = "Delete Organization" EDIT_ORGANIZATION = "Edit Organization" INVITE_USER = "Invite User" @@ -8,4 +12,9 @@ class ValidPermissions(AppPermissions): EDIT_USER_ROLE = "Edit User Role" CREATE_ROLE = "Create Role" DELETE_ROLE = "Delete Role" - EDIT_ROLE = "Edit Role" \ No newline at end of file + EDIT_ROLE = "Edit Role" + + # Add additional app-specific permissions below this line: + READ_ORGANIZATION_RESOURCES = "Read Organization Resources" + WRITE_ORGANIZATION_RESOURCES = "Write Organization Resources" + DELETE_ORGANIZATION_RESOURCES = "Delete Organization Resources" \ No newline at end of file