v0.255.0 — the globe on the sign-in-flow pages: styled, and inside the card
gates / gates (push) Successful in 23s
gates / gates (push) Successful in 23s
Two defects in v0.254.0's globe, both plain on a browser and neither catchable by anything that existed — every test read the MARKUP, and the fault was in which CSS file the browser fetched. The shells requested /static/style.css with NO ?v=, while layout.html has carried one since v0.166.0. A browser holding a copy from before v0.254.0 kept serving CSS with no .lang-globe rules, so the globe came out as a bare unstyled <details> — a stray triangle and two plain words at the edge of the window. It was FIVE shells, not the three named: both guest share pages have the same fault for any CSS change, and their visitor is the likeliest of all to be holding an old copy. And .Version was missing from three of those five data maps, which is exactly how the next one would be forgotten — it is now filled at the one choke point every shell renders through. The globe also floated outside the card, pinned to the corner of the VIEWPORT, reading as part of the browser rather than the page. It now sits inside the card, centred under the footer, with the menu opening upward via the shared rule — so the dashboard and the shells cannot drift. AND A THIRD, caught by a test that already existed: putting the version on the guest share pages would have printed the controller build onto a page a stranger with a capability URL can open. TestShareGuest_HeadersTilesNoAdminChrome refused it. Those two now take an opaque per-build tag — same cache-busting, no disclosure. The fill is ONE function shared with the parity harness, because a fixture rendered through a different data path is a picture of a page nobody serves, which the previous release got wrong twice. 15 shell fixtures re-captured; 91 identical, every dashboard page among them. MinAgent: 0.131.0 (unchanged). No hub release needed. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
@@ -5,10 +5,9 @@
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>{{if .IsReset}}{{T "claim.jelszo_visszaallitasa"}}{{else}}{{T "claim.a_szerver_beallitasa"}}{{end}} — Felhom</title>
|
||||
<link rel="stylesheet" href="/static/style.css">
|
||||
<link rel="stylesheet" href="/static/style.css?v={{.Version}}">
|
||||
</head>
|
||||
<body class="login-body">
|
||||
<div class="shell-lang">{{template "lang_globe" .}}</div>
|
||||
<div class="login-card">
|
||||
<img src="/static/felhom-logo.svg" alt="Felhom.eu" class="login-logo">
|
||||
<h1 class="login-title">{{if .IsReset}}{{T "claim.jelszo"}} <span class="title-accent">{{T "claim.visszaallitasa"}}</span>{{else}}{{T "claim.a_szerver"}} <span class="title-accent">{{T "claim.beallitasa"}}</span>{{end}}</h1>
|
||||
@@ -59,6 +58,7 @@
|
||||
</form>
|
||||
|
||||
<p class="login-footer">{{T "claim.felhom_otthoni_szerver_kezeles_felhom"}}</p>
|
||||
<div class="shell-lang">{{template "lang_globe" .}}</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
<title>{{T "launcher_share_password.inditopult"}}</title>
|
||||
<link rel="icon" type="image/svg+xml" href="/static/favicon.svg">
|
||||
<link rel="stylesheet" href="/static/style.css">
|
||||
<link rel="stylesheet" href="/static/style.css?v={{.AssetTag}}">
|
||||
</head>
|
||||
<body class="guest-body guest-gate-body">
|
||||
<main class="guest-gate">
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
<title>{{T "launcher_shared.inditopult"}}</title>
|
||||
<link rel="icon" type="image/svg+xml" href="/static/favicon.svg">
|
||||
<link rel="stylesheet" href="/static/style.css">
|
||||
<link rel="stylesheet" href="/static/style.css?v={{.AssetTag}}">
|
||||
</head>
|
||||
<body class="guest-body">
|
||||
<main class="guest-content">
|
||||
|
||||
@@ -5,10 +5,9 @@
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>{{T "login.bejelentkezes_felhom"}}</title>
|
||||
<link rel="stylesheet" href="/static/style.css">
|
||||
<link rel="stylesheet" href="/static/style.css?v={{.Version}}">
|
||||
</head>
|
||||
<body class="login-body">
|
||||
<div class="shell-lang">{{template "lang_globe" .}}</div>
|
||||
<div class="login-card">
|
||||
<img src="/static/felhom-logo.svg?v={{.Version}}" alt="Felhom.eu" class="login-logo">
|
||||
<h1 class="login-title">{{T "login.otthoni"}} <span class="title-accent">{{T "login.vezerlopult"}}</span></h1>
|
||||
@@ -26,6 +25,7 @@
|
||||
</form>
|
||||
<p style="text-align:center;margin:0.75rem 0 0;font-size:0.85rem"><a href="/claim">{{T "login.elfelejtett_jelszo"}}</a></p>
|
||||
<p class="login-footer">{{T "login.felhom_otthoni_szerver_kezeles_felhom"}}</p>
|
||||
<div class="shell-lang">{{template "lang_globe" .}}</div>
|
||||
</div>
|
||||
<script>
|
||||
(function() {
|
||||
|
||||
@@ -6,10 +6,9 @@
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="robots" content="noindex, nofollow">
|
||||
<title>{{T "recovery.adatok_visszaszerzese_felhom"}}</title>
|
||||
<link rel="stylesheet" href="/static/style.css">
|
||||
<link rel="stylesheet" href="/static/style.css?v={{.Version}}">
|
||||
</head>
|
||||
<body class="login-body">
|
||||
<div class="shell-lang">{{template "lang_globe" .}}</div>
|
||||
<div class="login-card" style="max-width:46rem">
|
||||
<img src="/static/felhom-logo.svg" alt="Felhom.eu" class="login-logo">
|
||||
|
||||
@@ -189,6 +188,7 @@
|
||||
</p>
|
||||
{{end}}
|
||||
{{end}}
|
||||
<div class="shell-lang">{{template "lang_globe" .}}</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -3676,9 +3676,9 @@ html::-webkit-scrollbar-track { background: var(--bg-0); }
|
||||
border-left: 2px solid var(--crit);
|
||||
}
|
||||
|
||||
/* i18n (v0.254.0): the globe on the pages a VISITOR meets — sign-in, claim, recovery. Those pages have
|
||||
their own shell and no sidebar, so the globe is pinned to the top-right corner of the viewport, the
|
||||
same place on all three. It posts to /lang, which sets a display-only cookie in that visitor's own
|
||||
browser and never the household's setting. */
|
||||
.shell-lang { position: absolute; top: 1rem; right: 1rem; z-index: 30; }
|
||||
.shell-lang .lang-globe-menu { bottom: auto; top: calc(100% + .35rem); left: auto; right: 0; transform: none; }
|
||||
/* i18n (v0.254.0, placed properly in v0.255.0): the globe on the pages outside the dashboard chrome —
|
||||
sign-in, claim, recovery. Those pages have their own shell and no sidebar.
|
||||
v0.255.0: it lives INSIDE the card, centred under the footer, and the menu opens UPWARD — which is
|
||||
the shared .lang-globe-menu rule, so this block adds no positioning of its own. It floated in the
|
||||
top-left of the viewport before, outside the card, which read as a stray browser control. */
|
||||
.shell-lang { display: flex; justify-content: center; margin-top: 1.5rem; }
|
||||
|
||||
Reference in New Issue
Block a user