package handler import ( "context" "errors" "strings" "github.com/mr-linch/go-tg" "github.com/mr-linch/go-tg/tgb" ) func (h *Handler) NewFolderHandler(ctx context.Context, mu *tgb.MessageUpdate) error { str := strings.Replace(mu.Text, "/folder", "", 1) if str == "" { return errors.New("empty command provided") } resp := h.cloud.CreateFolder(str) if resp.ErrMessage != nil { answer := errorAnswer(resp.ErrMessage.Error()) h.LogMessage(ctx, mu, answer) return mu.Answer(answer).ParseMode(tg.HTML).DoVoid(ctx) } answer := tg.HTML.Text( tg.HTML.Line( "✨ Shiny folder", tg.HTML.Link(resp.Folder.Title, resp.Folder.PrivateURL), "has been created!", ), ) h.LogMessage(ctx, mu, answer) return mu.Answer(answer). ParseMode(tg.HTML). DoVoid(ctx) } func errorAnswer(errorMsg string) string { return tg.HTML.Text( tg.HTML.Line( tg.HTML.Italic(errorMsg), ), ) }