diff --git a/frontend/js/textbook-tracker.js b/frontend/js/textbook-tracker.js index a144bdb..134ee9f 100644 --- a/frontend/js/textbook-tracker.js +++ b/frontend/js/textbook-tracker.js @@ -455,8 +455,18 @@ function handleHashNav() { const m = (location.hash || '').match(/^#(p\d+)$/); if (m) { - openParaByKey(m[1]); - setLastPara(m[1]); + const key = m[1]; + openParaByKey(key); + localState.last = key; + if (!localState.read.includes(key)) { + localState.read.push(key); + refreshPillUI(key); + refreshCheckUI(key); + } + persist(); + // Hash-вход (например, «Продолжить» из каталога) считается просмотром + // параграфа — шлём last_para + mark_read одним POST. + syncToServer({ mark_read: key }); return true; } return false;