From abc6891156f5e35dee19c40516fe54781a21f847 Mon Sep 17 00:00:00 2001 From: Kurbanov Bulat Date: Sat, 5 Feb 2022 20:03:49 +0300 Subject: [PATCH] Fix update log --- src/bots/factory/bots/approved/index.ts | 7 +++++-- src/bots/factory/bots/approved/utils.ts | 5 +++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/bots/factory/bots/approved/index.ts b/src/bots/factory/bots/approved/index.ts index 84aa7d2..406fa5c 100644 --- a/src/bots/factory/bots/approved/index.ts +++ b/src/bots/factory/bots/approved/index.ts @@ -1,6 +1,7 @@ import * as Sentry from '@sentry/node'; import { Context, Telegraf, Markup } from 'telegraf'; +import moment from 'moment'; import { BotState } from '@/bots/manager'; @@ -101,9 +102,11 @@ export async function createApprovedBot(token: string, state: BotState): Promise const arg = `${data[2]}_${data[3]}`; - const pMessage = await getPaginatedMessage(CallbackData.UPDATE_LOG_PREFIX, arg, page, allowedLangs, BookLibrary.getBooks, formatBook); + const header = `Обновление каталога (${moment(data[2]).format("DD.MM.YYYY")} - ${moment(data[3]).format("DD.MM.YYYY")}):\n\n` - await ctx.reply(pMessage.message, { + const pMessage = await getPaginatedMessage(`${CallbackData.UPDATE_LOG_PREFIX}${arg}_`, arg, page, allowedLangs, BookLibrary.getBooks, formatBook, header); + + await ctx.editMessageText(pMessage.message, { reply_markup: pMessage.keyboard.reply_markup }); }); diff --git a/src/bots/factory/bots/approved/utils.ts b/src/bots/factory/bots/approved/utils.ts index 9550322..53a87db 100644 --- a/src/bots/factory/bots/approved/utils.ts +++ b/src/bots/factory/bots/approved/utils.ts @@ -1,4 +1,4 @@ -import { Context, Markup, Telegraf, TelegramError } from 'telegraf'; +import { Context, Markup, Telegraf } from 'telegraf'; import { InlineKeyboardMarkup } from 'typegram'; import { URLSearchParams } from 'url'; @@ -20,11 +20,12 @@ export async function getPaginatedMessage( allowedLangs: string[], itemsGetter: (data: D, page: number, allowedLangs: string[]) => Promise>, itemFormater: (item: T) => string, + header: string = "" ): Promise { const itemsPage = await itemsGetter(data, page, allowedLangs); const formatedItems = itemsPage.items.map(itemFormater).join('\n\n\n'); - const message = formatedItems + `\n\nСтраница ${page}/${itemsPage.total_pages}`; + const message = header + formatedItems + `\n\nСтраница ${page}/${itemsPage.total_pages}`; const keyboard = getPaginationKeyboard(prefix, data, page, itemsPage.total_pages);