28 lines
545 B
Go
28 lines
545 B
Go
package api
|
|
|
|
import (
|
|
"net/http"
|
|
|
|
"cockpit/internal/domain"
|
|
"cockpit/internal/middleware"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
func (h *Handler) Me(c *gin.Context) {
|
|
uidAny, _ := c.Get(middleware.CtxUserIDKey)
|
|
uid, _ := uidAny.(uint64)
|
|
perms, _ := c.Get(middleware.CtxPermCodesKey)
|
|
|
|
var user domain.User
|
|
_ = h.db.Where("id = ?", uid).First(&user).Error
|
|
c.JSON(http.StatusOK, domain.OK(gin.H{
|
|
"user": gin.H{
|
|
"id": user.ID,
|
|
"username": user.Username,
|
|
"displayName": user.DisplayName,
|
|
},
|
|
"permissions": perms,
|
|
}))
|
|
}
|