edge: restyle the oCIS idp sign-in wall into the Hub palette

The sign-in page is served by oCIS's idp service, which the web theme.json
cannot touch. Inject hub-signin.css via sub_filter on /signin/ until oCIS
sits behind the Hub OIDC issuer (see docs/design/2026-10-13-files-oidc-sso.md).
This commit is contained in:
glass beadian 2026-10-13 16:57:38 +00:00
parent 5bc81c16f2
commit 9d42d61f6b
2 changed files with 63 additions and 0 deletions

View file

@ -0,0 +1,41 @@
/* Hub restyle of the oCIS idp sign-in page, injected by the edge (see
* nginx.conf location /signin/). The page ships with ownCloud's default
* light theme; this brings it into the Hub palette until oCIS sits behind
* the Hub OIDC issuer (docs/design/2026-10-13-files-oidc-sso.md), after
* which the wall is never shown to Hub users at all. */
html, body {
background: #0f0a09 !important;
color: #f5f5f5 !important;
font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important;
}
h1, h2, label, p, span, small {
color: #f5f5f5 !important;
}
form {
background: #161211 !important;
border: 1px solid #2a2320 !important;
border-radius: 12px !important;
}
input[type="text"], input[type="password"], input[type="email"] {
background: #0a0706 !important;
border: 1px solid #3a322d !important;
color: #f5f5f5 !important;
border-radius: 6px !important;
}
input[type="text"]:focus, input[type="password"]:focus, input[type="email"]:focus {
border-color: #ff1610 !important;
outline: none !important;
}
button[type="submit"], .btn-primary, input[type="submit"] {
background: #ff1610 !important;
border: none !important;
color: #fff !important;
font-weight: 600 !important;
border-radius: 8px !important;
}
button[type="submit"]:hover, .btn-primary:hover, input[type="submit"]:hover {
background: #e3130e !important;
}
a {
color: #ff6b66 !important;
}

View file

@ -234,9 +234,31 @@ http {
default_type application/json;
alias /opt/occ-brand/hub-theme.json;
}
location = /themes/owncloud/hub-signin.css {
default_type text/css;
alias /opt/occ-brand/hub-signin.css;
}
location /themes/owncloud/assets/ {
alias /opt/occ-brand/;
}
# The oCIS idp sign-in page ships ownCloud's light theme; restyle it into
# the Hub palette at the edge until oCIS sits behind the Hub OIDC issuer
# (docs/design/2026-10-13-files-oidc-sso.md).
location /signin/ {
proxy_pass http://192.168.13.210:9200;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_read_timeout 3600s;
proxy_send_timeout 3600s;
proxy_buffering off;
sub_filter '</head>' '<link rel="stylesheet" href="/themes/owncloud/hub-signin.css"></head>';
sub_filter_once on;
sub_filter_types text/html;
}
location / {
proxy_pass http://192.168.13.210:9200;
# Hub in-app Drive frames oCIS web from app.occupymedia.cc: framing policy