feat(invite): worked on pending invitations list, revoke invite now works, #2353
This commit is contained in:
@@ -94,6 +94,7 @@ func Register(r *macaron.Macaron) {
|
||||
// invites
|
||||
r.Get("/invites", wrap(GetPendingOrgInvites))
|
||||
r.Post("/invites", bind(dtos.AddInviteForm{}), wrap(AddOrgInvite))
|
||||
r.Patch("/invites/:id/revoke", wrap(RevokeInvite))
|
||||
}, regOrgAdmin)
|
||||
|
||||
// create new org
|
||||
|
||||
+17
-2
@@ -10,7 +10,7 @@ import (
|
||||
)
|
||||
|
||||
func GetPendingOrgInvites(c *middleware.Context) Response {
|
||||
query := m.GetTempUsersForOrgQuery{OrgId: c.OrgId}
|
||||
query := m.GetTempUsersForOrgQuery{OrgId: c.OrgId, Status: m.TmpUserInvitePending}
|
||||
|
||||
if err := bus.Dispatch(&query); err != nil {
|
||||
return ApiError(500, "Failed to get invites from db", err)
|
||||
@@ -47,10 +47,11 @@ func AddOrgInvite(c *middleware.Context, inviteDto dtos.AddInviteForm) Response
|
||||
cmd.OrgId = c.OrgId
|
||||
cmd.Email = inviteDto.Email
|
||||
cmd.Name = inviteDto.Name
|
||||
cmd.IsInvite = true
|
||||
cmd.Status = m.TmpUserInvitePending
|
||||
cmd.InvitedByUserId = c.UserId
|
||||
cmd.Code = util.GetRandomString(30)
|
||||
cmd.Role = inviteDto.Role
|
||||
cmd.RemoteAddr = c.Req.RemoteAddr
|
||||
|
||||
if err := bus.Dispatch(&cmd); err != nil {
|
||||
return ApiError(500, "Failed to save invite to database", err)
|
||||
@@ -77,3 +78,17 @@ func AddOrgInvite(c *middleware.Context, inviteDto dtos.AddInviteForm) Response
|
||||
|
||||
return ApiSuccess("ok, done!")
|
||||
}
|
||||
|
||||
func RevokeInvite(c *middleware.Context) Response {
|
||||
cmd := m.UpdateTempUserStatusCommand{
|
||||
Id: c.ParamsInt64(":id"),
|
||||
OrgId: c.OrgId,
|
||||
Status: m.TmpUserRevoked,
|
||||
}
|
||||
|
||||
if err := bus.Dispatch(&cmd); err != nil {
|
||||
return ApiError(500, "Failed to update invite status", err)
|
||||
}
|
||||
|
||||
return ApiSuccess("Invite revoked")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user