package user import ( "nixcn-cms/data" "time" "github.com/gin-gonic/gin" "github.com/google/uuid" ) func Info(c *gin.Context) { data := new(data.User) userId, ok := c.Get("user_id") if !ok { c.JSON(404, gin.H{ "status": "user not found", }) return } // Get user from database err := data.GetByUserId(userId.(uuid.UUID)) if err != nil { c.JSON(404, gin.H{ "status": "user not found", }) return } // Set time nil if time is zero for k, v := range data.Checkin { if t, ok := v.(time.Time); ok && t.IsZero() { data.Checkin[k] = nil } } c.JSON(200, gin.H{ "user_id": data.UserId, "email": data.Email, "type": data.Type, "nickname": data.Nickname, "subtitle": data.Subtitle, "avatar": data.Avatar, "checkin": data.Checkin, "permission_level": data.PermissionLevel, }) }