From 0c22128c774929b1cd003a7d181458f1691b5763 Mon Sep 17 00:00:00 2001 From: eleksir Date: Sat, 4 Jan 2025 02:38:11 +0300 Subject: [PATCH] [WIP] Implemented save goodbye message option --- msg-parsers.go | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/msg-parsers.go b/msg-parsers.go index 228fc92..16fc8dc 100644 --- a/msg-parsers.go +++ b/msg-parsers.go @@ -773,6 +773,10 @@ func Admin(msg *echotron.Update) (bool, error) { answer += fmt.Sprintf("%sadmin приветствие - приветствуем ли новых участников чата\n", config.Csign) answer += fmt.Sprintf("%sadmin greet # - где 1 - вкл, 0 - выкл приветствия новых участников чата\n", config.Csign) answer += fmt.Sprintf("%sadmin приветствие # - где 1 - вкл, 0 - выкл приветствия новых участников чата\n", config.Csign) + answer += fmt.Sprintf("%sadmin goodbye - прощаемся ли с ушедшими участниками чата\n", config.Csign) + answer += fmt.Sprintf("%sadmin прощание - прощаемся ли с ушедшими участниками чата\n", config.Csign) + answer += fmt.Sprintf("%sadmin goodbye # - где 1 - вкл, 0 - выкл прощания с ушедшими участниками чата\n", config.Csign) + answer += fmt.Sprintf("%sadmin прощание # - где 1 - вкл, 0 - выкл прощания с ушедшими участниками чата\n", config.Csign) answer += fmt.Sprintf("%sadmin oboobs # - где 1 - вкл, 0 - выкл плагина oboobs\n", config.Csign) answer += fmt.Sprintf( "%sadmin oboobs - показываем ли сисечки по просьбе участников чата (команды %stits, %stities, %sboobs, %sboobies, %sсиси, %sсисечки)\n", @@ -1162,6 +1166,36 @@ func Admin(msg *echotron.Update) (bool, error) { default: answer += "Не понимаю, о чём ты." } + + case regexp.MustCompile("^(admin|админ)[[:space:]](goodbye|прощание)$").MatchString(c): + if GetSetting(fmt.Sprintf("%d", msg.Message.Chat.ID), "GoodbyeMsg") == "1" { + answer += "Прощаемся с ушедшими участниками чатика" + } else { + answer += "Не прощаемся с ушедшими участниками чатика" + } + + case regexp.MustCompile("^(admin|админ)[[:space:]](goodbye|прощание)[[:space:]].*$").MatchString(c): + // Снова регулярка, это не оч эффективно, но зато просто. + cmdArray := regexp.MustCompile("[[:space:]]").Split(c, 3) + + switch cmdArray[2] { + case "1": + if err := SaveSetting(fmt.Sprintf("%d", msg.Message.Chat.ID), "GoodbyeMsg", "1"); err != nil { + return true, err + } + + answer += "Будем прощаться с ушедшими участниками чата" + + case "0": + if err := SaveSetting(fmt.Sprintf("%d", msg.Message.Chat.ID), "GoodbyeMsg", "0"); err != nil { + return true, err + } + + answer += "Не будем прощаться с ушедшими участниками чата" + + default: + answer += "Не понимаю, о чём ты." + } } resp, err := tg.SendMessage(