]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/Cryptoportfolio/Front.git/blobdiff - api/routes.go
Error flags.
[perso/Immae/Projets/Cryptomonnaies/Cryptoportfolio/Front.git] / api / routes.go
index d7b316d885517e4a720aa3b1bdeb4ffa1037e7e0..671d22e141eda88a24ec67ed5427de52f9663dda 100644 (file)
@@ -27,6 +27,7 @@ var Groups = []Group{
                        {"POST", []gin.HandlerFunc{Signin}, "/signin"},
                        {"POST", []gin.HandlerFunc{PasswordReset}, "/passwordreset"},
                        {"POST", []gin.HandlerFunc{ChangePassword}, "/changepassword"},
+                       {"POST", []gin.HandlerFunc{ConfirmEmail}, "/confirmemail"},
                },
        },
        {
@@ -47,6 +48,20 @@ var Groups = []Group{
                        {"GET", []gin.HandlerFunc{GetPortfolio}, "/:name/portfolio"},
                },
        },
+       {
+               "/user",
+               []Middleware{JwtAuth, UserConfirmed, OtpAuth},
+               []Route{
+                       {"GET", []gin.HandlerFunc{UserAccount}, "/account"},
+               },
+       },
+       {
+               "/admin",
+               []Middleware{JwtAuth, UserConfirmed, UserIsAdmin, OtpAuth},
+               []Route{
+                       {"GET", []gin.HandlerFunc{AdminGetAllPortfolios}, "/portfolios"},
+               },
+       },
 }
 
 func Signup(c *gin.Context) {
@@ -84,7 +99,7 @@ func OtpEnrollment(c *gin.Context) {
 
        qrPng, secret, err := query.Run()
        if err != nil {
-               WriteJsonResponse(ErrorResponse(err.Code, err.UserMessage), c)
+               WriteJsonResponse(ErrorResponse(err.Flag(), err.UserMessage), c)
                c.Error(err)
                return
        }
@@ -160,3 +175,27 @@ func ChangePassword(c *gin.Context) {
 
        RunQuery(query, c)
 }
+
+func ConfirmEmail(c *gin.Context) {
+       query := &ConfirmEmailQuery{}
+
+       query.In.Token = c.PostForm("token")
+
+       RunQuery(query, c)
+}
+
+func UserAccount(c *gin.Context) {
+       query := &UserAccountQuery{}
+
+       query.In.User = GetUser(c)
+
+       RunQuery(query, c)
+}
+
+func AdminGetAllPortfolios(c *gin.Context) {
+       query := &GetAllPortfoliosQuery{}
+
+       query.In.Market = "poloniex"
+
+       RunQuery(query, c)
+}