towerops/lib/towerops_web
Graham McIntire fc66109f19
Add default organization feature
Features:
- Users can set a default organization in org settings
- First organization created is automatically set as default
- Default org selector only shown if user has 2+ organizations
- Migration auto-sets first org as default for existing users

Database changes:
- Added is_default boolean field to organization_memberships
- Added partial index for efficient default org lookups
- Migration sets oldest org as default for each existing user

UI changes:
- Organization settings page shows default org toggle
- Green badge displayed when org is already default
- Button to set org as default if it's not current default

Backend:
- Organizations.set_default_organization/2 manages defaults
- Organizations.get_default_membership/1 retrieves default
- Auto-set first org as default in create_organization/3
2026-02-04 16:09:43 -06:00
..
channels make sites optional 2026-02-04 13:05:32 -06:00
components make sites optional 2026-02-04 13:05:32 -06:00
controllers API: Default organization_id to authenticated org when empty 2026-02-04 16:03:20 -06:00
helpers Mikrotik backup and gettext start 2026-02-02 09:11:22 -06:00
live Add default organization feature 2026-02-04 16:09:43 -06:00
plugs snmp v3 support 2026-02-04 12:02:38 -06:00
endpoint.ex Move CaptureTimezone plug to browser pipeline 2026-02-01 11:15:51 -06:00
gettext.ex init 2025-12-21 11:10:43 -06:00
gettext_helpers.ex feat: migrate email templates to gettext (Phase 2 - Emails) 2026-02-02 09:48:30 -06:00
permissions.ex handle mikrotik ssh 2026-02-02 16:42:18 -06:00
plug_exceptions.ex handle exceptions gracefully on api endpoints 2026-02-04 12:18:14 -06:00
router.ex Mikrotik backup and gettext start 2026-02-02 09:11:22 -06:00
telemetry.ex fix: add Oban config to dev.exs and replace Exq telemetry with Oban 2026-01-24 16:39:45 -06:00
user_auth.ex feat: migrate all remaining authentication and session flash messages to gettext 2026-02-02 13:02:44 -06:00