trypost/app/Http/Controllers/App
Paulo Castellano 1c9ab462d0 feat(permissions): viewers review drafts in a read-only editor; lock /accounts to admins
Viewers are typically the client: they need to open a draft in the editor
to use the comments tab, but must not change anything.

- post editor (edit) now authorizes view, so viewers can open it; the
  composer + schedule tab render read-only and the comments tab stays
  interactive (defaults to the comments tab for viewers)
- all mutations stay member+ (update/delete) — the autosave/save/publish/
  schedule/delete affordances are hidden and the PUT is still 403 for
  viewers; SyncPostPlatforms only runs for users who can update
- drafts route to the editor for everyone again (reverts the read-only
  Show detour); Show stays the published-post view
- /accounts now authorizes manageAccounts (admin+), so viewers and members
  get 403; the Connections sidebar item is admin+ only and the connect/
  disconnect grid is reverted to main (no per-button gating needed)

Tests: draft→editor redirect for every member, viewer can open the editor,
viewer cannot save, and only admins+ can open /accounts.
2026-06-22 17:04:09 -03:00
..
Settings chore(settings): drop the language-changed flash banner 2026-06-22 12:32:11 -03:00
AnalyticsController.php fix(permissions): enforce workspace roles across backend and UI 2026-06-22 16:31:54 -03:00
ApiKeyController.php feat: migrate custom API token implementation to Laravel Passport for authentication and token management 2026-05-03 18:38:17 -03:00
AssetController.php refactor: centralize media size limits in config + drop Document type 2026-05-04 14:54:47 -03:00
AutomationController.php fix(permissions): enforce workspace roles across backend and UI 2026-06-22 16:31:54 -03:00
BillingController.php feat(billing): attach persona to conversion tracking and polish annual banner 2026-06-22 12:32:03 -03:00
Controller.php refactor: restructure to Actions, subdomain routes (app/api), API tokens 2026-03-29 19:24:28 -03:00
DiscordController.php feat(channels): add Discord as a social channel 2026-06-16 14:44:00 -03:00
GiphyController.php feat: complete AI assistant with custom services and brand config 2026-04-16 09:25:08 -03:00
NotificationController.php refactor: code review fixes — policies, enums, data_get, tests 2026-03-31 00:40:18 -03:00
OnboardingController.php feat(onboarding): require connecting a social network before checkout 2026-06-22 12:31:44 -03:00
PostAiCreateController.php feat(ai-templates): task 3 - template-driven generator + job 2026-06-17 17:23:33 -03:00
PostAiGenerateController.php refactor(posts): centralize post editing status checks with PostStatusGuard 2026-05-21 19:27:19 -03:00
PostAiRegenerateMediaController.php refactor(posts): replace PostStatusGuard with PostStatusRules for editing and deletion checks 2026-05-21 19:32:42 -03:00
PostAiReviewController.php refactor(posts): centralize post editing status checks with PostStatusGuard 2026-05-21 19:27:19 -03:00
PostCommentController.php feat: @mentions in comments, AI Action layer + MCP tools, settings tabs 2026-05-01 20:59:03 -03:00
PostController.php feat(permissions): viewers review drafts in a read-only editor; lock /accounts to admins 2026-06-22 17:04:09 -03:00
PostTemplateController.php refactor: drop RenderedSlide DTO and content_language null fallbacks 2026-05-08 19:32:51 -03:00
PresenceController.php feat: @mentions in comments, AI Action layer + MCP tools, settings tabs 2026-05-01 20:59:03 -03:00
UnsplashController.php feat: complete AI assistant with custom services and brand config 2026-04-16 09:25:08 -03:00
WorkspaceController.php feat(onboarding): require connecting a social network before checkout 2026-06-22 12:31:44 -03:00
WorkspaceInviteController.php fix(members): block self role-change/removal and lock role rules with tests 2026-06-22 14:41:11 -03:00
WorkspaceLabelController.php refactor: code review fixes — policies, enums, data_get, tests 2026-03-31 00:40:18 -03:00
WorkspaceSignatureController.php chore: remove deprecated localization files 2026-05-03 15:23:25 -03:00