Files
mostlymatter/server/channels/store/searchlayer/team_layer.go
2023-12-04 18:34:57 +01:00

51 строка
1.5 KiB
Go

// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
package searchlayer
import (
model "github.com/mattermost/mattermost/server/public/model"
"github.com/mattermost/mattermost/server/public/shared/request"
store "github.com/mattermost/mattermost/server/v8/channels/store"
)
type SearchTeamStore struct {
store.TeamStore
rootStore *SearchStore
}
func (s SearchTeamStore) SaveMember(teamMember *model.TeamMember, maxUsersPerTeam int) (*model.TeamMember, error) {
// TODO: Use the actuall request context from the App layer
// https://mattermost.atlassian.net/browse/MM-55736
rctx := request.EmptyContext(s.rootStore.Logger())
member, err := s.TeamStore.SaveMember(teamMember, maxUsersPerTeam)
if err == nil {
s.rootStore.indexUserFromID(rctx, member.UserId)
}
return member, err
}
func (s SearchTeamStore) UpdateMember(rctx request.CTX, teamMember *model.TeamMember) (*model.TeamMember, error) {
member, err := s.TeamStore.UpdateMember(rctx, teamMember)
if err == nil {
s.rootStore.indexUserFromID(rctx, member.UserId)
}
return member, err
}
func (s SearchTeamStore) RemoveMember(rctx request.CTX, teamId string, userId string) error {
err := s.TeamStore.RemoveMember(rctx, teamId, userId)
if err == nil {
s.rootStore.indexUserFromID(rctx, userId)
}
return err
}
func (s SearchTeamStore) RemoveAllMembersByUser(rctx request.CTX, userId string) error {
err := s.TeamStore.RemoveAllMembersByUser(rctx, userId)
if err == nil {
s.rootStore.indexUserFromID(rctx, userId)
}
return err
}