Добавлена ветка prod_prep

This commit is contained in:
grigorij
2026-07-31 12:58:23 +04:00
parent bf26370da9
commit f289631645
36 changed files with 893 additions and 290 deletions
+10 -15
View File
@@ -1,33 +1,28 @@
"""Services keyboard with price & duration."""
from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton
from app.config import SERVICES
from app.keyboards.back import get_back_button
def get_services_keyboard():
buttons = [
[InlineKeyboardButton(text=name, callback_data=key)]
for key, name in SERVICES.items()
]
buttons = []
for key, svc in SERVICES.items():
label = svc["emoji"] + " " + svc["name"] + " - " + str(svc["price"]) + "\u20bd / " + str(svc["duration"]) + "\u043c\u0438\u043d"
buttons.append([InlineKeyboardButton(text=label, callback_data=key)])
buttons.append(get_back_button())
return InlineKeyboardMarkup(inline_keyboard=buttons)
def get_extra_services_keyboard(already_selected: list[str] | None = None):
"""Keyboard for selecting extra services. Shows ticked/unticked."""
def get_extra_services_keyboard(already_selected=None):
if already_selected is None:
already_selected = []
buttons = []
for key, name in SERVICES.items():
if name in already_selected:
label = "\u2705 " + name
for key, svc in SERVICES.items():
if svc["name"] in already_selected:
label = "\u2705 " + svc["emoji"] + " " + svc["name"]
else:
label = name
label = svc["emoji"] + " " + svc["name"]
buttons.append([InlineKeyboardButton(text=label, callback_data="extra_" + key)])
# Done button
buttons.append([InlineKeyboardButton(text="\u2705 \u0413\u043e\u0442\u043e\u0432\u043e", callback_data="extra_done")])
buttons.append(get_back_button())
return InlineKeyboardMarkup(inline_keyboard=buttons)