mirror of
https://github.com/Fluffy-Bean/Lynxie.git
synced 2025-06-06 02:33:12 +00:00
User cmd.Args()
for extra values on commands
This commit is contained in:
parent
29bdf1b0ae
commit
5d67b2e2b0
2 changed files with 12 additions and 22 deletions
|
@ -71,7 +71,6 @@ func RegisterPorbCommands(a *app.App) {
|
||||||
func registerE621(a *app.App) app.Callback {
|
func registerE621(a *app.App) app.Callback {
|
||||||
return func(h *app.Handler, args []string) app.Error {
|
return func(h *app.Handler, args []string) app.Error {
|
||||||
var options struct {
|
var options struct {
|
||||||
Tags string
|
|
||||||
Order string
|
Order string
|
||||||
Rating string
|
Rating string
|
||||||
}
|
}
|
||||||
|
@ -80,7 +79,6 @@ func registerE621(a *app.App) app.Callback {
|
||||||
|
|
||||||
cmd.StringVar(&options.Order, "order", "random", "Search order")
|
cmd.StringVar(&options.Order, "order", "random", "Search order")
|
||||||
cmd.StringVar(&options.Rating, "rating", "e", "Search rating")
|
cmd.StringVar(&options.Rating, "rating", "e", "Search rating")
|
||||||
cmd.StringVar(&options.Tags, "tags", "", "Search tags")
|
|
||||||
|
|
||||||
cmd.Parse(args)
|
cmd.Parse(args)
|
||||||
|
|
||||||
|
@ -90,7 +88,7 @@ func registerE621(a *app.App) app.Callback {
|
||||||
"https://e621.net/posts.json/?limit=1&tags=order:%s+rating:%s+%s",
|
"https://e621.net/posts.json/?limit=1&tags=order:%s+rating:%s+%s",
|
||||||
options.Order,
|
options.Order,
|
||||||
options.Rating,
|
options.Rating,
|
||||||
options.Tags,
|
strings.Join(cmd.Args(), "+"),
|
||||||
),
|
),
|
||||||
nil,
|
nil,
|
||||||
)
|
)
|
||||||
|
|
|
@ -2,7 +2,6 @@ package tinyfox
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
||||||
"flag"
|
|
||||||
"fmt"
|
"fmt"
|
||||||
"net/http"
|
"net/http"
|
||||||
"slices"
|
"slices"
|
||||||
|
@ -89,34 +88,27 @@ func RegisterTinyfoxCommands(a *app.App) {
|
||||||
|
|
||||||
func registerAnimal(a *app.App) app.Callback {
|
func registerAnimal(a *app.App) app.Callback {
|
||||||
return func(h *app.Handler, args []string) app.Error {
|
return func(h *app.Handler, args []string) app.Error {
|
||||||
var options struct {
|
if len(args) < 1 {
|
||||||
Kind string
|
|
||||||
}
|
|
||||||
|
|
||||||
cmd := flag.NewFlagSet("", flag.ContinueOnError)
|
|
||||||
|
|
||||||
cmd.StringVar(&options.Kind, "kind", "", "Animal kind to search for")
|
|
||||||
|
|
||||||
cmd.Parse(args)
|
|
||||||
|
|
||||||
if options.Kind == "" {
|
|
||||||
return app.Error{
|
return app.Error{
|
||||||
Msg: "Animal name is required!",
|
Msg: "Animal name is required!",
|
||||||
Err: errors.New("animal name is required"),
|
Err: errors.New("animal name is required"),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if !slices.Contains(animals, options.Kind) {
|
|
||||||
alias, ok := animalAliases[options.Kind]
|
animal := args[0]
|
||||||
|
|
||||||
|
if !slices.Contains(animals, animal) {
|
||||||
|
alias, ok := animalAliases[animal]
|
||||||
if !ok {
|
if !ok {
|
||||||
return app.Error{
|
return app.Error{
|
||||||
Msg: fmt.Sprintf("Animal \"%s\" is invalid. The following animals are supported:\n%s", options.Kind, strings.Join(animals, ", ")),
|
Msg: fmt.Sprintf("Animal \"%s\" is invalid. The following animals are supported:\n%s", animal, strings.Join(animals, ", ")),
|
||||||
Err: errors.New("entered invalid animal name"),
|
Err: errors.New("entered invalid animal name"),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
options.Kind = alias
|
animal = alias
|
||||||
}
|
}
|
||||||
|
|
||||||
req, err := http.NewRequest(http.MethodGet, "https://api.tinyfox.dev/img?animal="+options.Kind, nil)
|
req, err := http.NewRequest(http.MethodGet, "https://api.tinyfox.dev/img?animal="+animal, nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return app.Error{
|
return app.Error{
|
||||||
Msg: "Failed to make request",
|
Msg: "Failed to make request",
|
||||||
|
@ -137,13 +129,13 @@ func registerAnimal(a *app.App) app.Callback {
|
||||||
Embed: &discordgo.MessageEmbed{
|
Embed: &discordgo.MessageEmbed{
|
||||||
Title: "Animal",
|
Title: "Animal",
|
||||||
Image: &discordgo.MessageEmbedImage{
|
Image: &discordgo.MessageEmbedImage{
|
||||||
URL: "attachment://image.png",
|
URL: "attachment://animal.png",
|
||||||
},
|
},
|
||||||
Color: utils.ColorFromRGB(255, 255, 255),
|
Color: utils.ColorFromRGB(255, 255, 255),
|
||||||
},
|
},
|
||||||
Files: []*discordgo.File{
|
Files: []*discordgo.File{
|
||||||
{
|
{
|
||||||
Name: "image.png",
|
Name: "animal.png",
|
||||||
ContentType: "",
|
ContentType: "",
|
||||||
Reader: res.Body,
|
Reader: res.Body,
|
||||||
},
|
},
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue