поправила страницу упражнения

This commit is contained in:
Tatyana 2025-08-28 12:19:48 +03:00
parent 26c2d5431e
commit a1d945b854
3 changed files with 31 additions and 31 deletions

View File

@ -9,6 +9,7 @@ import BottomNavigation from "../components/BottomNavigation";
import { connect } from '../confconnect';
import { getRouteExercise } from "../shared/consts/router";
import { ArrowIcon } from "../components/icons/ArrowIcon";
interface CourseExercises {
@ -18,11 +19,13 @@ interface CourseExercises {
day: number;
position: number;
repeats: number;
time: string;
}
interface Exercise {
id: number;
title: string;
}
@ -102,8 +105,8 @@ export const CourseExercises = () => {
{/* Заголовок секции */}
<div className="flex items-center justify-between mb-6">
<h2 className="text-xl font-black text-[#5F5C5C]">Список упражнений</h2>
<span className="text-sm text-gray-500">{course_exercises.length} Упражнения</span>
<h2 className="text-xl font-black text-[#5F5C5C]">Упражнения</h2>
<span className="text-sm text-gray-500">Количество упражнений: {course_exercises.length}</span>
</div>
{/* Кнопки выбора дня */}
@ -146,25 +149,21 @@ export const CourseExercises = () => {
className="p-4 mb-4 cursor-pointer hover:scale-105 transition duration-300 glass-morphism rounded-3xl border border-white/50 shadow-2xl overflow-hidden backdrop-blur-2xl relative">
<div className="flex justify-between items-center">
<div>
<h3 className="text-sm">Упражнение {item.id_exercise}</h3>
<h3 className="text-sm font-semibold">Упражнение {item.position}</h3>
<h3 className="text-xl font-semibold text-gray-600">{item.exercise.title}</h3>
</div>
{/* Иконка стрелки */}
<div className="text-[#2BACBE] transform transition-transform duration-300 hover:translate-x-1">
<svg className="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5l7 7-7 7" />
</svg>
</div>
<ArrowIcon className="text-cyan-600" />
</div>
<div className="h-0.5 w-full bg-gray-200 my-5"></div>
<div className="h-0.5 w-full bg-gray-200 my-3"></div>
<div className="flex gap-4 text-xs">
<p>День: {item.day}</p>
<span>·</span>
<p>Позиция: {item.position}</p>
<span>·</span>
<div className="flex gap-10 text-xs text-gray-500">
<p>Повторений: {item.repeats}</p>
<p>Время выполнения: {item.time}</p>
</div>
</div>
))

View File

@ -9,7 +9,7 @@ import HeaderNav from "../components/HeaderNav";
import { connect } from '../confconnect';
import { getRouteCourseExercises } from '../shared/consts/router';
interface Course {
export interface Course {
ID: number;
title: string;
desc: string;

View File

@ -119,7 +119,7 @@ export const Exercise = () => {
if (prev >= totalTime) {
setIsPlaying(false)
// Отправляем результат на сервер при завершении
submitProgress()
// submitProgress()
// Show completion animation
// history.push(getRouteCourseComplete())
return totalTime
@ -143,21 +143,21 @@ export const Exercise = () => {
// Функция для отправки прогресса на сервер
const submitProgress = async () => {
if (!courseId || !exerciseId) return
// const submitProgress = async () => {
// if (!courseId || !exerciseId) return
try {
const timeUsers = formatTime(currentTime) // Отправляем время в формате MM:SS
// try {
// const timeUsers = formatTime(currentTime) // Отправляем время в формате MM:SS
await connect.post(`pacient/${courseId}/${exerciseId}`, {
time_users: timeUsers,
})
// await connect.post(`pacient/${courseId}/${exerciseId}`, {
// time_users: timeUsers,
// })
console.log("Прогресс отправлен на сервер:", timeUsers)
} catch (error) {
console.error("Ошибка при отправке прогресса:", error)
}
}
// console.log("Прогресс отправлен на сервер:", timeUsers)
// } catch (error) {
// console.error("Ошибка при отправке прогресса:", error)
// }
// }
const formatTime = (seconds: number) => {
const mins = Math.floor(seconds / 60)
@ -263,7 +263,8 @@ export const Exercise = () => {
return (
<div className="bg-gray-50 w-full h-full overflow-auto">
<div className="mt-36 mb-90 min-h-screen max-w-4xl mx-auto">
<HeaderNav item={exercise.title} text={`День ${exercise.day}, упражнение ${exercise.position}`} />
<HeaderNav item={exercise.title} text={`упражнение ${exercise.position}`}
/>
<div className="px-4 sm:px-6 mt-10 mb-6">
<div className="glass-morphism rounded-3xl overflow-hidden shadow-2xl border border-white/20 backdrop-blur-2xl">
@ -388,7 +389,7 @@ export const Exercise = () => {
onTouchStart={() => setIsActive(true)}
onTouchEnd={() => setIsActive(false)}
className={`cursor-pointer px-6 py-3 font-bold rounded-xl transition-all duration-500 hover:scale-105 hover:shadow-lg border border-gray-200 flex items-center justify-center ${!isActive ? "bg-white text-cyan-500" : "bg-orange-400 text-white"}`}
className={`cursor-pointer px-6 py-3 font-bold rounded-xl transition-all duration-700 hover:scale-105 hover:shadow-lg border border-gray-200 flex items-center justify-center ${!isActive ? "bg-white text-cyan-500" : "bg-orange-400 text-white"}`}
>
<CheckIcon
className="w-6 h-6"