diff --git a/EventHubFrontSpec.md b/EventHubFrontSpec.md index f69fd77..e95a1cc 100644 --- a/EventHubFrontSpec.md +++ b/EventHubFrontSpec.md @@ -155,7 +155,8 @@ CONTROL→bookings. Контент: free gaps / события сегодня / Владелец: черновики слотов из прошлой ISO-недели в дырах текущей; «Создать неделю» — preview, затем существующий POST events. После создания черновик снимается сразу -(без F5). Без подтверждения в API не пишем. EventHubAiRouter не используется. +(без F5), в том числе если время в форме сдвинули (прошлый час → +1 день / правка start). +Фраза с часом уже в прошлом («11» в 14:00) ставит черновик на следующий день, тот же час. **v2 (Front#51):** отказ от дуги (тап другой свободной ячейки / свайп недели) пишет штраф часу и мастеру в `localStorage` (`eh.timeArc.skips`) — дуга переезжает. ≥2 confirmed записей к одному `specialist_id` бустят его слоты. Месяц: тепло `data-time-arc-heat` на днях со скоренным часом. Personal: черновик «тот же час +7д» после прошедшего confirmed визита; тап открывает студию. @@ -296,10 +297,13 @@ cover (`.eh-discover-media--photo`); иначе mood wash + initials (`.eh-disco ### 5.7. Отзывы `GET/POST /v1/reviews`, `GET/PUT/DELETE /v1/reviews/:id`, `GET /v1/user/reviews`. Цели: `event` | `calendar`. Голос: `PUT /v1/reviews/:id/vote` `{ "value": "like"|"dislike" }`, `DELETE /v1/reviews/:id/vote`; в ответах — `my_vote`. -UI: форма отзыва скрыта без confirmed booking (event — booking на это событие; calendar — booking на событие календаря); подсказка + жалоба остаются. +UI: без сессии скрыты форма отзыва, жалоба (календарь/событие/отзыв) и кнопки like/dislike +(счётчики лайков в списке отзывов остаются). С сессией: форма отзыва скрыта без +confirmed booking; подсказка gated + жалоба остаются (жалоба не требует booking). ### 5.8. Жалобы `POST /v1/reports` — `target_type`: `event` | `calendar` | `review`. Жалоба не требует booking. +В client UI жалоба доступна только залогиненному пользователю. ### 5.9. Подписка `GET /v1/subscription`, `POST /v1/subscription` (`start_trial` | `activate` + `plan` + опционально `payment_info`).