CI / test (push) Failing after 42s
People sign up on the website and link IMVU accounts by putting a code in the account's tagline, which the hub reads from IMVU's public API (the most recent proof wins; link caps per person). IMVU's age verification or Access Pass make an account adult. T5DE's proxy signs in with a device code and keeps a WebSocket open, reporting the IMVU account in use and the community products it wears; /online shows those who opted in. Moderators get a console: who's online, people, link caps, bans, roles, and the audit log. Tests run the website and API against an embedded Postgres and a fake IMVU API. Co-Authored-By: Claude Opus 5.5 <[email protected]>
28 lines
999 B
HTML
28 lines
999 B
HTML
{{define "title"}}Online{{end}}
|
|
{{define "content"}}
|
|
<h1>Online in T5DE</h1>
|
|
<p class="lead">IMVU accounts in a T5DE client right now, that chose to show it.</p>
|
|
<div class="panel" hx-get="/online/list" hx-trigger="every 5s" hx-swap="innerHTML">
|
|
{{template "online-list" .}}
|
|
</div>
|
|
{{end}}
|
|
|
|
{{define "online-list"}}
|
|
{{range .Online}}
|
|
<div class="account-row">
|
|
<div class="avatar">{{slice .Link.Username 0 1 | upper}}</div>
|
|
<div class="account-main">
|
|
<div class="account-name">{{.Link.Username}}</div>
|
|
<div class="tags">
|
|
{{if .Link.ShowBadge}}<span class="tag gold">T5DE</span>{{end}}
|
|
<span class="tag online">online {{ago .Online.Since}}</span>
|
|
{{if .Hidden}}<span class="tag warn">hidden: moderators only</span>{{end}}
|
|
</div>
|
|
{{if .Online.Outfit}}<div class="outfit">{{range .Online.Outfit}}<span class="item">{{.Name}}</span>{{end}}</div>{{end}}
|
|
</div>
|
|
</div>
|
|
{{else}}
|
|
<p class="empty">Nobody is showing that they're online right now.</p>
|
|
{{end}}
|
|
{{end}}
|