package help_bot_state import ( "net/http" "valera/internal/db" "valera/internal/states" tgbot "github.com/go-telegram-bot-api/telegram-bot-api" "golang.org/x/exp/slices" ) var names = []string{ "/help", } type helpBotState struct { bot *tgbot.BotAPI dataBase *db.DB } func NewHelpBotState(bot *tgbot.BotAPI, dataBase *db.DB) states.BotState { return &helpBotState{ bot: bot, dataBase: dataBase, } } func (s *helpBotState) Do(text string, chatInfo *db.ChatInfo) error { if !slices.Contains(names, text) { return nil } msg := "Вот что я умею:\n\n1) Предлагать размяться\n - несколько видов упражнений 6 раз в день\n2) Показывать статистику за день\n3) Считать калории\n - введи одно число, я запишу калории\n - введи 2 числа через пробел одно количество грамм другое количество калорий в 100 граммах (порядок не важен), я посчитаю\n - введи название того что ты съел, я посчитаю (если знаю)" _, _ = s.bot.Send(tgbot.NewMessage(chatInfo.ChatID, msg)) return s.dataBase.SetStatusToChat(chatInfo.ChatID, db.UserStateNone) } func (s *helpBotState) GetHandler() (string, func(http.ResponseWriter, *http.Request)) { return names[0], func(w http.ResponseWriter, r *http.Request) { w.WriteHeader(http.StatusInternalServerError) } }