package commands import ( "strings" "github.com/bwmarrin/discordgo" "PermissionGacha/modules/starboard" ) func handleStarCommand(s *discordgo.Session, args []string, m *discordgo.MessageCreate) error { if len(args) == 1 { s.ChannelMessageSend(m.ChannelID, "**STAR > **It doesn't seem like you've sent a valid message link!") return nil } linkSplit := strings.SplitN(args[1], "/", 7) if len(linkSplit) < 7 { s.ChannelMessageSend(m.ChannelID, "**STAR > **It doesn't seem like you've sent a valid message link!") return nil } if linkSplit[0] != "https:" && linkSplit[0] != "http:" { s.ChannelMessageSend(m.ChannelID, "**STAR > **It doesn't seem like you've sent a valid message link!") return nil } if linkSplit[2] != "discordapp.com" && !strings.HasSuffix(linkSplit[2], ".discordapp.com") { s.ChannelMessageSend(m.ChannelID, "**STAR > **It doesn't seem like you've sent a valid message link!") return nil } if linkSplit[3] != "channels" { s.ChannelMessageSend(m.ChannelID, "**STAR > **It doesn't seem like you've sent a valid message link!") return nil } if linkSplit[4] != m.GuildID { s.ChannelMessageSend(m.ChannelID, "**STAR > **It doesn't seem like you've sent a valid message link!") return nil } err := starboard.AddReact(s, linkSplit[5], linkSplit[6]) if err != nil { s.ChannelMessageSend(m.ChannelID, "**STAR > **It doesn't seem like you've sent a valid message link!") } return nil }