Skip to content

Design/noid/hr visual refresh - #38

Merged
karlitschek merged 3 commits into
mainfrom
design/noid/hr-visual-refresh
Aug 10, 2026
Merged

Design/noid/hr visual refresh#38
karlitschek merged 3 commits into
mainfrom
design/noid/hr-visual-refresh

Conversation

@karlitschek

Copy link
Copy Markdown
Member

🤖 AI (if applicable)

  • The content of this PR was partly or fully generated using AI

Frank Karlitschek and others added 3 commits August 10, 2026 23:27
Four subtly different card treatments had grown up across the views —
background-hover with no border on the statistics tiles, main-background
with a border on the chart panels beside them, a third combination on the
exports cards, a fourth padding scale on My leave. Nothing was broken and
nothing looked deliberate, which is the kind of drift that reads as
"unfinished" long before anybody can say why.

There is now one `.surface`, one `.tiles` grid and one `.page__hint` in
the shared stylesheet, and the views use them instead of each rolling
their own.

The tables get the same treatment. `.tbl` gave them bottom rules and
nothing else: no container, no hover, no header weight — so a long HR
table rendered as rules floating on the page background, and the sick
leave view had quietly hand-rolled its own row hover because the shared
styles offered none. The wrap is now the table's own surface, headers sit
on a tinted band, rows highlight under the pointer, and the last row's
rule no longer doubles up with the border.

StatTile and MeterBar are extracted from the one view each had grown up
in. The tile carries an accent colour rather than painting every figure
in the primary element: a row of identical blue numbers gives the eye
nothing to hold on to, and the accent is free information.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Balances was seven numeric columns of equal weight, which meant the one
column HR opens the page for — Available — looked exactly like the six
around it, and questions as basic as "how many people are running low?"
had to be totted up by eye.

It now leads with four tiles answering the questions the table gets
opened for: headcount, days taken, days still available, and how many
people are nearly out or overdrawn. They are computed over the *filtered*
rows, so narrowing to a search or a group re-answers them for that group.
Only types that count against a balance are summed — adding unpaid leave,
which has no entitlement, into "days available" would be meaningless.

Each row gains a used-of-entitlement meter, and Available carries the
only colour in the row: red when overdrawn, amber under a fifth left. The
meter turns amber with it, so the warning is in the shape as well as in
the number.

Statistics gains a fourth tile, days in the busiest month, named. The
average alone hides the August everybody disappears in, which is the one
month worth staffing around. Its two charts now sit side by side, since
they are read together, and the page uses the same measure as its
siblings instead of being 200px narrower for no reason.

Sick leave trades its summary sentence for the same tiles, and its
average is taken across the whole workforce rather than the affected
only — an average over the affected climbs as fewer people fall ill,
which is the opposite of how the number gets read.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@karlitschek
karlitschek merged commit 5e70516 into main Aug 10, 2026
14 of 16 checks passed
@nextcloud-command nextcloud-command added the AI assisted This PR contains AI-assisted commits label Aug 10, 2026
@karlitschek
karlitschek deleted the design/noid/hr-visual-refresh branch August 10, 2026 21:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AI assisted This PR contains AI-assisted commits

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants