From cd61fe4766f4aafa1939aea1f516e87ea8c34856 Mon Sep 17 00:00:00 2001 From: poignatov Date: Mon, 19 Jan 2026 22:02:00 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=BF=D0=B5=D1=80=D0=B5=D0=B4=D0=B0=D1=87?= =?UTF-8?q?=D0=B0=20maxCards=20=D0=B2=20=D1=82=D0=B5=D1=81=D1=82=D0=B0?= =?UTF-8?q?=D1=85,=20=D0=B2=D0=B5=D1=80=D1=81=D0=B8=D1=8F=203.14.9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- VERSION | 2 +- play-life-web/package.json | 2 +- play-life-web/src/components/TaskList.jsx | 24 ++++++++++++++++++++--- 3 files changed, 23 insertions(+), 5 deletions(-) diff --git a/VERSION b/VERSION index 9b8fe2f..70c445e 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -3.14.8 +3.14.9 diff --git a/play-life-web/package.json b/play-life-web/package.json index 4e6bc57..705f4ca 100644 --- a/play-life-web/package.json +++ b/play-life-web/package.json @@ -1,6 +1,6 @@ { "name": "play-life-web", - "version": "3.14.8", + "version": "3.14.9", "type": "module", "scripts": { "dev": "vite", diff --git a/play-life-web/src/components/TaskList.jsx b/play-life-web/src/components/TaskList.jsx index ebbd147..a64aff1 100644 --- a/play-life-web/src/components/TaskList.jsx +++ b/play-life-web/src/components/TaskList.jsx @@ -36,16 +36,34 @@ function TaskList({ onNavigate, data, loading, backgroundLoading, error, onRetry const handleCheckmarkClick = async (task, e) => { e.stopPropagation() - + // Для задач-тестов запускаем тест вместо открытия модального окна const isTest = task.config_id != null if (isTest) { if (task.config_id) { - onNavigate?.('test', { configId: task.config_id, taskId: task.id }) + try { + // Загружаем детальную информацию о задаче, чтобы получить maxCards + const response = await authFetch(`${API_URL}/${task.id}`) + if (!response.ok) { + throw new Error('Ошибка при загрузке деталей задачи') + } + const taskDetail = await response.json() + + // Переходим к тесту с maxCards + onNavigate?.('test', { + configId: task.config_id, + taskId: task.id, + maxCards: taskDetail.max_cards + }) + } catch (err) { + console.error('Failed to load task details:', err) + // В случае ошибки всё равно переходим к тесту, но без maxCards + onNavigate?.('test', { configId: task.config_id, taskId: task.id }) + } } return } - + // Для обычных задач открываем диалог подтверждения setSelectedTaskForDetail(task.id) }