обработка обновлений последовательно для каждого юзера благодаря mutex
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
||||
"strings"
|
||||
|
||||
"example.com/m/bot"
|
||||
"example.com/m/ui"
|
||||
"github.com/NicoNex/echotron/v3"
|
||||
"github.com/rs/zerolog/log"
|
||||
)
|
||||
@@ -107,11 +108,6 @@ func (s *MyProjects) renderProjects(b *bot.Bot, mode bot.RenderMode, jwt string)
|
||||
|
||||
%s`, navTitle, headerTitle, emptyStateText)
|
||||
} else {
|
||||
pageInfo := ""
|
||||
if page.Pages > 1 {
|
||||
pageInfo = fmt.Sprintf(" <i>(стр. %d/%d)</i>", page.Page, page.Pages)
|
||||
}
|
||||
|
||||
text = fmt.Sprintf(`<i>%s</i>
|
||||
|
||||
<b>%s</b>%s
|
||||
@@ -119,7 +115,7 @@ func (s *MyProjects) renderProjects(b *bot.Bot, mode bot.RenderMode, jwt string)
|
||||
%s`,
|
||||
navTitle,
|
||||
headerTitle,
|
||||
pageInfo,
|
||||
ui.FormatPageInfo(s.CurrentPage, page.Pages),
|
||||
nonEmptyText)
|
||||
}
|
||||
|
||||
@@ -153,23 +149,14 @@ func (s *MyProjects) renderProjects(b *bot.Bot, mode bot.RenderMode, jwt string)
|
||||
}
|
||||
|
||||
// Ряд: Пагинация + Добавить (динамическая ширина)
|
||||
var navRow []echotron.InlineKeyboardButton
|
||||
|
||||
// Левая стрелка (только если есть предыдущая страница)
|
||||
if s.CurrentPage > 0 {
|
||||
navRow = append(navRow, bot.Button("←", "prev"))
|
||||
if navRow := ui.BuildNavigationRow(ui.PaginationConfig{
|
||||
CurrentPage: s.CurrentPage,
|
||||
TotalPages: page.Pages,
|
||||
MiddleButtons: []echotron.InlineKeyboardButton{bot.Button("+ Добавить", "add_project")},
|
||||
}); navRow != nil {
|
||||
buttons = append(buttons, navRow)
|
||||
}
|
||||
|
||||
// Кнопка "Добавить проект" всегда в центре
|
||||
navRow = append(navRow, bot.Button("+ Добавить", "add_project"))
|
||||
|
||||
// Правая стрелка (только если есть следующая страница)
|
||||
if s.CurrentPage+1 < page.Pages {
|
||||
navRow = append(navRow, bot.Button("→", "next"))
|
||||
}
|
||||
|
||||
buttons = append(buttons, navRow)
|
||||
|
||||
// Нижний ряд: Назад + Архив
|
||||
buttons = append(buttons, bot.Row(
|
||||
bot.Button("← Назад", "menu"),
|
||||
|
||||
Reference in New Issue
Block a user