1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2026-11-09 03:36:48 +00:00

style(accounts): the password pages have the account forms' layout

The page where a user changes their own password and the one where an
administrator sets a user's password shared an old card: a horizontal
form, a blue Cancel and a green Change. The administrator's had Django's
"Password-based authentication: Enabled/Disabled" with a paragraph about
other backends, and its password fields stayed while Disabled was chosen.

Both pages now have the user and group forms' layout, each its own
template. The administrator chooses how the user signs in, With a
password or Without a password (such as LDAP), and the password fields
and "must change it" show only with a password; Cancel goes back to the
user. A user's own page says that their other sessions end, or, when
they must change it, that they choose one before going on, without a
Cancel. A refused password is said at its field only, without the
general "Wrong Data Provided". The section styles of these forms move
into webvirtcloud.css.
This commit is contained in:
catborise 2026-11-04 22:53:40 +03:00
parent 61979be731
commit 84dfbd5884
14 changed files with 323 additions and 193 deletions

View file

@ -281,3 +281,26 @@ button.vcpu-cell:disabled { opacity: .65; }
fieldset:not(:has(input[value="set"]:checked)) > .console-new-password {
display: none;
}
/* the account forms (user, group, password): each section says what it is
about on the left, its fields on the right, with a rule between sections */
.form-section {
border-top: 1px solid var(--bs-border-color);
padding: 1.5rem 0;
}
.form-section:first-of-type {
border-top: 0;
padding-top: .5rem;
}
.form-section-fields {
max-width: 52rem;
}
/* a choice drawn as a card (the user's role, how a user signs in) */
.form-choice:has(input:checked) {
border-color: var(--bs-primary) !important;
box-shadow: inset 0 0 0 1px var(--bs-primary);
}
/* a user's password fields: only while With a password is chosen */
.form-section-fields:has(input[name="usable_password"][value="false"]:checked) > .with-password {
display: none;
}