47 lines
1.7 KiB
Markdown
47 lines
1.7 KiB
Markdown
# Task: Organization settings editing
|
|
|
|
## Feature
|
|
|
|
`docs/FEATURES/organizations.md`
|
|
|
|
## Goal
|
|
|
|
Allow permitted organization users to edit the organization name and add organization members from the settings page.
|
|
|
|
## Scope
|
|
|
|
- Add an API endpoint to update organization profile settings.
|
|
- Add an API endpoint to add an existing user as an organization member by email and role.
|
|
- Add organization logo storage and an API endpoint to upload a cropped organization logo.
|
|
- Replace the organization Workspaces settings tab with a Usage tab.
|
|
- Wire the organization settings profile section to save the organization name.
|
|
- Wire the organization settings profile section to change the organization logo.
|
|
- Show current organization usage against preview plan limits.
|
|
- Wire the organization settings members section to add members.
|
|
- Add English and French UI strings.
|
|
|
|
## Constraints
|
|
|
|
- Do not implement email delivery or pending organization invitation tokens in this task.
|
|
- Do not change workspace invite behavior.
|
|
- Keep organization code under `backend/src/Socialize.Api/Modules/Organizations`.
|
|
- Keep frontend organization code under `frontend/src/features/organizations`.
|
|
|
|
## Done When
|
|
|
|
- [x] Users with `ManageOrganizationSettings` can update the organization name.
|
|
- [x] Users with `ManageOrganizationSettings` can update the organization logo.
|
|
- [x] Organization settings show Usage instead of Workspaces.
|
|
- [x] Users with `ManageOrganizationMembers` can add an existing user as an organization member.
|
|
- [x] Duplicate organization memberships are rejected.
|
|
- [x] Frontend build passes.
|
|
- [x] Backend build passes.
|
|
|
|
## Validation Commands
|
|
|
|
```bash
|
|
dotnet build backend/Socialize.slnx
|
|
cd frontend
|
|
npm run build
|
|
```
|