modularised webserver and auth systems
This commit is contained in:
9
pkg/contexts/currentuser.go
Normal file
9
pkg/contexts/currentuser.go
Normal file
@@ -0,0 +1,9 @@
|
||||
package contexts
|
||||
|
||||
import (
|
||||
"projectreshoot/internal/models"
|
||||
|
||||
"git.haelnorr.com/h/golib/hwsauth"
|
||||
)
|
||||
|
||||
var CurrentUser hwsauth.ContextLoader[*models.User]
|
||||
@@ -1,25 +0,0 @@
|
||||
package contexts
|
||||
|
||||
import (
|
||||
"context"
|
||||
"projectreshoot/internal/models"
|
||||
)
|
||||
|
||||
type AuthenticatedUser struct {
|
||||
*models.User
|
||||
Fresh int64
|
||||
}
|
||||
|
||||
// Return a new context with the user added in
|
||||
func SetUser(ctx context.Context, u *AuthenticatedUser) context.Context {
|
||||
return context.WithValue(ctx, contextKeyAuthorizedUser, u)
|
||||
}
|
||||
|
||||
// Retrieve a user from the given context. Returns nil if not set
|
||||
func GetUser(ctx context.Context) *AuthenticatedUser {
|
||||
user, ok := ctx.Value(contextKeyAuthorizedUser).(*AuthenticatedUser)
|
||||
if !ok {
|
||||
return nil
|
||||
}
|
||||
return user
|
||||
}
|
||||
@@ -15,6 +15,7 @@
|
||||
--breakpoint-xl: 80rem;
|
||||
--container-md: 28rem;
|
||||
--container-4xl: 56rem;
|
||||
--container-7xl: 80rem;
|
||||
--text-xs: 0.75rem;
|
||||
--text-xs--line-height: calc(1 / 0.75);
|
||||
--text-sm: 0.875rem;
|
||||
@@ -326,8 +327,8 @@
|
||||
.ml-0 {
|
||||
margin-left: calc(var(--spacing) * 0);
|
||||
}
|
||||
.ml-\[40px\] {
|
||||
margin-left: 40px;
|
||||
.ml-10 {
|
||||
margin-left: calc(var(--spacing) * 10);
|
||||
}
|
||||
.ml-auto {
|
||||
margin-left: auto;
|
||||
@@ -424,6 +425,9 @@
|
||||
.max-w-4xl {
|
||||
max-width: var(--container-4xl);
|
||||
}
|
||||
.max-w-7xl {
|
||||
max-width: var(--container-7xl);
|
||||
}
|
||||
.max-w-100 {
|
||||
max-width: calc(var(--spacing) * 100);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user