listmonk/internal/core
Kailash Nadh a271bf54d5 Introduce per-campaign filter permissions. Closes #2325.
This patch introduces new `campaigns:get_all` and `campaigns:manage_all`
permissions which alter the behaviour of the the old `campaigns:get` and
`campaigns:manage` permissions. This is a subtle breaking behavioural change.

Old:

- `campaigns:get` -> View all campaigns irrespective of a user's list
  permissions.
- `campaigns:manage` -> Manage all campaigns irrespective of a user's list
  permissions.

New:

- `campaigns:get_all` -> View all campaigns irrespective of a user's list
  permissions.
- `campaigns:manage_all` -> Manage all campaigns irrespective of a user's list
  permissions.
- `campaigns:get` -> View only the campaigns that have at least one list to
  which which a user has get or manage access.
- `campaigns:manage` -> Manage only the campaigns that have at list one list
  to which a user has get or manage access.

In addition, this patch refactors and cleans up certain permission related
logic and functions.
2025-03-31 16:39:42 +05:30
..
bounces.go Fix typo and formatting (#2028) 2024-08-30 13:24:45 +05:30
campaigns.go Introduce per-campaign filter permissions. Closes #2325. 2025-03-31 16:39:42 +05:30
core.go Remove forcing unique filename on all media uploads. 2025-03-29 15:21:32 +05:30
dashboard.go Add support for caching slow queries on large databases. 2024-01-27 15:51:12 +05:30
lists.go Disallow private list UUIDs on public sub endpoints. Closes #2296. 2025-03-12 22:00:35 +05:30
media.go Remove forcing unique filename on all media uploads. 2025-03-29 15:21:32 +05:30
roles.go Add support for "list roles". 2024-10-13 17:03:58 +05:30
settings.go Refactore all CRUD functions to a new core package. 2022-05-03 10:50:29 +05:30
subscribers.go Fix GET subscribers not filtering by list permissions. Closes #2129. 2024-11-12 22:59:33 +05:30
subscriptions.go Fix incorrect bulk blocklisting behaviour (#2041). Fixes #1841 2024-09-19 10:56:56 +05:30
templates.go Disable template type updation after creation to prevent breaking of campaign relations. 2022-07-09 10:36:12 +05:30
users.go Introduce per-campaign filter permissions. Closes #2325. 2025-03-31 16:39:42 +05:30