mirror of
https://github.com/grafana/grafana.git
synced 2025-02-11 16:15:42 -06:00
teams: added delete team guard
This commit is contained in:
parent
8e7a8282c1
commit
23231e6d51
@ -155,7 +155,7 @@ func (hs *HTTPServer) registerRoutes() {
|
||||
// team (admin permission required)
|
||||
apiRoute.Group("/teams", func(teamsRoute routing.RouteRegister) {
|
||||
teamsRoute.Post("/", bind(m.CreateTeamCommand{}), Wrap(hs.CreateTeam))
|
||||
teamsRoute.Put("/:teamId", bind(m.UpdateTeamCommand{}), Wrap(hs.UpdateTeam))
|
||||
teamsRoute.Put("/:teamId", bind(m.UpdateTeamCommand{}), Wrap(UpdateTeam))
|
||||
teamsRoute.Delete("/:teamId", Wrap(DeleteTeamByID))
|
||||
teamsRoute.Get("/:teamId/members", Wrap(GetTeamMembers))
|
||||
teamsRoute.Post("/:teamId/members", bind(m.AddTeamMemberCommand{}), Wrap(AddTeamMember))
|
||||
|
@ -38,12 +38,12 @@ func (hs *HTTPServer) CreateTeam(c *m.ReqContext, cmd m.CreateTeamCommand) Respo
|
||||
}
|
||||
|
||||
// PUT /api/teams/:teamId
|
||||
func (hs *HTTPServer) UpdateTeam(c *m.ReqContext, cmd m.UpdateTeamCommand) Response {
|
||||
func UpdateTeam(c *m.ReqContext, cmd m.UpdateTeamCommand) Response {
|
||||
cmd.OrgId = c.OrgId
|
||||
cmd.Id = c.ParamsInt64(":teamId")
|
||||
|
||||
if err := teams.CanUpdateTeam(cmd.OrgId, cmd.Id, c.SignedInUser); err != nil {
|
||||
return Error(403, "User not allowed to update team", err)
|
||||
return Error(403, "Not allowed to update team", err)
|
||||
}
|
||||
|
||||
if err := bus.Dispatch(&cmd); err != nil {
|
||||
@ -58,11 +58,19 @@ func (hs *HTTPServer) UpdateTeam(c *m.ReqContext, cmd m.UpdateTeamCommand) Respo
|
||||
|
||||
// DELETE /api/teams/:teamId
|
||||
func DeleteTeamByID(c *m.ReqContext) Response {
|
||||
if err := bus.Dispatch(&m.DeleteTeamCommand{OrgId: c.OrgId, Id: c.ParamsInt64(":teamId")}); err != nil {
|
||||
orgId := c.OrgId
|
||||
teamId := c.ParamsInt64(":teamId")
|
||||
user := c.SignedInUser
|
||||
|
||||
if err := teams.CanUpdateTeam(orgId, teamId, user); err != nil {
|
||||
return Error(403, "Not allowed to delete team", err)
|
||||
}
|
||||
|
||||
if err := bus.Dispatch(&m.DeleteTeamCommand{OrgId: orgId, Id: teamId}); err != nil {
|
||||
if err == m.ErrTeamNotFound {
|
||||
return Error(404, "Failed to delete Team. ID not found", nil)
|
||||
}
|
||||
return Error(500, "Failed to update Team", err)
|
||||
return Error(500, "Failed to delete Team", err)
|
||||
}
|
||||
return Success("Team deleted")
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user