xC/xP: show own user's info in frontends

This commit is contained in:
2022-09-20 17:14:55 +02:00
parent 7806d4bd4e
commit 9327333813
3 changed files with 53 additions and 15 deletions

View File

@@ -388,7 +388,7 @@ rpcEventHandlers.set(Relay.Event.ServerUpdate, e => {
let s = servers.get(e.serverName)
if (s === undefined)
servers.set(e.serverName, (s = {}))
s.state = e.state
s.data = e.data
})
rpcEventHandlers.set(Relay.Event.ServerRename, e => {
@@ -693,14 +693,21 @@ let Status = {
let Prompt = {
view: vnode => {
// This should be handled differently, so don't mind the lookup.
let b = buffers.get(bufferCurrent)
if (b === undefined || b.server === undefined)
return
let state = b.server.state
if (b.server.data.user !== undefined) {
let user = b.server.data.user
if (b.server.data.userMode)
user += `(${b.server.data.userMode})`
return m('.prompt', {}, `${user}`)
}
// This might certainly be done more systematically.
let state = b.server.data.state
for (const s in Relay.ServerState)
if (Relay.ServerState[s] == b.server.state) {
if (Relay.ServerState[s] == state) {
state = s
break
}