Index: chapterx-frontend/src/store/authStore.ts
===================================================================
--- chapterx-frontend/src/store/authStore.ts	(revision 7fbb91c66b46c3063caa934a83d6d0681406c83c)
+++ chapterx-frontend/src/store/authStore.ts	(revision 0b502c2664f4d6c64626f3394b4f1dc540e0aa9b)
@@ -18,4 +18,5 @@
   setShowMatureContent: (show: boolean) => void
   updateUserRole: (userId: number, role: UserRole) => void
+  updateUser: (userId: number, data: { username: string; email: string; name: string; surname: string }) => Promise<void>
   addUser: (user: User) => void
   fetchAllUsers: () => Promise<void>
@@ -66,5 +67,5 @@
         )
         if (!user) throw new Error('User not found. Try using a quick-login option.')
-        set({ currentUser: user, token: 'mock-token' })
+        set({ currentUser: user, token: null })
       },
 
@@ -110,5 +111,5 @@
           allUsers: [...state.allUsers, newUser],
           currentUser: newUser,
-          token: 'mock-token',
+          token: null,
         }))
       },
@@ -120,5 +121,5 @@
         }
         const user = get().allUsers.find(u => u.user_id === userId)
-        if (user) set({ currentUser: user, token: 'mock-token' })
+        if (user) set({ currentUser: user, token: null })
       },
 
@@ -133,4 +134,15 @@
               : state.currentUser,
         })),
+
+      updateUser: async (userId, data) => {
+        const { token } = get()
+        await axios.put(`${API_BASE}/users/${userId}`, { id: userId, ...data }, {
+          headers: token ? { Authorization: `Bearer ${token}` } : {},
+        })
+        set(state => ({
+          allUsers: state.allUsers.map(u => u.user_id === userId ? { ...u, ...data } : u),
+          currentUser: state.currentUser?.user_id === userId ? { ...state.currentUser, ...data } : state.currentUser,
+        }))
+      },
 
       addUser: (user: User) =>
Index: chapterx-frontend/src/store/storyStore.ts
===================================================================
--- chapterx-frontend/src/store/storyStore.ts	(revision 7fbb91c66b46c3063caa934a83d6d0681406c83c)
+++ chapterx-frontend/src/store/storyStore.ts	(revision 0b502c2664f4d6c64626f3394b4f1dc540e0aa9b)
@@ -49,5 +49,6 @@
   try {
     const token = JSON.parse(localStorage.getItem('chapterx-auth') || '{}')?.state?.token
-    return token ? { Authorization: `Bearer ${token}` } : {}
+    if (!token || token === 'mock-token') return {}
+    return { Authorization: `Bearer ${token}` }
   } catch {
     return {}
@@ -145,8 +146,8 @@
         created_at: s.createdAt,
         updated_at: s.updatedAt,
-        total_likes: 0,
-        total_comments: 0,
-        total_chapters: 0,
-        total_views: 0,
+        total_likes: s.likes?.length ?? 0,
+        total_comments: s.comments?.length ?? 0,
+        total_chapters: s.chapters?.length ?? 0,
+        total_views: s.chapters?.reduce((sum: number, c: any) => sum + (c.viewCount ?? 0), 0) ?? 0,
         genres: (s.hasGenres ?? []).map((hg: any) => hg.genre?.name ?? hg.name).filter(Boolean),
       }))
