Commit 015c929b by Torkel Ödegaard

more account stuff

parent 992efda7
......@@ -5,11 +5,27 @@ import "github.com/gin-gonic/gin"
func init() {
addRoutes(func(self *HttpServer) {
self.addRoute("POST", "/api/account/collaborators/add", self.addCollaborator)
self.addRoute("GET", "/api/account/", self.getAccount)
})
}
type addCollaboratorDto struct {
Email string `json:"email" binding:"required"`
func (self *HttpServer) getAccount(c *gin.Context, auth *authContext) {
var account = auth.userAccount
model := accountInfoDto{
Login: account.Login,
Email: account.Email,
AccountName: account.AccountName,
}
for _, collaborator := range account.Collaborators {
model.Collaborators = append(model.Collaborators, &collaboratorInfoDto{
AccountId: collaborator.AccountId,
Role: collaborator.Role,
})
}
c.JSON(200, model)
}
func (self *HttpServer) addCollaborator(c *gin.Context, auth *authContext) {
......
package api
type accountInfoDto struct {
Login string `json:"login"`
Email string `json:"email"`
AccountName string `json:"accountName"`
Collaborators []*collaboratorInfoDto `json:"collaborators"`
}
type collaboratorInfoDto struct {
AccountId int `json:"accountId"`
Email string `json:"email"`
Role string `json:"role"`
}
type addCollaboratorDto struct {
Email string `json:"email" binding:"required"`
}
......@@ -28,7 +28,6 @@ func (self *HttpServer) registerUserPost(c *gin.Context) {
}
account := models.Account{
UserName: registerModel.Email,
Login: registerModel.Email,
Email: registerModel.Email,
Password: registerModel.Password,
......
......@@ -14,15 +14,17 @@ type CollaboratorLink struct {
type Account struct {
Id int `gorethink:"id"`
UserName string
Version int
Login string
Email string
AccountName string
Password string
NextDashboardId int
UsingAccountId int
Collaborators []CollaboratorLink
CreatedOn time.Time
ModifiedOn time.Time
LastLoginOn time.Time
}
func (account *Account) AddCollaborator(accountId int) error {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment