Delete channel once request is accepted/declined
This commit is contained in:
parent
71bec93b58
commit
d7c884bf1d
103
main.go
103
main.go
@ -259,55 +259,62 @@ var (
|
||||
log.Println("Error sending message to the ticket channel:", err)
|
||||
}
|
||||
},
|
||||
"accept": func(client *discordgo.Session, i *discordgo.InteractionCreate) {
|
||||
data := i.MessageComponentData().CustomID
|
||||
parts := strings.Split(data, "_")
|
||||
if len(parts) != 3 {
|
||||
log.Println("Invalid accept button custom ID")
|
||||
return
|
||||
}
|
||||
userID := parts[1]
|
||||
softwareType := parts[2]
|
||||
|
||||
"accept": func(client *discordgo.Session, i *discordgo.InteractionCreate) {
|
||||
data := i.MessageComponentData().CustomID
|
||||
parts := strings.Split(data, "_")
|
||||
if len(parts) != 3 {
|
||||
log.Println("Invalid accept button custom ID")
|
||||
return
|
||||
}
|
||||
userID := parts[1]
|
||||
softwareType := parts[2]
|
||||
|
||||
member, err := client.GuildMember(i.GuildID, userID)
|
||||
if err != nil {
|
||||
log.Println("Error fetching member info:", err)
|
||||
return
|
||||
}
|
||||
var userName string
|
||||
if member.Nick != "" {
|
||||
userName = member.Nick
|
||||
} else if member.User.GlobalName != "" {
|
||||
userName = member.User.GlobalName
|
||||
} else {
|
||||
userName = member.User.Username
|
||||
}
|
||||
|
||||
reset(userName, softwareType)
|
||||
|
||||
err = client.InteractionRespond(i.Interaction, &discordgo.InteractionResponse{
|
||||
Type: discordgo.InteractionResponseChannelMessageWithSource,
|
||||
Data: &discordgo.InteractionResponseData{
|
||||
Content: "Request accepted and processed.",
|
||||
Flags: discordgo.MessageFlagsEphemeral,
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
log.Println("Error sending interaction response:", err)
|
||||
}
|
||||
|
||||
|
||||
member, err := client.GuildMember(i.GuildID, userID)
|
||||
if err != nil {
|
||||
log.Println("Error fetching member info:", err)
|
||||
return
|
||||
}
|
||||
var userName string
|
||||
if member.Nick != "" {
|
||||
userName = member.Nick
|
||||
} else if member.User.GlobalName != "" {
|
||||
userName = member.User.GlobalName
|
||||
} else {
|
||||
userName = member.User.Username
|
||||
}
|
||||
_,err = client.ChannelDelete(i.ChannelID)
|
||||
if err != nil {
|
||||
log.Println("Error deleting channel:", err)
|
||||
}
|
||||
|
||||
reset(userName, softwareType)
|
||||
|
||||
err = client.InteractionRespond(i.Interaction, &discordgo.InteractionResponse{
|
||||
Type: discordgo.InteractionResponseChannelMessageWithSource,
|
||||
Data: &discordgo.InteractionResponseData{
|
||||
Content: "Request accepted and processed.",
|
||||
Flags: discordgo.MessageFlagsEphemeral,
|
||||
},
|
||||
})
|
||||
if err != nil {
|
||||
log.Println("Error sending interaction response:", err)
|
||||
}
|
||||
dmChannel, err := client.UserChannelCreate(userID)
|
||||
if err != nil {
|
||||
log.Println("Error creating DM channel:", err)
|
||||
return
|
||||
}
|
||||
|
||||
dmChannel, err := client.UserChannelCreate(userID)
|
||||
if err != nil {
|
||||
log.Println("Error creating DM channel:", err)
|
||||
return
|
||||
}
|
||||
|
||||
_, err = client.ChannelMessageSend(dmChannel.ID, fmt.Sprintf("Your reset request for %s has been accepted and processed.", softwareType))
|
||||
if err != nil {
|
||||
log.Println("Error sending DM:", err)
|
||||
}
|
||||
},
|
||||
_, err = client.ChannelMessageSend(dmChannel.ID, fmt.Sprintf("Your reset request for %s has been accepted and processed.", softwareType))
|
||||
if err != nil {
|
||||
log.Println("Error sending DM:", err)
|
||||
}
|
||||
},
|
||||
|
||||
"decline": func(client *discordgo.Session, i *discordgo.InteractionCreate) {
|
||||
data := i.MessageComponentData().CustomID
|
||||
@ -318,7 +325,6 @@ var (
|
||||
}
|
||||
userID := parts[1]
|
||||
|
||||
|
||||
err := client.InteractionRespond(i.Interaction, &discordgo.InteractionResponse{
|
||||
Type: discordgo.InteractionResponseChannelMessageWithSource,
|
||||
Data: &discordgo.InteractionResponseData{
|
||||
@ -330,6 +336,13 @@ var (
|
||||
log.Println("Error sending interaction response:", err)
|
||||
}
|
||||
|
||||
|
||||
_,err = client.ChannelDelete(i.ChannelID)
|
||||
if err != nil {
|
||||
log.Println("Error deleting channel:", err)
|
||||
}
|
||||
|
||||
|
||||
dmChannel, err := client.UserChannelCreate(userID)
|
||||
if err != nil {
|
||||
log.Println("Error creating DM channel:", err)
|
||||
|
Loading…
Reference in New Issue
Block a user