keyboards: hide navigation when all items fit on one page

parent 275d65e7
...@@ -2,6 +2,9 @@ from telegrinder import InlineKeyboard, InlineButton ...@@ -2,6 +2,9 @@ from telegrinder import InlineKeyboard, InlineButton
def bugs_nav_kb(maintainer: str, offset: int, total: int, per_page: int = 10): def bugs_nav_kb(maintainer: str, offset: int, total: int, per_page: int = 10):
if total <= per_page:
return None
kb = InlineKeyboard() kb = InlineKeyboard()
nav_buttons = [] nav_buttons = []
...@@ -17,10 +20,9 @@ def bugs_nav_kb(maintainer: str, offset: int, total: int, per_page: int = 10): ...@@ -17,10 +20,9 @@ def bugs_nav_kb(maintainer: str, offset: int, total: int, per_page: int = 10):
callback_data=f"bugs/{maintainer}/{offset + per_page}", callback_data=f"bugs/{maintainer}/{offset + per_page}",
)) ))
if nav_buttons: for btn in nav_buttons:
for btn in nav_buttons: kb.add(btn)
kb.add(btn) kb.row()
kb.row()
kb.add(InlineButton( kb.add(InlineButton(
"Полный список", "Полный список",
......
...@@ -4,6 +4,9 @@ from config import TASK_URL ...@@ -4,6 +4,9 @@ from config import TASK_URL
def tasks_nav_kb(maintainer: str, branch: str, offset: int, total: int, per_page: int = 10): def tasks_nav_kb(maintainer: str, branch: str, offset: int, total: int, per_page: int = 10):
if total <= per_page:
return None
kb = InlineKeyboard() kb = InlineKeyboard()
nav_buttons = [] nav_buttons = []
...@@ -19,10 +22,9 @@ def tasks_nav_kb(maintainer: str, branch: str, offset: int, total: int, per_page ...@@ -19,10 +22,9 @@ def tasks_nav_kb(maintainer: str, branch: str, offset: int, total: int, per_page
callback_data=f"tasks/{maintainer}/{branch}/{offset + per_page}", callback_data=f"tasks/{maintainer}/{branch}/{offset + per_page}",
)) ))
if nav_buttons: for btn in nav_buttons:
for btn in nav_buttons: kb.add(btn)
kb.add(btn) kb.row()
kb.row()
return kb.get_markup() return kb.get_markup()
......
...@@ -2,6 +2,9 @@ from telegrinder import InlineKeyboard, InlineButton ...@@ -2,6 +2,9 @@ from telegrinder import InlineKeyboard, InlineButton
def watch_nav_kb(maintainer: str, acl: str, offset: int, total: int, per_page: int = 10): def watch_nav_kb(maintainer: str, acl: str, offset: int, total: int, per_page: int = 10):
if total <= per_page:
return None
kb = InlineKeyboard() kb = InlineKeyboard()
nav_buttons = [] nav_buttons = []
...@@ -17,10 +20,9 @@ def watch_nav_kb(maintainer: str, acl: str, offset: int, total: int, per_page: i ...@@ -17,10 +20,9 @@ def watch_nav_kb(maintainer: str, acl: str, offset: int, total: int, per_page: i
callback_data=f"watch/{maintainer}/{acl}/{offset + per_page}", callback_data=f"watch/{maintainer}/{acl}/{offset + per_page}",
)) ))
if nav_buttons: for btn in nav_buttons:
for btn in nav_buttons: kb.add(btn)
kb.add(btn) kb.row()
kb.row()
kb.add(InlineButton( kb.add(InlineButton(
"Полный список", "Полный список",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment