Signed-off-by: Shalabh Agarwal me@serendipty01.dev
+19
-5
appview/middleware/middleware.go
+19
-5
appview/middleware/middleware.go
···
206
206
return func(next http.Handler) http.Handler {
207
207
return http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
208
208
repoName := chi.URLParam(req, "repo")
209
+
user := mw.oauth.GetUser(req)
209
210
id, ok := req.Context().Value("resolvedId").(identity.Identity)
210
211
if !ok {
211
212
log.Println("malformed middleware")
···
220
221
)
221
222
if err != nil {
222
223
log.Println("failed to resolve repo", "err", err)
223
-
mw.pages.ErrorKnot404(w)
224
+
mw.pages.ErrorKnot404(w, pages.ErrorPageParams{
225
+
LoggedInUser: user,
226
+
})
224
227
return
225
228
}
226
229
···
235
238
return func(next http.Handler) http.Handler {
236
239
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
237
240
f, err := mw.repoResolver.Resolve(r)
241
+
user := mw.oauth.GetUser(r)
238
242
if err != nil {
239
243
log.Println("failed to fully resolve repo", err)
240
-
mw.pages.ErrorKnot404(w)
244
+
mw.pages.ErrorKnot404(w, pages.ErrorPageParams{
245
+
LoggedInUser: user,
246
+
})
241
247
return
242
248
}
243
249
···
282
288
func (mw Middleware) ResolveIssue(next http.Handler) http.Handler {
283
289
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
284
290
f, err := mw.repoResolver.Resolve(r)
291
+
user := mw.oauth.GetUser(r)
285
292
if err != nil {
286
293
log.Println("failed to fully resolve repo", err)
287
-
mw.pages.ErrorKnot404(w)
294
+
mw.pages.ErrorKnot404(w, pages.ErrorPageParams{
295
+
LoggedInUser: user,
296
+
})
288
297
return
289
298
}
290
299
···
292
301
issueId, err := strconv.Atoi(issueIdStr)
293
302
if err != nil {
294
303
log.Println("failed to fully resolve issue ID", err)
295
-
mw.pages.ErrorKnot404(w)
304
+
mw.pages.ErrorKnot404(w, pages.ErrorPageParams{
305
+
LoggedInUser: user,
306
+
})
296
307
return
297
308
}
298
309
···
326
337
return func(next http.Handler) http.Handler {
327
338
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
328
339
f, err := mw.repoResolver.Resolve(r)
340
+
user := mw.oauth.GetUser(r)
329
341
if err != nil {
330
342
log.Println("failed to fully resolve repo", err)
331
-
mw.pages.ErrorKnot404(w)
343
+
mw.pages.ErrorKnot404(w, pages.ErrorPageParams{
344
+
LoggedInUser: user,
345
+
})
332
346
return
333
347
}
334
348
+2
-2
appview/pages/pages.go
+2
-2
appview/pages/pages.go
···
1530
1530
return p.execute("errors/404", w, params)
1531
1531
}
1532
1532
1533
-
func (p *Pages) ErrorKnot404(w io.Writer) error {
1534
-
return p.execute("errors/knot404", w, nil)
1533
+
func (p *Pages) ErrorKnot404(w io.Writer, params ErrorPageParams) error {
1534
+
return p.execute("errors/knot404", w, params)
1535
1535
}
1536
1536
1537
1537
func (p *Pages) Error503(w io.Writer) error {