forked from baron/baron-sso
fix: clear stale auth flags and improve user name fallback logic (#637)
- Clear AuthTokenStore in _silentSessionRecovery when session is invalid (Case 2) - Use .trim().isNotEmpty for userName fallback to handle empty strings (Case 1)
This commit is contained in:
@@ -846,11 +846,13 @@ class _DashboardScreenState extends ConsumerState<DashboardScreen> {
|
||||
final profileState = ref.watch(profileProvider);
|
||||
final profile = profileState.value;
|
||||
final timelineState = ref.watch(authTimelineProvider);
|
||||
final userName =
|
||||
profile?.name ??
|
||||
profile?.email ??
|
||||
profile?.phone ??
|
||||
tr('ui.userfront.profile.user_fallback', fallback: 'User');
|
||||
final userName = (profile?.name.trim().isNotEmpty ?? false)
|
||||
? profile!.name
|
||||
: (profile?.email.trim().isNotEmpty ?? false)
|
||||
? profile!.email
|
||||
: (profile?.phone.trim().isNotEmpty ?? false)
|
||||
? profile!.phone
|
||||
: tr('ui.userfront.profile.user_fallback', fallback: 'User');
|
||||
final departmentValue =
|
||||
profile?.tenant?.name ?? profile?.department ?? '';
|
||||
final department = departmentValue.isNotEmpty
|
||||
|
||||
@@ -104,11 +104,13 @@ Future<void> _silentSessionRecovery() async {
|
||||
_log.info("[SessionRecovery] Recovery complete. Subject: $subject");
|
||||
} else {
|
||||
_log.warning("[SessionRecovery] Session found but subject is empty.");
|
||||
AuthTokenStore.clear();
|
||||
}
|
||||
} catch (e) {
|
||||
_log.info(
|
||||
"[SessionRecovery] No valid cookie session found or request failed: $e",
|
||||
);
|
||||
AuthTokenStore.clear();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user