mirror of
https://gitverse.ru/kpa39l/vesti.git
synced 2026-09-29 18:05:03 +00:00
562d787f1b
- reject/reject-old (single + bulk): редирект на /candidates с текущей группировкой вместо /candidates?status=rejected — не прерываем отбор. Отклонённые доступны через фильтр статуса. - candidates.html: Обработать/Переписать/Отклонить — один ряд над полем комментария (после переноса Опубликовать в approve-форму кнопки съехали). changes: candidates-buttons-order, reject-stay-candidates (skip_specs, валидны).
46 lines
2.9 KiB
Markdown
46 lines
2.9 KiB
Markdown
## Why
|
||
|
||
В прошлой сессии кнопку «Опубликовать» перенесли в approve-форму (вместе с
|
||
полем комментария). В результате в правой панели деталей кандидата кнопки
|
||
«Обработать моделью», «Переписать», «Отклонить» оказались ПОСЛЕ блока
|
||
комментария отдельным flex-рядом — визуально «съехали» и разорвали основной
|
||
ряд действий.
|
||
|
||
Пользователь: действия модератора должны быть над полем комментария, в одном
|
||
ряду с «Опубликовать».
|
||
|
||
## What Changes
|
||
|
||
- В `web/templates/candidates.html`, правая панель выбранного поста:
|
||
- Перенести кнопки «🤖 Обработать моделью», «✍️ Переписать», «🚫 Отклонить»
|
||
из отдельного flex-ряда ПОСЛЕ approve-формы в ОДИН ряд с кнопкой
|
||
«✅ Опубликовать» — НАД полем комментария.
|
||
- Итоговая структура блока действий (когда пост не опубликован/не отклонён):
|
||
|
||
```
|
||
[✅ Опубликовать] [🤖 Обработать моделью] [✍️ Переписать] [🚫 Отклонить]
|
||
💬 Мой комментарий (будет первым в канале):
|
||
[textarea комментария]
|
||
[💾 Сохранить комментарий]
|
||
```
|
||
|
||
- Логика видимости кнопок не меняется:
|
||
- «Опубликовать» — статус != published;
|
||
- «Обработать моделью», «Переписать» — статус != published;
|
||
- «Отклонить» — статус != rejected и != published.
|
||
|
||
## Why Not
|
||
|
||
- Не объединять все кнопки в одну approve-форму: «Сохранить комментарий»
|
||
использует отдельный эндпоинт (`/posts/{id}/comment`), а «Обработать
|
||
моделью»/«Переписать»/«Отклонить» — свои POST-эндпоинты; в одну форму их
|
||
не собрать без JS (а htmx/JS-сложная логика в проекте запрещены).
|
||
- Оставлять текущий порядок нельзя — кнопки визуально разорваны.
|
||
|
||
## Impact
|
||
|
||
- Файл: `web/templates/candidates.html` (правка только разметки, без JS и
|
||
эндпоинтов).
|
||
- Данные: без изменений.
|
||
- Сервис: `vesti-web` (:8400) — нужен перезапуск (Jinja2-кеш без --reload).
|
||
- Rollback: вернуть разметку и перезапустить сервис. |