Files
ayurishchevandClaude Opus 5.5 c852f47f09 Задача 036: меню пользователя в шапке
Логин в шапке — триггер выпадающего списка «Сменить пароль» / «Выйти» в общем стиле списков
(popMenu, row-pop) вместо отдельных кнопок; шрифт и место прежней кнопки «Выйти».

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-27 16:14:58 +03:00

20 lines
1.9 KiB
Markdown

# Итог: меню пользователя в шапке (изменение 036)
План: `PLAN.md`. Справа в шапке вместо логина и кнопок «Сменить пароль» / «Выйти» — один элемент: логин с шевроном,
по нажатию раскрывается список «Сменить пароль» / «Выйти» в общем стиле выпадающих списков.
## Что сделано
| Файл | Изменение |
|---|---|
| `web/app.js` | `shell()`: триггер `btn ghost` с логином (шрифт прежней «Выйти») и ролью в `title`; список через общий `popMenu("user", …, "row-pop")`, выровнен вправо. `actions.pick`: ветка `user` закрывает список и вызывает `actions.logout()` или `passwordDialog()` |
| `web/styles.css` | Удалено неиспользуемое `.appbar .user` |
| `README.md` | «Интерфейс» — меню логина; строка 036 в истории |
## Проверки
- `node --check web/app.js` — чисто. Стенд пересобран: контейнер healthy, новый `app.js` отдаётся напрямую (`:8088`) и через Caddy (`rxipam.rxmsk.ru`).
- Ручная проверка в браузере (пользователь): вид шапки, раскрытие списка, «Сменить пароль», «Выйти», закрытие — подтверждено.
## Замечание по стенду
`docker compose -p ipam_control_006 up -d --build app` пересобрал образ, но не пересоздал контейнер — понадобился `--force-recreate`.
После пересборки проверять, что стенд отдаёт новый код, а не только статус healthy.