Something went wrong. Try again.
Lightweight and easily self-hostable Git forge.
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233package app
import ( md "farga/app/middleware" "farga/db/types" "farga/lib" "farga/templating" "net/http")
// requires `md.UserHandle` middleware.func (a *App) UserProfileHandler(w http.ResponseWriter, r *http.Request) { user, ok := r.Context().Value(md.UserHandleKey).(*types.User)
if !ok { // the user middleware failed, and returned no user. http.NotFound(w, r) return }
var isOwner bool
reqUser, ok := r.Context().Value(lib.UserKey).(*types.User) if ok && user.ID == reqUser.ID { isOwner = true }
templating.Render(w, r, "base", "user-profile", map[string]any{ "User": user, "IsOwner": isOwner, })}