summaryrefslogtreecommitdiffstats
path: root/api4/team.go
diff options
context:
space:
mode:
authorMartin Kraft <martinkraft@gmail.com>2018-05-01 18:59:20 -0400
committerMartin Kraft <martinkraft@gmail.com>2018-05-01 18:59:20 -0400
commitff6c42309c4dd328b5841cfeef6b59ea59a4379c (patch)
treec2c3b4938588549ea69653a46d98b27f6fe37b80 /api4/team.go
parent2386acb3ddabd8827e21b1862c338a8b13a25de6 (diff)
parente73f1d73143ebba9c7e80d21c45bba9b61f2611c (diff)
downloadchat-ff6c42309c4dd328b5841cfeef6b59ea59a4379c.tar.gz
chat-ff6c42309c4dd328b5841cfeef6b59ea59a4379c.tar.bz2
chat-ff6c42309c4dd328b5841cfeef6b59ea59a4379c.zip
Merge remote-tracking branch 'origin/master' into advanced-permissions-phase-2
Diffstat (limited to 'api4/team.go')
-rw-r--r--api4/team.go21
1 files changed, 21 insertions, 0 deletions
diff --git a/api4/team.go b/api4/team.go
index 94035a770..023289579 100644
--- a/api4/team.go
+++ b/api4/team.go
@@ -32,6 +32,7 @@ func (api *API) InitTeam() {
api.BaseRoutes.Team.Handle("/image", api.ApiSessionRequiredTrustRequester(getTeamIcon)).Methods("GET")
api.BaseRoutes.Team.Handle("/image", api.ApiSessionRequired(setTeamIcon)).Methods("POST")
+ api.BaseRoutes.Team.Handle("/image", api.ApiSessionRequired(removeTeamIcon)).Methods("DELETE")
api.BaseRoutes.TeamMembers.Handle("", api.ApiSessionRequired(getTeamMembers)).Methods("GET")
api.BaseRoutes.TeamMembers.Handle("/ids", api.ApiSessionRequired(getTeamMembersByIds)).Methods("POST")
@@ -812,3 +813,23 @@ func setTeamIcon(c *Context, w http.ResponseWriter, r *http.Request) {
c.LogAudit("")
ReturnStatusOK(w)
}
+
+func removeTeamIcon(c *Context, w http.ResponseWriter, r *http.Request) {
+ c.RequireTeamId()
+ if c.Err != nil {
+ return
+ }
+
+ if !c.App.SessionHasPermissionToTeam(c.Session, c.Params.TeamId, model.PERMISSION_MANAGE_TEAM) {
+ c.SetPermissionError(model.PERMISSION_MANAGE_TEAM)
+ return
+ }
+
+ if err := c.App.RemoveTeamIcon(c.Params.TeamId); err != nil {
+ c.Err = err
+ return
+ }
+
+ c.LogAudit("")
+ ReturnStatusOK(w)
+}