mirror of
https://github.com/flibusta-apps/book_bot.git
synced 2025-12-06 07:25:36 +01:00
Fix update log
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
import * as Sentry from '@sentry/node';
|
import * as Sentry from '@sentry/node';
|
||||||
|
|
||||||
import { Context, Telegraf, Markup } from 'telegraf';
|
import { Context, Telegraf, Markup } from 'telegraf';
|
||||||
|
import moment from 'moment';
|
||||||
|
|
||||||
import { BotState } from '@/bots/manager';
|
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 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
|
reply_markup: pMessage.keyboard.reply_markup
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { Context, Markup, Telegraf, TelegramError } from 'telegraf';
|
import { Context, Markup, Telegraf } from 'telegraf';
|
||||||
import { InlineKeyboardMarkup } from 'typegram';
|
import { InlineKeyboardMarkup } from 'typegram';
|
||||||
import { URLSearchParams } from 'url';
|
import { URLSearchParams } from 'url';
|
||||||
|
|
||||||
@@ -20,11 +20,12 @@ export async function getPaginatedMessage<T, D extends string | number>(
|
|||||||
allowedLangs: string[],
|
allowedLangs: string[],
|
||||||
itemsGetter: (data: D, page: number, allowedLangs: string[]) => Promise<BookLibrary.Page<T>>,
|
itemsGetter: (data: D, page: number, allowedLangs: string[]) => Promise<BookLibrary.Page<T>>,
|
||||||
itemFormater: (item: T) => string,
|
itemFormater: (item: T) => string,
|
||||||
|
header: string = ""
|
||||||
): Promise<PreparedMessage> {
|
): Promise<PreparedMessage> {
|
||||||
const itemsPage = await itemsGetter(data, page, allowedLangs);
|
const itemsPage = await itemsGetter(data, page, allowedLangs);
|
||||||
|
|
||||||
const formatedItems = itemsPage.items.map(itemFormater).join('\n\n\n');
|
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);
|
const keyboard = getPaginationKeyboard(prefix, data, page, itemsPage.total_pages);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user