49 lines
1.3 KiB
Go
49 lines
1.3 KiB
Go
package plugins
|
||
|
||
import (
|
||
"fmt"
|
||
"runtime"
|
||
"strings"
|
||
"ymgb/database"
|
||
"ymgb/utils"
|
||
|
||
"git.nix13.pw/scuroneko/laniakea"
|
||
)
|
||
|
||
func RegisterService() *laniakea.Plugin[database.Context] {
|
||
p := laniakea.NewPlugin[database.Context]("service")
|
||
p.AddPayload(p.NewCommand(generalClose, "general.close"))
|
||
|
||
p.AddCommand(p.NewCommand(about, "about"))
|
||
p.AddCommand(p.NewCommand(about, "о боте").SkipCommandAutoGen())
|
||
return p
|
||
}
|
||
|
||
func about(ctx *laniakea.MsgContext, _ *database.Context) {
|
||
formatVersion := func() string {
|
||
parts := strings.Split(laniakea.VersionString, "-")
|
||
main := parts[0]
|
||
if len(parts) > 1 {
|
||
beta := strings.Join(strings.Split(parts[1], "."), " ")
|
||
return main + " " + beta
|
||
}
|
||
return main
|
||
}
|
||
out := []string{
|
||
fmt.Sprintf("Версия Go: %s", runtime.Version()[2:]),
|
||
fmt.Sprintf("Версия Laniakea: %s", formatVersion()),
|
||
fmt.Sprintf("Время сборки: %s", utils.BuildTime),
|
||
fmt.Sprintf("Git хеш: %s", utils.GitCommit),
|
||
}
|
||
|
||
kb := laniakea.NewInlineKeyboard(2)
|
||
kb.AddUrlButtonStyle("Канал", laniakea.ButtonStylePrimary, "https://t.me/ym_gbot_news")
|
||
kb.AddUrlButtonStyle("Чат", laniakea.ButtonStylePrimary, "https://t.me/ym_gbot_chat")
|
||
ctx.Keyboard(strings.Join(out, "\n"), kb)
|
||
}
|
||
|
||
func generalClose(ctx *laniakea.MsgContext, _ *database.Context) {
|
||
ctx.CallbackDelete()
|
||
ctx.AnswerCbQuery()
|
||
}
|