Pr 9039 (#9187)
* MM-11065: Allow to search and get archived channels from the API * Fixing more tests * Add some unit tests * Add includeDeleted parameter to session permissions check function * More test fixing * Adding archive channels list in channels search * Add restriction for archived channel edition * Reverting permissions checks modification * Changed the query parameter to include_deleted * Enable search archive channels as true by default * Adding tests for verify search on deleted channels * Allowing to override archive channels during the imports * Fixed test * Search in archive channels from the API must be explicitly requested * Removing includeDeleted parameter from GetChannelByName and GetChannelByNameForTeam * Back to ViewArchivedChannels config * Fixing tests * Reverting GetChannelByName parameter * Add include deleted parameter on GetChannel functions in plugins api * Fixing tests
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
65cd447a61
Коммит
5872bf9c2f
@@ -108,10 +108,10 @@ type API interface {
|
||||
GetChannel(channelId string) (*model.Channel, *model.AppError)
|
||||
|
||||
// GetChannelByName gets a channel by its name, given a team id.
|
||||
GetChannelByName(teamId, name string) (*model.Channel, *model.AppError)
|
||||
GetChannelByName(teamId, name string, includeDeleted bool) (*model.Channel, *model.AppError)
|
||||
|
||||
// GetChannelByNameForTeamName gets a channel by its name, given a team name.
|
||||
GetChannelByNameForTeamName(teamName, channelName string) (*model.Channel, *model.AppError)
|
||||
GetChannelByNameForTeamName(teamName, channelName string, includeDeleted bool) (*model.Channel, *model.AppError)
|
||||
|
||||
// GetDirectChannel gets a direct message channel.
|
||||
GetDirectChannel(userId1, userId2 string) (*model.Channel, *model.AppError)
|
||||
|
||||
@@ -1349,6 +1349,7 @@ func (s *apiRPCServer) GetChannel(args *Z_GetChannelArgs, returns *Z_GetChannelR
|
||||
type Z_GetChannelByNameArgs struct {
|
||||
A string
|
||||
B string
|
||||
C bool
|
||||
}
|
||||
|
||||
type Z_GetChannelByNameReturns struct {
|
||||
@@ -1356,8 +1357,8 @@ type Z_GetChannelByNameReturns struct {
|
||||
B *model.AppError
|
||||
}
|
||||
|
||||
func (g *apiRPCClient) GetChannelByName(teamId, name string) (*model.Channel, *model.AppError) {
|
||||
_args := &Z_GetChannelByNameArgs{teamId, name}
|
||||
func (g *apiRPCClient) GetChannelByName(teamId, name string, includeDeleted bool) (*model.Channel, *model.AppError) {
|
||||
_args := &Z_GetChannelByNameArgs{teamId, name, includeDeleted}
|
||||
_returns := &Z_GetChannelByNameReturns{}
|
||||
if err := g.client.Call("Plugin.GetChannelByName", _args, _returns); err != nil {
|
||||
log.Printf("RPC call to GetChannelByName API failed: %s", err.Error())
|
||||
@@ -1367,9 +1368,9 @@ func (g *apiRPCClient) GetChannelByName(teamId, name string) (*model.Channel, *m
|
||||
|
||||
func (s *apiRPCServer) GetChannelByName(args *Z_GetChannelByNameArgs, returns *Z_GetChannelByNameReturns) error {
|
||||
if hook, ok := s.impl.(interface {
|
||||
GetChannelByName(teamId, name string) (*model.Channel, *model.AppError)
|
||||
GetChannelByName(teamId, name string, includeDeleted bool) (*model.Channel, *model.AppError)
|
||||
}); ok {
|
||||
returns.A, returns.B = hook.GetChannelByName(args.A, args.B)
|
||||
returns.A, returns.B = hook.GetChannelByName(args.A, args.B, args.C)
|
||||
} else {
|
||||
return fmt.Errorf("API GetChannelByName called but not implemented.")
|
||||
}
|
||||
@@ -1379,6 +1380,7 @@ func (s *apiRPCServer) GetChannelByName(args *Z_GetChannelByNameArgs, returns *Z
|
||||
type Z_GetChannelByNameForTeamNameArgs struct {
|
||||
A string
|
||||
B string
|
||||
C bool
|
||||
}
|
||||
|
||||
type Z_GetChannelByNameForTeamNameReturns struct {
|
||||
@@ -1386,8 +1388,8 @@ type Z_GetChannelByNameForTeamNameReturns struct {
|
||||
B *model.AppError
|
||||
}
|
||||
|
||||
func (g *apiRPCClient) GetChannelByNameForTeamName(teamName, channelName string) (*model.Channel, *model.AppError) {
|
||||
_args := &Z_GetChannelByNameForTeamNameArgs{teamName, channelName}
|
||||
func (g *apiRPCClient) GetChannelByNameForTeamName(teamName, channelName string, includeDeleted bool) (*model.Channel, *model.AppError) {
|
||||
_args := &Z_GetChannelByNameForTeamNameArgs{teamName, channelName, includeDeleted}
|
||||
_returns := &Z_GetChannelByNameForTeamNameReturns{}
|
||||
if err := g.client.Call("Plugin.GetChannelByNameForTeamName", _args, _returns); err != nil {
|
||||
log.Printf("RPC call to GetChannelByNameForTeamName API failed: %s", err.Error())
|
||||
@@ -1397,9 +1399,9 @@ func (g *apiRPCClient) GetChannelByNameForTeamName(teamName, channelName string)
|
||||
|
||||
func (s *apiRPCServer) GetChannelByNameForTeamName(args *Z_GetChannelByNameForTeamNameArgs, returns *Z_GetChannelByNameForTeamNameReturns) error {
|
||||
if hook, ok := s.impl.(interface {
|
||||
GetChannelByNameForTeamName(teamName, channelName string) (*model.Channel, *model.AppError)
|
||||
GetChannelByNameForTeamName(teamName, channelName string, includeDeleted bool) (*model.Channel, *model.AppError)
|
||||
}); ok {
|
||||
returns.A, returns.B = hook.GetChannelByNameForTeamName(args.A, args.B)
|
||||
returns.A, returns.B = hook.GetChannelByNameForTeamName(args.A, args.B, args.C)
|
||||
} else {
|
||||
return fmt.Errorf("API GetChannelByNameForTeamName called but not implemented.")
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ func (p *HelpPlugin) OnConfigurationChange() error {
|
||||
return nil
|
||||
}
|
||||
|
||||
channel, err := p.API.GetChannelByName(p.ChannelName, team.Id)
|
||||
channel, err := p.API.GetChannelByName(p.ChannelName, team.Id, false)
|
||||
if err != nil {
|
||||
p.API.LogError("failed to find channel", "channel_name", p.ChannelName)
|
||||
return nil
|
||||
|
||||
@@ -308,13 +308,13 @@ func (_m *API) GetChannel(channelId string) (*model.Channel, *model.AppError) {
|
||||
return r0, r1
|
||||
}
|
||||
|
||||
// GetChannelByName provides a mock function with given fields: teamId, name
|
||||
func (_m *API) GetChannelByName(teamId string, name string) (*model.Channel, *model.AppError) {
|
||||
ret := _m.Called(teamId, name)
|
||||
// GetChannelByName provides a mock function with given fields: teamId, name, includeDeleted
|
||||
func (_m *API) GetChannelByName(teamId string, name string, includeDeleted bool) (*model.Channel, *model.AppError) {
|
||||
ret := _m.Called(teamId, name, includeDeleted)
|
||||
|
||||
var r0 *model.Channel
|
||||
if rf, ok := ret.Get(0).(func(string, string) *model.Channel); ok {
|
||||
r0 = rf(teamId, name)
|
||||
if rf, ok := ret.Get(0).(func(string, string, bool) *model.Channel); ok {
|
||||
r0 = rf(teamId, name, includeDeleted)
|
||||
} else {
|
||||
if ret.Get(0) != nil {
|
||||
r0 = ret.Get(0).(*model.Channel)
|
||||
@@ -322,8 +322,8 @@ func (_m *API) GetChannelByName(teamId string, name string) (*model.Channel, *mo
|
||||
}
|
||||
|
||||
var r1 *model.AppError
|
||||
if rf, ok := ret.Get(1).(func(string, string) *model.AppError); ok {
|
||||
r1 = rf(teamId, name)
|
||||
if rf, ok := ret.Get(1).(func(string, string, bool) *model.AppError); ok {
|
||||
r1 = rf(teamId, name, includeDeleted)
|
||||
} else {
|
||||
if ret.Get(1) != nil {
|
||||
r1 = ret.Get(1).(*model.AppError)
|
||||
@@ -333,13 +333,13 @@ func (_m *API) GetChannelByName(teamId string, name string) (*model.Channel, *mo
|
||||
return r0, r1
|
||||
}
|
||||
|
||||
// GetChannelByNameForTeamName provides a mock function with given fields: teamName, channelName
|
||||
func (_m *API) GetChannelByNameForTeamName(teamName string, channelName string) (*model.Channel, *model.AppError) {
|
||||
ret := _m.Called(teamName, channelName)
|
||||
// GetChannelByNameForTeamName provides a mock function with given fields: teamName, channelName, includeDeleted
|
||||
func (_m *API) GetChannelByNameForTeamName(teamName string, channelName string, includeDeleted bool) (*model.Channel, *model.AppError) {
|
||||
ret := _m.Called(teamName, channelName, includeDeleted)
|
||||
|
||||
var r0 *model.Channel
|
||||
if rf, ok := ret.Get(0).(func(string, string) *model.Channel); ok {
|
||||
r0 = rf(teamName, channelName)
|
||||
if rf, ok := ret.Get(0).(func(string, string, bool) *model.Channel); ok {
|
||||
r0 = rf(teamName, channelName, includeDeleted)
|
||||
} else {
|
||||
if ret.Get(0) != nil {
|
||||
r0 = ret.Get(0).(*model.Channel)
|
||||
@@ -347,8 +347,8 @@ func (_m *API) GetChannelByNameForTeamName(teamName string, channelName string)
|
||||
}
|
||||
|
||||
var r1 *model.AppError
|
||||
if rf, ok := ret.Get(1).(func(string, string) *model.AppError); ok {
|
||||
r1 = rf(teamName, channelName)
|
||||
if rf, ok := ret.Get(1).(func(string, string, bool) *model.AppError); ok {
|
||||
r1 = rf(teamName, channelName, includeDeleted)
|
||||
} else {
|
||||
if ret.Get(1) != nil {
|
||||
r1 = ret.Get(1).(*model.AppError)
|
||||
|
||||
Ссылка в новой задаче
Block a user