From 9a4f3ce1e5b22a297eeb00b2aaff44f88304ae8c Mon Sep 17 00:00:00 2001 From: George Goldberg Date: Mon, 8 Oct 2018 16:39:03 +0100 Subject: MM-12251: Add flag to MoveChannel to remove all deactivated users. (#9515) --- cmd/mattermost/commands/channel.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'cmd') diff --git a/cmd/mattermost/commands/channel.go b/cmd/mattermost/commands/channel.go index 7fb8fea8c..82fb1e966 100644 --- a/cmd/mattermost/commands/channel.go +++ b/cmd/mattermost/commands/channel.go @@ -117,6 +117,7 @@ func init() { ChannelCreateCmd.Flags().Bool("private", false, "Create a private channel.") MoveChannelsCmd.Flags().String("username", "", "Required. Username who is moving the channel.") + MoveChannelsCmd.Flags().Bool("remove-deactivated-users", false, "Automatically remove any deactivated users from the channel before moving it.") DeleteChannelsCmd.Flags().Bool("confirm", false, "Confirm you really want to delete the channels.") @@ -366,6 +367,8 @@ func moveChannelsCmdF(command *cobra.Command, args []string) error { } user := getUserFromUserArg(a, username) + removeDeactivatedMembers, _ := command.Flags().GetBool("remove-deactivated-users") + channels := getChannelsFromChannelArgs(a, args[1:]) for i, channel := range channels { if channel == nil { @@ -373,7 +376,7 @@ func moveChannelsCmdF(command *cobra.Command, args []string) error { continue } originTeamID := channel.TeamId - if err := moveChannel(a, team, channel, user); err != nil { + if err := moveChannel(a, team, channel, user, removeDeactivatedMembers); err != nil { CommandPrintErrorln("Unable to move channel '" + channel.Name + "' error: " + err.Error()) } else { CommandPrettyPrintln("Moved channel '" + channel.Name + "' to " + team.Name + "(" + team.Id + ") from " + originTeamID + ".") @@ -383,10 +386,10 @@ func moveChannelsCmdF(command *cobra.Command, args []string) error { return nil } -func moveChannel(a *app.App, team *model.Team, channel *model.Channel, user *model.User) *model.AppError { +func moveChannel(a *app.App, team *model.Team, channel *model.Channel, user *model.User, removeDeactivatedMembers bool) *model.AppError { oldTeamId := channel.TeamId - if err := a.MoveChannel(team, channel, user); err != nil { + if err := a.MoveChannel(team, channel, user, removeDeactivatedMembers); err != nil { return err } -- cgit v1.2.3-1-g7c22