Source snapshot: 13 October 2026. These pages describe the current implementation, including unfinished controls. See coverage and review notes.
- English
- മലയാളം
Announcements
Host:admin.<ROOT_DOMAIN> · Route: /[tenant]/announcementsPurpose and access
Maintain announcements for this Mahallu.You need an account session and a resolved membership context in the selected Mahallu (including the API’s current platform elevation path). The API independently checks the requested operation’s permissions and feature availability.Screen layout
Post an announcement form with title, body, audience, and conditional division selector; then Title/Status/Audience table and pagination.Fields and displayed information
Fields and filters: Page
Actions
Interaction sequence
Fill the creation form → submit → refresh the list. Use the row removal control and confirm before deletion. Navigate pages through the page query parameter; events link to their detail screen.States and rules
The route loads 20 records per page and provides permission and empty states. Title and Body are required. Creation sends publish=true. Audience choices are Everyone, Committee only, and One division; One division reveals the division selector.The rendered action controls bind loading indicators to pending state. Failed API saves keep their documented error/notification path; a loading indicator alone does not establish persistence.Implementation references
Paths below are relative to the application repository. This is source-reviewed behavior, not a recorded browser test.apps/web/src/app/sites/admin/[tenant]/announcements/page.tsxapps/web/src/features/tenants/simple-create-form.tsxapps/web/src/features/tenants/simple-resource-table.tsx
apps/web/src/lib/session.ts, apps/web/src/lib/server-api.ts, apps/web/src/lib/tenants.ts, apps/web/src/lib/business-resources.ts, apps/web/src/lib/structure.ts, apps/web/src/lib/api-client.tsRelevant controller permission keys: announcements.view, announcements.create, announcements.update, announcements.delete. Keys are operation-specific; the current guard grants OWNER/ADMIN and its platform-elevation context an operational bypass. A visible control still does not establish authorization.API behavior references
apps/api/src/announcements/announcements.controller.ts