ruslan
cbfafe4471
Replace logo with new MONT|4MONT design, white version fitted to existing size
2026-08-03 13:39:04 +00:00
ruslan
06643e2d50
seo: proper favicon sizes (32/192/512px) + web app manifest for Yandex
2026-07-26 13:21:59 +00:00
ruslan
0fe2f7d9a9
ui: replace logo with logo2.png, bump cache buster to v=3
2026-07-26 13:10:32 +00:00
ruslan
51590cea80
seo: add explicit shortcut icon link to all templates for Yandex favicon indexing
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-07-21 08:38:24 +00:00
ruslan
cdc30f126c
fix: add cache-busting v=2 to style.css to force browser reload
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-07-21 08:10:29 +00:00
ruslan
8ab7df12a1
Replace logo.png with new version, rename МОНТ→MONT everywhere
2026-05-27 17:39:16 +00:00
ruslan
dd7288beaf
Add SVG favicon 120x120 with MONT branding, add SVG link to all templates
2026-05-18 07:19:50 +00:00
ruslan
6aa40eb5c2
feat: add first_name/last_name to users, avatar in header, neutral dashboard bg
2026-05-12 12:51:47 +00:00
ruslan
116ffba42d
feat: add Yandex Metrika counter (id=109119977) to all pages
2026-05-08 13:03:46 +00:00
ruslan
983065ac9f
fix: use favicon.png instead of svg
2026-05-07 07:23:56 +00:00
ruslan
7e94ddaf8d
fix: rdp target field readonly, host/port/domain/sec oninput rebuilds target
2026-05-06 11:43:26 +00:00
ruslan
3f20fe5991
Fix: category delete button broken by double-quote conflict in onclick attr
2026-04-28 21:07:14 +00:00
ruslan
a64d49a8c1
feat: reorder card layout + svc_cred_hint field for credentials note
2026-04-28 12:20:37 +00:00
ruslan
b9d13733c9
feat: service credentials (login/password) on dashboard cards with copy button
2026-04-28 12:10:40 +00:00
ruslan
6847cbc078
feat: RDP slot pool — multi-user RDP with per-account containers
...
- New RdpSlot model (rdp_slots table): service_id, rdp_username,
rdp_password, container_name
- Each slot gets a dedicated portal-rdpslot-<slug>-<id> container with
Traefik route /rdp/<slot_id>/ and restart_policy=unless-stopped
- go_service: RDP services with slots use pool allocation — finds first
free slot (not occupied by active session), returns 503 if all busy
- session_status + session_view: handle RDPSLOT: container_id prefix
- terminate_session_record: restarts slot container in background on close
- session_redirect_url: RDPSLOT sessions redirect to /s/<id>/view
- startup_event: starts containers for all configured slots on boot
- Admin: POST /api/admin/services/{id}/rdp-slots, DELETE /api/admin/rdp-slots/{id}
- admin.html: slot management UI (list, add, delete); removed ACL exclusivity
- set_acl: removed RDP 1-user exclusivity — RDP services now assignable to many
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-04-28 06:32:02 +00:00
ruslan
419b495020
feat: RDP ACL exclusivity, mobile wall, nav buttons, resolution xrandr
...
- RDP сервис может быть назначен только одному пользователю в ACL
- Мобильная заглушка на dashboard при ширине < 1024px
- rdp-proxy: кнопки навигации, спиннер Ожидайте, реконнект
- session_wait_page: тёмная тема, CSS спиннер
- kiosk/universal-runtime manager.py: xrandr + cvt --newmode для resolution
- Dockerfiles: x11-xserver-utils, x11-utils
2026-04-27 18:49:06 +00:00
ruslan
6f9bc32440
UI/runtime polish, session rotation limit, login errors, docs update
2026-04-21 16:05:15 +00:00
ruslan
c97cf5308d
Tune idle timeout, heartbeat redirect, and update project context
2026-04-21 13:31:47 +00:00
ruslan
9c9b97374c
Disable UI effects and refresh PROJECT_CONTEXT
2026-04-21 12:39:26 +00:00
ruslan
52d1991092
feat: categories, runtime nav, and UX updates
2026-04-21 11:43:43 +00:00
ruslan
605b269f74
feat: switch WEB to shared hot pool with autoscale
2026-04-14 13:37:45 +00:00
ruslan
fc46d90194
feat: redesign portal UX and stabilize web session runtime
2026-04-13 08:35:07 +00:00