Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
552664268b | ||
|
|
414757188e | ||
|
|
888d356b67 | ||
|
|
c776b25899 |
@@ -72,7 +72,11 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func getPrefixes(guildID string) []string {
|
func getPrefixes(guildID string) []string {
|
||||||
return []string{"G.", "g."}
|
guild, err := services.GuildService.Guild(guildID)
|
||||||
|
if err != nil || len(guild.Prefixes) == 0 {
|
||||||
|
return []string{"G$", "g$"}
|
||||||
|
}
|
||||||
|
return guild.Prefixes
|
||||||
}
|
}
|
||||||
|
|
||||||
func ErrorHandler(ErrorChan chan disgoman.CommandError) {
|
func ErrorHandler(ErrorChan chan disgoman.CommandError) {
|
||||||
|
|||||||
@@ -7,6 +7,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{
|
||||||
@@ -38,6 +39,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)
|
||||||
@@ -80,7 +82,7 @@ func removePrefixCommandFunc(ctx disgoman.Context, args []string) {
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
for _, a := range args {
|
for _, a := range args {
|
||||||
l := len(guild.Prefixes) - 1
|
l := len(guild.Prefixes)
|
||||||
for i := 0; i < l; i++ {
|
for i := 0; i < l; i++ {
|
||||||
if a == guild.Prefixes[i] {
|
if a == guild.Prefixes[i] {
|
||||||
guild.Prefixes = append(guild.Prefixes[:i], guild.Prefixes[i+1:]...)
|
guild.Prefixes = append(guild.Prefixes[:i], guild.Prefixes[i+1:]...)
|
||||||
@@ -90,6 +92,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
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user