89a076fb67
feat: migrate equipment features to gettext and fix sudo mode tests
...
Migrates all equipment-related flash messages to gettext for internationalization:
- DeviceLive.Index: device discovery, reordering, error messages
- DeviceLive.Show: backup messages, permission errors
- DeviceLive.Form: device CRUD operations
- AlertLive.Index: alert acknowledgment messages
- SiteLive.Show: site discovery messages
- SiteLive.Form: site CRUD and SNMP/agent propagation
Fixes sudo mode test suite issues:
- Updates Accounts.sudo_mode?/2 test to check last_sudo_at instead of authenticated_at
- Adds register_and_log_in_user_with_sudo/1 helper to ConnCase
- Fixes UserAuth sudo mode tests to use session-based authentication
- Updates MyData tests to use sudo mode (now required per router config)
- Removes obsolete UserSettingsLive "without sudo mode" test
- Fixes grant_sudo_mode/1 DateTime truncation to seconds
All equipment module tests passing. Ready for Phase 3 (Admin Features).
2026-02-02 12:41:58 -06:00
6c8e670dae
docs: add gettext internationalization design
...
- Add comprehensive i18n design document with domain-based organization
(default, errors, auth, equipment, admin, emails domains)
- Document helper functions, implementation patterns, and migration workflow
- Fix multiple test suite issues:
* user_settings_live_test.exs: Update all tests to match current UI structure
- Fix user.name references (use first_name/last_name)
- Fix TOTP device creation (use create_totp_device/2)
- Update tab URLs and form IDs
- Update tab names (Account, API, Notifications)
- Remove obsolete tabs (Organizations, Activity)
- Fix password tests (pattern match redirect without flash token)
- Update sudo mode behavior
* account_data_controller_test.exs: Fix user profile assertions
* rate_limit_test.exs: Fix unused variable warning
* settings_live_test.exs: Fix organization form validation test
2026-02-02 09:33:01 -06:00
7068ab2466
Convert User Settings from controller to LiveView
...
- Create UserSettingsLive to replace UserSettingsController
- Convert email/password forms to LiveView with proper form handling
- Add mobile session management (toggle alerts, revoke devices)
- Add require_sudo_mode on_mount hook to UserAuth
- Create dedicated live_session for sudo mode routes in router
- Keep UserSettingsController for email confirmation via token only
- Add MobileSessions.get_session/1 function for test support
- Update tests to match LiveView behavior (password update redirects to login)
- Remove old controller tests for email/password updates (now in LiveView)
2026-01-15 16:29:50 -06:00