Пример #1
0
def redact_order(call):
    if call.data[0] == '+':
        storage.add_to_order(chat_id=call.message.chat.id, data=call.data[1:])
        print(storage.get_user_string(chat_id=call.message.chat.id))
        bot.answer_callback_query(callback_query_id=call.id,
                                  show_alert=False,
                                  text='+' + str(call.data[-3:]) +
                                  constants.to_bill)
    if call.data[0] == '-':
        storage.remove_from_order(chat_id=call.message.chat.id,
                                  data=call.data[1:])
        print(storage.get_user_string(chat_id=call.message.chat.id))
        bot.answer_callback_query(callback_query_id=call.id,
                                  show_alert=False,
                                  text='-' + str(call.data[-3:]) +
                                  constants.from_bill)

    mes_text = utils.send_order_list(call.message.chat.id)
    keyboard = telebot.types.InlineKeyboardMarkup()
    for i in constants.coffee_list:
        keyboard.add(
            telebot.types.InlineKeyboardButton(text=i['text'],
                                               callback_data=i['call']))
        keyboard.add(
            telebot.types.InlineKeyboardButton(text=constants.plus,
                                               callback_data='+' + i['call']),
            telebot.types.InlineKeyboardButton(text=constants.minus,
                                               callback_data='-' + i['call']))
    keyboard.add(
        telebot.types.InlineKeyboardButton(text=constants.back,
                                           callback_data="back_to_order"))
    bot.edit_message_text(chat_id=call.message.chat.id,
                          text=mes_text,
                          message_id=call.message.message_id,
                          reply_markup=keyboard)
Пример #2
0
def edit_items(call):
	if call.data == 'name':
		storage.prepare_edit_user_string(chat_id = call.message.chat.id, editing_item = 'name')
		mes_text = constants.redact_name
	if call.data == 'country':
		storage.prepare_edit_user_string(chat_id = call.message.chat.id, editing_item = 'country')
		mes_text = constants.redact_country
	if call.data == 'city':
		storage.prepare_edit_user_string(chat_id = call.message.chat.id, editing_item = 'city')
		mes_text = constants.redact_city
	if call.data == 'occupation':
		storage.prepare_edit_user_string(chat_id = call.message.chat.id, editing_item = 'occupation')
		mes_text = constants.redact_occupation
	if call.data == 'birthdate':
		storage.prepare_edit_user_string(chat_id = call.message.chat.id, editing_item = 'birthdate')
		mes_text = constants.redact_birthdate
	if call.data == 'favorite':
		storage.prepare_edit_user_string(chat_id = call.message.chat.id, editing_item = 'favorite')
		mes_text = constants.redact_favorite


	keyboard =telebot.types.InlineKeyboardMarkup()
	callback_button1 = telebot.types.InlineKeyboardButton(text=constants.back, callback_data="back_to_redact")
	keyboard.add(callback_button1)
	bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text=mes_text, reply_markup=keyboard)

	

	print(storage.get_user_string(call.message.chat.id))
Пример #3
0
def edit_app_form(message):
    editing_item = storage.get_editing_item(message.chat.id)
    log.making_logs(editing_item)
    if editing_item:
        storage.edit_user_string(chat_id=message.chat.id, data=message.text)
        keyboard = telebot.types.InlineKeyboardMarkup()
        app_form = utils.send_app_form(storage.get_user_string(
            message.chat.id))
        items = constants.app_form_ru
        keyboard.add(
            telebot.types.InlineKeyboardButton(text=items['name'],
                                               callback_data='name'),
            telebot.types.InlineKeyboardButton(text=items['country'],
                                               callback_data='country'))
        keyboard.add(
            telebot.types.InlineKeyboardButton(text=items['city'],
                                               callback_data='city'),
            telebot.types.InlineKeyboardButton(text=items['occupation'],
                                               callback_data='occupation'))
        keyboard.add(
            telebot.types.InlineKeyboardButton(text=items['birthdate'],
                                               callback_data='birthdate'),
            telebot.types.InlineKeyboardButton(text=items['favorite'],
                                               callback_data='favorite'))
        keyboard.add(
            telebot.types.InlineKeyboardButton(text=constants.back,
                                               callback_data="back_to_menu"))
        bot.send_message(message.chat.id, text=app_form, reply_markup=keyboard)
    log.making_logs(message.text.encode())
Пример #4
0
def list_of_items(call):
    storage.drop_editing_item(call.message.chat.id)
    keyboard = telebot.types.InlineKeyboardMarkup()
    app_form = utils.send_app_form(
        storage.get_user_string(call.message.chat.id))
    items = constants.app_form_ru
    keyboard.add(
        telebot.types.InlineKeyboardButton(text=items['name'],
                                           callback_data='name'),
        telebot.types.InlineKeyboardButton(text=items['country'],
                                           callback_data='country'))
    keyboard.add(
        telebot.types.InlineKeyboardButton(text=items['city'],
                                           callback_data='city'),
        telebot.types.InlineKeyboardButton(text=items['occupation'],
                                           callback_data='occupation'))
    keyboard.add(
        telebot.types.InlineKeyboardButton(text=items['birthdate'],
                                           callback_data='birthdate'),
        telebot.types.InlineKeyboardButton(text=items['favorite'],
                                           callback_data='favorite'))
    keyboard.add(
        telebot.types.InlineKeyboardButton(text=constants.back,
                                           callback_data="back_to_menu"))

    bot.edit_message_text(chat_id=call.message.chat.id,
                          message_id=call.message.message_id,
                          text=app_form,
                          reply_markup=keyboard)
Пример #5
0
def make_order(call):
	arr = storage.get_user_string(call.message.chat.id)['order']
	keyboard = telebot.types.InlineKeyboardMarkup()
	keyboard.add(telebot.types.InlineKeyboardButton(text=constants.coffee, callback_data='order_coffee'))
	keyboard.add(telebot.types.InlineKeyboardButton(text=constants.dessert, callback_data='order_dessert'))
	keyboard.add(telebot.types.InlineKeyboardButton(text=constants.sandwitch, callback_data='order_sandwitch'))
	if arr:
		keyboard.add(telebot.types.InlineKeyboardButton(text=constants.checkout, callback_data='checkout'))
	keyboard.add(telebot.types.InlineKeyboardButton(text=constants.back_to_menu, callback_data="back_to_menu"))
	mes_text = utils.send_order_list(call.message.chat.id)
	bot.edit_message_text(chat_id = call.message.chat.id, text = mes_text, message_id=call.message.message_id, reply_markup = keyboard)
Пример #6
0
def send_order_list(chat_id):
    user_data = storage.get_user_string(chat_id)
    if not user_data['order']:
        return constants.empty_order
    output = dict()
    debt = 0
    order_list = '============================\nВаш заказ:\n'
    for i in user_data['order']:
        if i not in output.keys():
            output[i] = 1
        else:
            output[i] += 1

    for i in output.items():
        order_list += str(coffee_ru[i[0]] + ' ' + str(i[1]) + 'шт.\n')
        debt += int(i[0][-3:]) * i[1]
    order_list += str('Итого: ' + str(debt) + 'р.\n')
    order_list += '============================\n'

    return order_list