[MM-47538] Pass handler functions directly while creating API endpoints (#21441)

* Pass handler functions directly without permission check middlewares

* Create necessary handlers in api4/group_local.go

* Refactor GetGroupsByTeam, GetGroupsByChannel to a common function for local and API
Этот коммит содержится в:
Shivashis Padhi
2022-10-20 10:08:09 +05:30
коммит произвёл GitHub
родитель 5ab0d6c756
Коммит 312bf283a8
4 изменённых файлов: 351 добавлений и 105 удалений

Просмотреть файл

@@ -3,7 +3,39 @@
package api4
import (
"net/http"
)
func (api *API) InitGroupLocal() {
api.BaseRoutes.Channels.Handle("/{channel_id:[A-Za-z0-9]+}/groups", api.APILocal(getGroupsByChannel)).Methods("GET")
api.BaseRoutes.Teams.Handle("/{team_id:[A-Za-z0-9]+}/groups", api.APILocal(getGroupsByTeam)).Methods("GET")
api.BaseRoutes.Channels.Handle("/{channel_id:[A-Za-z0-9]+}/groups", api.APILocal(getGroupsByChannelLocal)).Methods("GET")
api.BaseRoutes.Teams.Handle("/{team_id:[A-Za-z0-9]+}/groups", api.APILocal(getGroupsByTeamLocal)).Methods("GET")
}
func getGroupsByChannelLocal(c *Context, w http.ResponseWriter, r *http.Request) {
c.RequireChannelId()
if c.Err != nil {
return
}
b, appErr := getGroupsByChannelCommon(c, r)
if appErr != nil {
c.Err = appErr
return
}
w.Write(b)
}
func getGroupsByTeamLocal(c *Context, w http.ResponseWriter, r *http.Request) {
c.RequireTeamId()
if c.Err != nil {
return
}
b, appError := getGroupsByTeamCommon(c, r)
if appError != nil {
c.Err = appError
return
}
w.Write(b)
}