]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/Cryptoportfolio/Front.git/blobdiff - api/routes.go
User roles.
[perso/Immae/Projets/Cryptomonnaies/Cryptoportfolio/Front.git] / api / routes.go
index d7e712c7c5f0495717ef850e88695a401781037c..3adbfe95b1a9655a5fa7dc3d3a13b75019128b4b 100644 (file)
@@ -25,6 +25,9 @@ var Groups = []Group{
                []Route{
                        {"POST", []gin.HandlerFunc{Signup}, "/signup"},
                        {"POST", []gin.HandlerFunc{Signin}, "/signin"},
+                       {"POST", []gin.HandlerFunc{PasswordReset}, "/passwordreset"},
+                       {"POST", []gin.HandlerFunc{ChangePassword}, "/changepassword"},
+                       {"POST", []gin.HandlerFunc{ConfirmEmail}, "/confirmemail"},
                },
        },
        {
@@ -41,8 +44,22 @@ var Groups = []Group{
                []Route{
                        {"GET", []gin.HandlerFunc{GetMarketConfig}, "/:name"},
                        {"POST", []gin.HandlerFunc{UpdateMarketConfig}, "/:name/update"},
+                       {"GET", []gin.HandlerFunc{TestMarketCredentials}, "/:name/test-credentials"},
+                       {"GET", []gin.HandlerFunc{GetPortfolio}, "/:name/portfolio"},
                },
        },
+       {
+               "/user",
+               []Middleware{JwtAuth, UserConfirmed, OtpAuth},
+               []Route{
+                       {"GET", []gin.HandlerFunc{UserAccount}, "/account"},
+               },
+       },
+       {
+               "/admin",
+               []Middleware{JwtAuth, UserConfirmed, UserIsAdmin, OtpAuth},
+               []Route{},
+       },
 }
 
 func Signup(c *gin.Context) {
@@ -111,6 +128,24 @@ func GetMarketConfig(c *gin.Context) {
        RunQuery(query, c)
 }
 
+func TestMarketCredentials(c *gin.Context) {
+       query := &TestMarketCredentialsQuery{}
+
+       query.In.User = GetUser(c)
+       query.In.Market = c.Param("name")
+
+       RunQuery(query, c)
+}
+
+func GetPortfolio(c *gin.Context) {
+       query := &GetPortfolioQuery{}
+
+       query.In.User = GetUser(c)
+       query.In.Market = c.Param("name")
+
+       RunQuery(query, c)
+}
+
 func UpdateMarketConfig(c *gin.Context) {
        query := &UpdateMarketConfigQuery{}
 
@@ -121,3 +156,36 @@ func UpdateMarketConfig(c *gin.Context) {
 
        RunQuery(query, c)
 }
+
+func PasswordReset(c *gin.Context) {
+       query := &PasswordResetQuery{}
+
+       query.In.Email = c.PostForm("email")
+
+       RunQuery(query, c)
+}
+
+func ChangePassword(c *gin.Context) {
+       query := &ChangePasswordQuery{}
+
+       query.In.Token = c.PostForm("token")
+       query.In.Password = c.PostForm("password")
+
+       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)
+}