vole
Clone
Read only, no credentials:
https://rodent.software/git/vole.git
Write over SSH with a registered key:
git clone ssh://git@0.0.0.0:2222/vole.git
A free and open-source forge that lives in your Git repo.
Manage accounts from the users directory, not the Admin tab
ea21f923d1fabe3a633e3dc4713ca18d211dbfcb · Keenan Nemetz · 4d ago · parent f11854fe
Manage accounts from the users directory, not the Admin tab The Accounts tab rendered every account in the roster, which costs more as an instance grows and duplicates a directory that is already paginated, searchable, filterable, and sortable. The tab now keeps the invite and bot forms and points at /u, and an instance admin gets a Manage action on each directory row that opens the account page. The Manage column is presentation only: the account page still checks the instance-admin role, so a non-admin who types its URL gets the usual 404. Refs #198 (01M6MK0NNZ2XR1D5TQKNWYT4HN).
server/web/admin.go +4−5
| @@ -61,10 +61,8 @@ type adminPageView struct { | |||
| 61 | 61 | RunnerWindow string | |
| 62 | 62 | Config *statusConfigView | |
| 63 | 63 | ||
| 64 | // Accounts. | ||
| 65 | Users []adminUserRow | ||
| 66 | // AccountSummary is the overview's counts, derived from the same roster the | ||
| 67 | // Accounts tab lists. | ||
| 64 | // AccountSummary is the overview's counts, derived from the roster the users | ||
| 65 | // directory lists. | ||
| 68 | 66 | AccountSummary adminAccountSummary | |
| 69 | 67 | ||
| 70 | 68 | // Audit log. | |
| @@ -145,7 +143,8 @@ func (w *Web) adminView(r *http.Request, tab, msg string) adminPageView { | |||
| 145 | 143 | v.Page.Error = msg | |
| 146 | 144 | switch tab { | |
| 147 | 145 | case "accounts": | |
| 148 | v.Users = w.adminUserRows() | ||
| 146 | // The tab is the creation forms; an existing account is managed from the | ||
| 147 | // users directory, which is already paginated and searchable. | ||
| 149 | 148 | case "audit": | |
| 150 | 149 | v.Audit = w.auditView(r) | |
| 151 | 150 | default: | |