package ytrssil import ( "errors" "net/http" "github.com/gin-gonic/gin" "gitea.theedgeofrage.com/TheEdgeOfRage/ytrssil-api/db" "gitea.theedgeofrage.com/TheEdgeOfRage/ytrssil-api/models" ) func (s *server) CreateUser(c *gin.Context) { var user models.User err := c.ShouldBindJSON(&user) if err != nil { c.AbortWithStatusJSON(http.StatusBadRequest, gin.H{"error": err.Error()}) return } err = s.handler.CreateUser(c.Request.Context(), user) if err != nil { if errors.Is(err, db.ErrUserExists) { c.AbortWithStatusJSON(http.StatusConflict, gin.H{"error": err.Error()}) return } c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) return } c.JSON(http.StatusOK, gin.H{"msg": "user created"}) }