remove duplicate prefixes

development v0.0.43
DustyP 5 years ago
parent 888d356b67
commit 414757188e

@ -8,6 +8,7 @@ import (
"github.com/dustinpianalto/geeksbot" "github.com/dustinpianalto/geeksbot"
"github.com/dustinpianalto/geeksbot/internal/discord_utils" "github.com/dustinpianalto/geeksbot/internal/discord_utils"
"github.com/dustinpianalto/geeksbot/internal/services" "github.com/dustinpianalto/geeksbot/internal/services"
"github.com/dustinpianalto/geeksbot/internal/utils"
) )
var AddPrefixCommand = &disgoman.Command{ var AddPrefixCommand = &disgoman.Command{
@ -39,6 +40,7 @@ func addPrefixCommandFunc(ctx disgoman.Context, args []string) {
} }
} else { } else {
guild.Prefixes = append(guild.Prefixes, args...) guild.Prefixes = append(guild.Prefixes, args...)
guild.Prefixes = utils.RemoveDuplicateStrings(guild.Prefixes)
guild, err = services.GuildService.UpdateGuild(guild) guild, err = services.GuildService.UpdateGuild(guild)
if err != nil { if err != nil {
discord_utils.SendErrorMessage(ctx, "Error adding prefixes to guild.", err) discord_utils.SendErrorMessage(ctx, "Error adding prefixes to guild.", err)
@ -92,6 +94,8 @@ func removePrefixCommandFunc(ctx disgoman.Context, args []string) {
} }
} }
} }
removed = utils.RemoveDuplicateStrings(removed)
guild.Prefixes = utils.RemoveDuplicateStrings(guild.Prefixes)
guild, err = services.GuildService.UpdateGuild(guild) guild, err = services.GuildService.UpdateGuild(guild)
if err != nil { if err != nil {
discord_utils.SendErrorMessage(ctx, "Error removing prefixes from guild.", err) discord_utils.SendErrorMessage(ctx, "Error removing prefixes from guild.", err)

@ -1 +1,14 @@
package utils package utils
func RemoveDuplicateStrings(s []string) []string {
keys := make(map[string]bool)
o := []string{}
for _, e := range s {
if _, v := keys[e]; !v {
keys[e] = true
o = append(o, e)
}
}
return o
}

Loading…
Cancel
Save