Files
RenewCMS/docs/design/screens/profile.md
T

6.0 KiB
Raw Blame History

Profile

Route: /profile. API: GET /v1/auth/me · PATCH /v1/user/me (pending) · POST /v1/auth/password-reset.

Opened from the account menu at the bottom of the sidebar. Username, email and password are read-only. The display name is optional, trimmed, and up to 60 characters. Once saved it replaces the username everywhere a person is named: the sidebar, the account menu, the Home greeting, the Users list (with the username beside it) and the emails RenewCMS sends, such as "Marta Alves invited you to RenewCMS". Saving it empty goes back to the username. The reset link uses the same flow as "Forgot password" and ends on the auth board's "Choose a new password" screen.

Visual reference: RenewCMS Screens Back-office.dc.html, groups "Profile". Frames: AppFrame.dc.html (shell, sidebar, topbar, drawer) plus the screen frame where listed in components.md.

Copy per state (generated from the board source, pass 2)

Every state below is drawn in light and dark (theme switch on the board), at 1440×900 and 390×844 (both frames sit side by side). Board: RenewCMS Screens Back-office.dc.html. Copy is exact; where a cell is empty the state reuses the fixed copy.

Fixed copy in the frame

  • Profile
  • Your account on this RenewCMS workspace.
  • Display name
  • Shown instead of your username across the back-office and in the emails RenewCMS sends. Leave it empty to use your username.
  • (optional)
  • Account
  • Set when your account was created. You log in with your username, even after adding a display name.
  • Username
  • marta
  • Email
  • marta@renew.example
  • Password
  • To change it, we'll email a reset link to marta@renew.example. The link works once, within 1 hour.

Profile (group "Profile", 13 states)

Route: /profile. API: GET /v1/auth/me · PATCH /v1/user/me (pending) · POST /v1/auth/password-reset.

Opened from the account menu at the bottom of the sidebar. Username, email and password are read-only. The display name is optional, trimmed, and up to 60 characters. Once saved it replaces the username everywhere a person is named: the sidebar, the account menu, the Home greeting, the Users list (with the username beside it) and the emails RenewCMS sends, such as "Marta Alves invited you to RenewCMS". Saving it empty goes back to the username. The reset link uses the same flow as "Forgot password" and ends on the auth board's "Choose a new password" screen.

# State Trigger Copy
1 Account menu The account chip at the bottom of the sidebar. On mobile, the account row in the navigation drawer opens it as a sheet. Escape or a click outside closes it. "Here's where things stand on your site."
2 Loading Opened directly by URL before /auth/me has returned. From the menu, the cached user renders straight away.
3 Default, no display name The usual first visit. The username is used everywhere.
4 Editing Typing in the field. Save turns on, and leaving the page asks for confirmation.
5 Too long Over 60 characters. Checked as you type, and Save stays off. "Marta Alves, Head of Renovations, Brussels and Wallonia office" / "Use 60 characters or fewer."
6 Saving Save, or Enter in the field. The field is disabled.
7 Saved 200: the sidebar and account menu switch to the display name at once, and a toast confirms. "Display name saved" / "You now appear as Marta Alves across RenewCMS and in emails."
8 Save failed 500 or network failure. The typed value is kept. "Couldn't save your display name. Your text is still here. Try again in a moment."
9 Reset: sending "Send reset link". No confirmation, since it only sends an email.
10 Reset: sent 200. The message stays until the page is left. "Send again" sends a new link and the old one stops working.
11 Reset: too many requests (429) Rate limited. The button is disabled for 5 minutes.
12 Reset: failed 500 or network failure. The button can be pressed again.
13 Display names in the Users list The Display name column shows the name when one is set and a dash when not. Your own row follows your saved name.

Changed in pass 3: author profile

Every existing Profile frame has the "Author profile" card between Account and Password, in its default state ("Create my author profile"). The card is defined once, in AppFrame.dc.html.

Profile: author profile (group "Profile: author profile", 5 states)

Route: /profile. API: POST /v1/author/me · GET /v1/auth/me (author field).

The "Author profile" card sits between Account and Password in every Profile frame, defined once in AppFrame. The existing Profile frames show its default state ("Create my author profile"). All roles can create their own profile and edit their own linked author. Only the states specific to the card are drawn here.

# State Trigger Copy
1 No author profile The user has no linked author. Author profile · Your public byline on articles. It's separate from your account. · You don't have an author profile yet. Create one to be credited on your own articles. · Create my author profile · Uses your display name, Marta Alves. You can change it afterwards.
2 Error 500 or network failure. Couldn't create your author profile · Try again in a moment.
3 Created 201: the card shows the author. The author is named from the display name and linked to the user. Author profile created · Marta Alves is now your byline. · Edit author · Linked to your account. New articles start with this author.
4 Created, slug adjusted The slug was taken, so the server added a number. No error is shown. Your slug is marta-alves-2 · marta-alves was already used by another author. You can change it in Edit author.
5 Edit own author Edit author on the card, by a role without author rights. The form opens with the linked user locked and no Unlink. There is no delete action in the form or on this screen. Edit Marta Alves · Linked user · marta@renew.example · This is your author profile. Only an owner or admin can change the link. · Save changes