Skip to content

Commit 724b457

Browse files
committed
show username instead of 'login' on confirmation pages
1 parent e3a0de6 commit 724b457

File tree

1 file changed

+26
-16
lines changed

1 file changed

+26
-16
lines changed

Sources/UnidocServer/Server/Unidoc.Server.swift

Lines changed: 26 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,24 @@ extension Unidoc.Server
8282
self.format(username: nil, locale: nil)
8383
}
8484

85+
private
86+
func format(for request:Unidoc.IncomingRequest) -> Unidoc.RenderFormat
87+
{
88+
let username:String?
89+
90+
if case .web(let session?, _) = request.authorization
91+
{
92+
username = session.symbol
93+
}
94+
else
95+
{
96+
username = nil
97+
}
98+
99+
return self.format(username: username, locale: request.origin.guess?.locale)
100+
}
101+
102+
private
85103
func format(username:String?, locale:ISO.Locale?) -> Unidoc.RenderFormat
86104
{
87105
.init(
@@ -198,7 +216,9 @@ extension Unidoc.Server
198216
return response
199217

200218
case .syncHTML(let renderable):
201-
let response:HTTP.ServerResponse = renderable.response(format: self.format)
219+
let response:HTTP.ServerResponse = renderable.response(
220+
format: self.format(for: request.incoming))
221+
202222
self.logger?.log(request: request.incoming, with: response, time: .zero)
203223
return response
204224

@@ -239,25 +259,15 @@ extension Unidoc.Server
239259
func respond(to request:Unidoc.IncomingRequest,
240260
running operation:any Unidoc.InteractiveOperation) async throws -> HTTP.ServerResponse
241261
{
262+
try Task.checkCancellation()
263+
242264
do
243265
{
244-
try Task.checkCancellation()
245-
246266
let initiated:ContinuousClock.Instant = .now
247-
let username:String?
248-
249-
if case .web(let session?, _) = request.authorization
250-
{
251-
username = session.symbol
252-
}
253-
else
254-
{
255-
username = nil
256-
}
257-
267+
let format:Unidoc.RenderFormat = self.format(for: request)
258268
let state:Unidoc.UserSessionState = .init(authorization: request.authorization,
259269
request: request.uri,
260-
format: self.format(username: username, locale: request.origin.guess?.locale))
270+
format: format)
261271

262272
let response:HTTP.ServerResponse = try await operation.load(from: self, with: state)
263273
?? .notFound("not found\n")
@@ -287,7 +297,7 @@ extension Unidoc.Server
287297
self.logger?.log(request: request, with: error)
288298

289299
let page:Unidoc.ServerErrorPage = .init(error: error)
290-
return .error(page.resource(format: self.format))
300+
return .error(page.resource(format: self.format(for: request)))
291301
}
292302
}
293303
}

0 commit comments

Comments
 (0)