feat(auth): add 2FA with OTP, backup codes and trusted devices
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -431,7 +431,10 @@ const handleLogout = async () => {
|
||||
|
||||
// Handle server switch completed - reload data for new server
|
||||
const handleServerSwitched = async (newServerId) => {
|
||||
// Server switch already completed in MobileDrawerMenu modal
|
||||
// Clear selected company and period FIRST to prevent stale data from old server
|
||||
companyStore.clearSelectedCompany();
|
||||
periodStore.reset();
|
||||
|
||||
// Reload data for the new server
|
||||
await companyStore.loadCompanies();
|
||||
if (companyStore.selectedCompany?.id_firma) {
|
||||
|
||||
@@ -428,7 +428,10 @@ const handleLogout = async () => {
|
||||
|
||||
// Handle server switched event from drawer menu
|
||||
const handleServerSwitched = async (newServerId) => {
|
||||
// Server switch already completed in MobileDrawerMenu modal
|
||||
// Clear selected company and period FIRST to prevent stale data from old server
|
||||
companyStore.clearSelectedCompany();
|
||||
periodStore.reset();
|
||||
|
||||
// Reload data for the new server
|
||||
await companyStore.loadCompanies();
|
||||
if (companyStore.selectedCompany?.id_firma) {
|
||||
|
||||
@@ -428,7 +428,10 @@ const handleLogout = async () => {
|
||||
|
||||
// Handle server switched event from drawer menu
|
||||
const handleServerSwitched = async (newServerId) => {
|
||||
// Server switch already completed in MobileDrawerMenu modal
|
||||
// Clear selected company and period FIRST to prevent stale data from old server
|
||||
companyStore.clearSelectedCompany();
|
||||
periodStore.reset();
|
||||
|
||||
// Reload data for the new server
|
||||
await companyStore.loadCompanies();
|
||||
if (companyStore.selectedCompany?.id_firma) {
|
||||
|
||||
@@ -791,7 +791,10 @@ const handleLogout = async () => {
|
||||
|
||||
// Handle server switched from drawer menu (password already verified in modal)
|
||||
const handleServerSwitched = async (newServerId) => {
|
||||
// Server switch already completed in MobileDrawerMenu modal
|
||||
// Clear selected company and period FIRST to prevent stale data from old server
|
||||
companyStore.clearSelectedCompany();
|
||||
periodStore.reset();
|
||||
|
||||
// Reload companies and periods for the new server
|
||||
await companyStore.loadCompanies();
|
||||
if (companyStore.selectedCompany?.id_firma) {
|
||||
|
||||
@@ -768,7 +768,10 @@ const handleLogout = async () => {
|
||||
|
||||
// Handle server switch completed - reload data for new server
|
||||
const handleServerSwitched = async (newServerId) => {
|
||||
// Server switch already completed in MobileDrawerMenu modal
|
||||
// Clear selected company and period FIRST to prevent stale data from old server
|
||||
companyStore.clearSelectedCompany()
|
||||
periodStore.reset()
|
||||
|
||||
// Reload data for the new server
|
||||
await companyStore.loadCompanies()
|
||||
if (companyStore.selectedCompany?.id_firma) {
|
||||
|
||||
@@ -442,7 +442,10 @@ const handleLogout = async () => {
|
||||
|
||||
// Handle server switched event from drawer menu
|
||||
const handleServerSwitched = async (newServerId) => {
|
||||
// Server switch already completed in MobileDrawerMenu modal
|
||||
// Clear selected company and period FIRST to prevent stale data from old server
|
||||
companyStore.clearSelectedCompany();
|
||||
periodStore.reset();
|
||||
|
||||
// Reload data for the new server
|
||||
await companyStore.loadCompanies();
|
||||
if (companyStore.selectedCompany?.id_firma) {
|
||||
|
||||
@@ -172,7 +172,10 @@ const handleLogout = async () => {
|
||||
|
||||
// Handle server switch completed - reload data for new server
|
||||
const handleServerSwitched = async (newServerId) => {
|
||||
// Server switch already completed in MobileDrawerMenu modal
|
||||
// Clear selected company and period FIRST to prevent stale data from old server
|
||||
companyStore.clearSelectedCompany()
|
||||
periodStore.reset()
|
||||
|
||||
// Reload data for the new server
|
||||
await companyStore.loadCompanies()
|
||||
if (companyStore.selectedCompany?.id_firma) {
|
||||
|
||||
@@ -92,10 +92,12 @@ import { useRouter } from 'vue-router'
|
||||
import MobileTopBar from '@shared/components/mobile/MobileTopBar.vue'
|
||||
import MobileBottomNav from '@shared/components/mobile/MobileBottomNav.vue'
|
||||
import MobileDrawerMenu from '@shared/components/mobile/MobileDrawerMenu.vue'
|
||||
import { useAuthStore } from '@reports/stores/sharedStores'
|
||||
import { useAuthStore, useCompanyStore, useAccountingPeriodStore } from '@reports/stores/sharedStores'
|
||||
|
||||
const router = useRouter()
|
||||
const authStore = useAuthStore()
|
||||
const companyStore = useCompanyStore()
|
||||
const periodStore = useAccountingPeriodStore()
|
||||
|
||||
// State
|
||||
const showDrawer = ref(false)
|
||||
@@ -117,8 +119,9 @@ const handleLogout = async () => {
|
||||
|
||||
// Handle server switch completed
|
||||
const handleServerSwitched = async (newServerId) => {
|
||||
// Server switch already completed in MobileDrawerMenu modal
|
||||
// SettingsHubView doesn't need to reload data - it's just a navigation hub
|
||||
// Clear selected company and period FIRST to prevent stale data from old server
|
||||
companyStore.clearSelectedCompany()
|
||||
periodStore.reset()
|
||||
}
|
||||
|
||||
// US-307: Removed custom mobileNavItems - using MobileBottomNav defaults
|
||||
|
||||
@@ -409,7 +409,10 @@ const handleLogout = async () => {
|
||||
|
||||
// Handle server switch completed - reload data for new server
|
||||
const handleServerSwitched = async (newServerId) => {
|
||||
// Server switch already completed in MobileDrawerMenu modal
|
||||
// Clear selected company and period FIRST to prevent stale data from old server
|
||||
companyStore.clearSelectedCompany();
|
||||
periodStore.reset();
|
||||
|
||||
// Reload data for the new server
|
||||
await companyStore.loadCompanies();
|
||||
if (companyStore.selectedCompany?.id_firma) {
|
||||
|
||||
Reference in New Issue
Block a user