def walk_get_day( message): # Название функции не играет никакой роли, в принципе global day day = message.text.title() name = message.from_user.first_name chat_id = message.chat.id user_id = message.from_user.id username = message.from_user.username db_worker = SQLighter(config.database) user_with = 0 write_to_DB = db_worker.write_to(chat_id, user_id, username, day, user_with) if (str.lower(message.text) != "/delete") & (str.lower(message.text) != "/cancel"): bot.send_message( message.chat.id, "{}({}) планирует прогулку в эту/это/этот: {}".format( name, username, message.text)) msg = bot.reply_to( message, "С кем планируете прогулку? Отправь контакт или укажи Username с указанием @, например @username" ) bot.register_next_step_handler(msg, reply_to_another_user) elif str.lower(message.text) == "/delete": msg = bot.reply_to(message, "какой день удалить?") bot.register_next_step_handler(msg, delete_day_select_day) elif str.lower(message.text) == '/cancel': msg = bot.reply_to(message, "Отправляю в начало, воспользуйся /start") bot.register_next_step_handler(msg, start) db_worker.close()
def reply_to_another_user_about_delete(message): try: if (message.content_type == 'contact'): username = message.from_user.username user_id = message.from_user.id db_worker = SQLighter(config.database) userID = message.contact.user_id get_ID = db_worker.getID(userID) get_ID = "{}".format(''.join(str(x) for x in get_ID).replace( '(', '').replace(')', '').replace('\'', '')[:-1]) check_row = db_worker.check_row(day_delete, user_id, get_ID) if check_row == 0: bot.register_next_step_handler((bot.reply_to( message, 'oooops, в такой день прогулки нету, попробуй еще')), cancel) delete_from_db = db_worker.delete_row(day_delete, user_id, get_ID) db_worker.clear(user_id) bot.send_message( get_ID, "У вас отменяется прогулка с {} {} в {}".format( message.from_user.first_name, message.from_user.last_name, day_delete)) read_from_DB = db_worker.read_my_data(username, get_ID, user_id) last_name = message.contact.last_name if last_name != None: bot.send_message( message.chat.id, "У вас запланированы прогулки с {} {} на следующие дни: {} " .format( message.contact.first_name, message.contact.last_name, ''.join(str(x) for x in read_from_DB).replace( '(', '').replace(')', '').replace('\'', '').replace(',', ', ')[:-2])) else: last_name = "" bot.send_message( message.chat.id, "У вас запланированы прогулки с {} {} на следующие дни: {} " .format( message.contact.first_name, last_name, ''.join(str(x) for x in read_from_DB).replace( '(', '').replace(')', '').replace('\'', '').replace(',', ', ')[:-2])) db_worker.close() elif (message.content_type == 'text') & (message.text.startswith('@')): chat_id = message.chat.id user_id = message.from_user.id username = message.from_user.username username_to = message.text username_to = username_to[1:] db_worker = SQLighter(config.database) get_ID = db_worker.getChatID(username_to) get_ID = "{}".format(''.join(str(x) for x in get_ID).replace( '(', '').replace(')', '').replace('\'', '')[:-1]) getUserID = db_worker.getUserID(get_ID) getUserID = "{}".format(''.join(str(x) for x in getUserID).replace( '(', '').replace(')', '').replace('\'', '')[:-1]) check_row = db_worker.check_row(day_delete, user_id, get_ID) if check_row == 0: bot.register_next_step_handler((bot.reply_to( message, 'oooops, на такой день прогулки не запланировано')), cancel) else: delete_from_db = db_worker.delete_row(day_delete, user_id, get_ID) db_worker.clear(user_id) bot.send_message( get_ID, "У вас отменяется прогулка с {} {} в {}".format( message.from_user.first_name, message.from_user.last_name, day_delete)) read_from_DB = db_worker.read_my_data(username, get_ID, user_id) user_with = bot.get_chat_member(get_ID, getUserID) last_name = user_with.user.last_name if last_name != None: bot.send_message( message.chat.id, "У вас запланированы прогулки с {} {} на следующие дни: {} " .format( user_with.user.first_name, user_with.user.last_name, ''.join(str(x) for x in read_from_DB).replace( '(', '').replace(')', '').replace('\'', '').replace( ',', ', ')[:-2])) else: last_name = "" bot.send_message( message.chat.id, "У вас запланированы прогулки с {} {} на следующие дни: {} " .format( user_with.user.first_name, last_name, ''.join(str(x) for x in read_from_DB).replace( '(', '').replace(')', '').replace('\'', '').replace( ',', ', ')[:-2])) db_worker.close() elif (message.content_type != 'contact') & ( message.text != '/cancel') & (message.text.startswith('@') == False): chat_id = message.chat.id msg = bot.reply_to(message, "Отправь файл контакта!") bot.register_next_step_handler(msg, reply_to_another_user_about_delete) elif str.lower(message.text) == '/cancel': msg = bot.reply_to(message, "Отправляю в начало, воспользуйся /start") bot.register_next_step_handler(msg, start) except Exception as e: print(e) bot.register_next_step_handler((bot.reply_to( message, 'oooops, попробуй еще раз ввести username')), reply_to_another_user_about_delete)