From 934b84f027514354807da524885c8b758e96997e Mon Sep 17 00:00:00 2001 From: denis0001-dev Date: Sat, 13 Sep 2025 20:21:23 +0300 Subject: [PATCH] Fix user restore logic --- backend/routes/account.py | 1 - frontend/src/ui/state.ts | 11 +++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/backend/routes/account.py b/backend/routes/account.py index 037873e..2d12a0f 100644 --- a/backend/routes/account.py +++ b/backend/routes/account.py @@ -121,7 +121,6 @@ def register(request: RegisterRequest, db: Session = Depends(get_db)): "message": "Регистрация прошла успешно Теперь вы можете войти." } - @router.get("/crypto/public-key") def get_public_key(current_user: User = Depends(get_current_user), db: Session = Depends(get_db)): row = db.query(CryptoPublicKey).filter(CryptoPublicKey.user_id == current_user.id).first() diff --git a/frontend/src/ui/state.ts b/frontend/src/ui/state.ts index e5665f3..3f1bada 100644 --- a/frontend/src/ui/state.ts +++ b/frontend/src/ui/state.ts @@ -4,6 +4,7 @@ import { request } from "../core/websocket"; import { MessagePanel } from "./panels/MessagePanel"; import { PublicChatPanel } from "./panels/PublicChatPanel"; import { DMPanel, type DMPanelData } from "./panels/DMPanel"; +import { getAuthHeaders } from "../auth/api"; type Page = "login" | "register" | "chat" export type ChatTabs = "chats" | "channels" | "contacts" | "dms" @@ -192,13 +193,15 @@ export const useAppState = create((set, get) => ({ currentPage: "login" })); }, - restoreUserFromStorage: () => { + restoreUserFromStorage: async () => { try { const token = localStorage.getItem('authToken'); - const userStr = localStorage.getItem('currentUser'); - if (token && userStr) { - const user = JSON.parse(userStr) as User; + if (token) { + const user: User = await (await fetch("/api/user/profile", { + headers: getAuthHeaders(token) + })).json(); + set(() => ({ user: { currentUser: user,