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) }