feat(catalog): авто-mark-as-read + Физика 8 как полноценный хаб
A. textbook-tracker.js: первый клик по .para-pill теперь автоматически
помечает параграф как прочитанный. «Прочитано» = «открыто». Сразу
даёт осмысленный счётчик для chemistry-9 и physics-9 в каталоге.
Slug fallback: physics8_* → physics-8-* (корректный слаг).
B. Физика 8 — миграция 015:
- 3 children: physics-8-thermal / electro / optics с parent_slug
- parent физики-8 обновлён: para_count=40, описание трёх разделов
- sub-файлы получили textbook-tracker.js + правильный слаг
- physics_8.html переписана в стиле algebra_8_hub: 3 цветные
карточки, агрегированный прогресс, ачивка «Эксперт физики 8»
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
-- Physics 8 hub migration.
|
||||
-- Converts physics-8 from a monolithic entry into a hub with 3 children,
|
||||
-- mirroring the algebra-8 hub pattern established in migration 014.
|
||||
|
||||
-- 1. Insert 3 child rows for the sub-textbooks.
|
||||
INSERT OR IGNORE INTO textbooks
|
||||
(slug, subject, grade, title, author, description, html_path, para_count, color, sort_order, is_active, parent_slug)
|
||||
VALUES
|
||||
('physics-8-thermal', 'physics', 8, 'Физика 8 · Тепловые явления',
|
||||
'',
|
||||
'Внутренняя энергия, теплопередача, удельная теплоёмкость, фазовые переходы, тепловые двигатели.',
|
||||
'physics8_thermal.html', 11, 'orange', 1, 1, 'physics-8'),
|
||||
('physics-8-electro', 'physics', 8, 'Физика 8 · Электрические явления',
|
||||
'',
|
||||
'Электростатика, закон Кулона, электрический ток, закон Ома, электрические цепи.',
|
||||
'physics8_electro.html', 20, 'blue', 2, 1, 'physics-8'),
|
||||
('physics-8-optics', 'physics', 8, 'Физика 8 · Световые явления',
|
||||
'',
|
||||
'Источники света, отражение, преломление, линзы, оптические приборы.',
|
||||
'physics8_optics.html', 9, 'purple', 3, 1, 'physics-8');
|
||||
|
||||
-- 2. Update the parent physics-8 row: clear author, set para_count=40, update description.
|
||||
UPDATE textbooks
|
||||
SET
|
||||
author = '',
|
||||
para_count = 40,
|
||||
html_path = 'physics_8.html',
|
||||
description = 'Полный курс физики 8 класса в трёх разделах: тепловые явления (§1–§11), электрические явления (§12–§31), световые явления (§32–§40).'
|
||||
WHERE slug = 'physics-8';
|
||||
Reference in New Issue
Block a user