diff options
| author | Martin Kagamino Lehoux <martin@lehoux.net> | 2023-10-24 08:30:28 +0200 |
|---|---|---|
| committer | Martin Kagamino Lehoux <martin@lehoux.net> | 2023-10-24 08:30:28 +0200 |
| commit | ed23d402fec268e163ec895748f43e3254ba3dfd (patch) | |
| tree | 1b3b214eabe9ff8d2a18803c64e47f54f6a1fd2d /auth/middlewares.go | |
| parent | a4f3f4ddfafe102232d3341cd432219a40a0d64e (diff) | |
refactor: Rename & include more featuresv0.2.0
Diffstat (limited to 'auth/middlewares.go')
| -rw-r--r-- | auth/middlewares.go | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/auth/middlewares.go b/auth/middlewares.go index 7f90677..1534b16 100644 --- a/auth/middlewares.go +++ b/auth/middlewares.go @@ -20,6 +20,16 @@ var ( type userContext struct{} +func UserFromContext[U any](ctx context.Context) (U, bool) { + user, ok := ctx.Value(userContext{}).(U) + return user, ok +} + +func LoginFromContext[U core.WithLanguage](ctx context.Context) core.Login[U] { + user, ok := UserFromContext[U](ctx) + return core.LoginFromUser(user, ok) +} + func Unauthorized(w http.ResponseWriter, err error) { w.WriteHeader(http.StatusUnauthorized) if err != nil { |
