Index: src/routes/lang.js
===================================================================
--- src/routes/lang.js	(revision 03fa5481c4f9961f422ed9a06824e8944fb868bf)
+++ src/routes/lang.js	(revision 5e61b173e0211ca213200be10da0a4230dcc31cf)
@@ -3,4 +3,5 @@
 import express from 'express';
 import { SUPPORTED } from '../services/i18n.js';
+import db from '../config/database.js';
 
 const router = express.Router();
@@ -9,4 +10,12 @@
   const code = SUPPORTED.includes(req.params.code) ? req.params.code : 'nl';
   if (req.session) req.session.lang = code;
+  // Ingelogd? Bewaar de keuze ook op het account zodat 'ie meereist over
+  // apparaten/sessies (niet alleen deze sessie-cookie).
+  if (req.session && req.session.user && req.session.user.id) {
+    try {
+      db.prepare('UPDATE users SET lang = ?, updated_at = CURRENT_TIMESTAMP WHERE id = ?').run(code, req.session.user.id);
+      req.session.user.lang = code;
+    } catch { /* lang-kolom ontbreekt op een oude DB → sessie-only, geen breuk */ }
+  }
   // Veilige terug-URL: alleen een intern pad (geen open redirect).
   let back = (typeof req.query.r === 'string') ? req.query.r : '';
