// программы

Программы и многонедельные планы

/coach/programs — здесь живут планы из нескольких тренировок. Программа описывает, какие шаблоны и в какие дни выполнять. Назначение клиенту разворачивает конкретные тренировки в его календаре.

// коротко

  • Программа — упорядоченный список тренировок со смещениями в днях от старта.
  • Каждая тренировка в программе берётся из шаблона и привязана к дню от начала (день 0, день 7, день 10 — как угодно).
  • Назначение клиенту разворачивает копии: по одной тренировке на каждое смещение.
  • Назначенные тренировки можно редактировать — это полные копии, исходный шаблон остаётся нетронутым.
§ 01

Что такое программа

Программа — рецепт плана. Сама по себе она не выполняется, никто из клиентов её не видит. Клиент видит только тренировки, которые из неё родились, и работает с ними как с обычными тренировками.

Пустая библиотека программ
Пустая библиотека программ. Минимум — один сохранённый шаблон тренировки, чтобы было из чего собирать.
§ 02

Из чего состоит

Программа
Имя, описание и упорядоченный список тренировок.
Тренировка в программе
Берётся из библиотеки шаблонов и привязана к дню от старта.
Смещение в днях
Сколько дней от стартовой даты: 0 — старт, 7 — через неделю, 10 — через десять дней.
После назначения
На каждый день программы создаётся отдельная тренировка с правильной датой и копией упражнений.
§ 03

Создать программу

Кнопка «Новая программа» открывает форму. Имя, описание и набор тренировок — по одной на каждый день программы: для каждой выбираете шаблон из библиотеки и задаёте смещение от старта.

Заполненная форма создания программы
Программа из нескольких тренировок с разными смещениями. Порядок можно менять.
§ 04

Редактирование тренировок

На странице программы можно редактировать её состав: добавить тренировку, поменять шаблон у существующей, изменить смещение, удалить. Это черновик плана — на уже назначенных клиентам тренировках правка не отразится.

Редактирование программы перед назначением
Готовая программа перед назначением. Карточка справа — назначение клиенту.
§ 05

Назначение клиенту

В правой колонке страницы программы — карточка «Назначить клиенту». Выбираете клиента и стартовую дату, нажимаете «Назначить». На каждую запись программы создаётся отдельная тренировка: дата = стартовая дата + смещение в днях, упражнения — полная копия из выбранного шаблона.

Программа после назначения клиенту
После назначения программа фиксирует факт назначения, в карточке появляется итог.
§ 06

Что происходит после назначения

Сразу после назначения новые тренировки появляются в списке /coach/workouts, в календаре клиента и у самого клиента в его кабинете. Каждая тренировка — самостоятельная сущность: можно отредактировать предписание, поменять дату или удалить — шаблон-источник не пострадает. И наоборот: правка шаблона задним числом не «протечёт» в уже назначенные тренировки.

Список тренировок после назначения программы
После назначения новые тренировки видны в общем списке.
§ 07

Библиотека программ

В /coach/programs рядом с каждым планом — счётчик тренировок и кнопка удаления. Программу можно удалить в любой момент: уже назначенные клиентам тренировки от этого не исчезнут.