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) =>
