Compare commits

..

2 Commits

Author SHA1 Message Date
itqop 987f3e6609 Remove __pycache__ from repo 2026-02-17 13:00:41 +03:00
itqop 9847b23210 add gitignore 2026-02-17 12:58:01 +03:00
19 changed files with 37 additions and 7 deletions

32
.gitignore vendored
View File

@ -1,9 +1,37 @@
.venv/ # Python
__pycache__/
*.py[cod]
*.pyo
*.egg-info/
dist/
build/
*.egg
# Virtual environment
.venv/
venv/
env/
# Environment variables
.env .env
# Database
data/ data/
*.db
# IDE
.idea/
.vscode/
*.swp
*.swo
# OS
.DS_Store
Thumbs.db
# Project docs (local only)
CLAUDE.md CLAUDE.md
TZ.md
TZ.md # Claude Code
.claude/

Binary file not shown.

View File

@ -122,7 +122,7 @@ async def show_reminder_details(
await callback.message.edit_text( await callback.message.edit_text(
details_text, details_text,
reply_markup=get_reminder_details_keyboard(reminder.id, reminder.is_active), reply_markup=get_reminder_details_keyboard(reminder.id, reminder.is_active, page=callback_data.page),
parse_mode="HTML", parse_mode="HTML",
) )
await callback.answer() await callback.answer()
@ -131,6 +131,7 @@ async def show_reminder_details(
@router.callback_query(ReminderActionCallback.filter(F.action == "back_to_list")) @router.callback_query(ReminderActionCallback.filter(F.action == "back_to_list"))
async def back_to_reminders_list( async def back_to_reminders_list(
callback: CallbackQuery, callback: CallbackQuery,
callback_data: ReminderActionCallback,
session: AsyncSession, session: AsyncSession,
) -> None: ) -> None:
""" """
@ -153,7 +154,7 @@ async def back_to_reminders_list(
await callback.message.edit_text( await callback.message.edit_text(
f"📋 Твои напоминания ({len(reminders)}):", f"📋 Твои напоминания ({len(reminders)}):",
reply_markup=get_reminders_list_keyboard(reminders, page=0), reply_markup=get_reminders_list_keyboard(reminders, page=callback_data.page),
) )
await callback.answer() await callback.answer()

View File

@ -15,8 +15,9 @@ class ReminderIntervalCallback(CallbackData, prefix="interval"):
class ReminderActionCallback(CallbackData, prefix="reminder"): class ReminderActionCallback(CallbackData, prefix="reminder"):
"""Callback for reminder actions.""" """Callback for reminder actions."""
action: str # done, snooze, pause, resume, delete, details, edit action: str # done, snooze, pause, resume, delete, details, edit, back_to_list
reminder_id: int reminder_id: int
page: int = 0
class ReminderEditCallback(CallbackData, prefix="edit"): class ReminderEditCallback(CallbackData, prefix="edit"):
@ -170,7 +171,7 @@ def get_snooze_delay_keyboard(reminder_id: int) -> InlineKeyboardMarkup:
return keyboard return keyboard
def get_reminder_details_keyboard(reminder_id: int, is_active: bool) -> InlineKeyboardMarkup: def get_reminder_details_keyboard(reminder_id: int, is_active: bool, page: int = 0) -> InlineKeyboardMarkup:
""" """
Get keyboard for reminder details view. Get keyboard for reminder details view.
@ -207,7 +208,7 @@ def get_reminder_details_keyboard(reminder_id: int, is_active: bool) -> InlineKe
[ [
InlineKeyboardButton( InlineKeyboardButton(
text="⬅️ Назад к списку", text="⬅️ Назад к списку",
callback_data=ReminderActionCallback(action="back_to_list", reminder_id=0).pack() callback_data=ReminderActionCallback(action="back_to_list", reminder_id=0, page=page).pack()
), ),
], ],
] ]