Add event colors (Catppuccin Mocha) and read-only week view for users
All checks were successful
CI/CD Pipeline / build-and-deploy (push) Successful in 20s

Admins can now pick a color per event from a Catppuccin Mocha palette;
existing events default to blue. Colors flow through to both the admin
timeline and the new "Неделя" tab in the user view, which reuses the
admin's weekly grid in a read-only mode. Also reworks event blocks to
show a single-line "start–end title" so short events no longer overflow,
tidies the admin toolbar, and expands mobile responsiveness across both
frontends.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
vrubel 2026-07-12 18:03:21 +00:00
parent fc66954c03
commit c40a6569b4
10 changed files with 685 additions and 64 deletions

View file

@ -102,7 +102,8 @@ async def materialize_events(
title=event.title,
start_time=event.start_time,
duration_min=event.duration_min,
repeat_weekly=False
repeat_weekly=False,
color=event.color or "blue"
))
result = await db.execute(select(Event).where(Event.repeat_weekly == True))
@ -146,7 +147,8 @@ async def materialize_events(
title=exception.replacement_title or event.title,
start_time=exception.replacement_start_time or event.start_time,
duration_min=exception.replacement_duration_min or event.duration_min,
repeat_weekly=True
repeat_weekly=True,
color=exception.replacement_color or event.color or "blue"
))
continue
@ -158,7 +160,8 @@ async def materialize_events(
title=event.title,
start_time=event.start_time,
duration_min=event.duration_min,
repeat_weekly=True
repeat_weekly=True,
color=event.color or "blue"
))
current_date += timedelta(days=1)