feat(admin): surface classroom feature toggle in tab-games
The feature_classroom_enabled flag was fully wired in backend
(classroom/sessions.js:11-14 returns 403 when '0', initialized in
legacy-migrate.js:870 to '1') but had no UI control — admin could
only flip it via direct SQL.
- adminController.updateFeatures: classroom was ALREADY in allowed list
- admin/sections/games.js: new toggle row with video icon added to GAME_FEATURES
- js/api.js hideDisabledFeatures: classroom path mapping added ('/classroom')
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -15,6 +15,7 @@
|
|||||||
{ key: 'board', label: 'Доска', desc: 'Классная доска с объявлениями, постами и обсуждениями', icon: 'layout-dashboard'},
|
{ key: 'board', label: 'Доска', desc: 'Классная доска с объявлениями, постами и обсуждениями', icon: 'layout-dashboard'},
|
||||||
{ key: 'biochem', label: 'Биохимия', desc: 'Молекулярный редактор, задачи на построение молекул и реакции', icon: 'flask-conical' },
|
{ key: 'biochem', label: 'Биохимия', desc: 'Молекулярный редактор, задачи на построение молекул и реакции', icon: 'flask-conical' },
|
||||||
{ key: 'live_quiz', label: 'Живая викторина', desc: 'Синхронная викторина в реальном времени для всего класса', icon: 'radio' },
|
{ key: 'live_quiz', label: 'Живая викторина', desc: 'Синхронная викторина в реальном времени для всего класса', icon: 'radio' },
|
||||||
|
{ key: 'classroom', label: 'Онлайн-уроки (classroom)', desc: 'Синхронные онлайн-уроки с доской и видео', icon: 'video' },
|
||||||
];
|
];
|
||||||
|
|
||||||
const FS_FEATURES = [
|
const FS_FEATURES = [
|
||||||
|
|||||||
@@ -801,6 +801,7 @@ async function hideDisabledFeatures() {
|
|||||||
board: ['/board'],
|
board: ['/board'],
|
||||||
biochem: ['/biochem', '/biochem-library', '/biochem-reactions'],
|
biochem: ['/biochem', '/biochem-library', '/biochem-reactions'],
|
||||||
live_quiz: ['/live-quiz'],
|
live_quiz: ['/live-quiz'],
|
||||||
|
classroom: ['/classroom'],
|
||||||
exam9: ['/exam9', '/exam9.html'],
|
exam9: ['/exam9', '/exam9.html'],
|
||||||
textbooks: ['/textbooks', '/textbooks.html', '/textbook'],
|
textbooks: ['/textbooks', '/textbooks.html', '/textbook'],
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user