def group(call): if not is_person(call.message.chat): return try: user = User.get(telegram_id=call.message.chat.id) if user not in User.select(User).join(Links).join(Group).where(Group.group_name == 'Admins'): raise Exception("Unauthorized user") except Exception: bot.send_message(text=get_unauthorized_user_start_message(), chat_id=call.message.chat.id) return group_to_remove_from = Group.get(id=int(call.data.split('_')[1])) user_to_be_removed_from_group = User.get(id=int(call.data.split('_')[2])) Links.get(user=user_to_be_removed_from_group, group=group_to_remove_from).delete_instance() logger.info( f'{user.first_name} {user.last_name} removed user {user_to_be_removed_from_group.first_name} {user_to_be_removed_from_group.last_name} from group {group_to_remove_from.group_name}') bot.send_message(chat_id=user_to_be_removed_from_group.telegram_id, text=f'Вы удалены из группы {group_to_remove_from.group_name}', reply_markup=get_start_keyboard(user)) bot.send_message(chat_id=user_to_be_removed_from_group.telegram_id, text='Список доступных Вам функций', reply_markup=get_main_inline_keyboard(user_to_be_removed_from_group)) if Group.select(Group).join(Links).join(User).where(User.id == user_to_be_removed_from_group.id).count() == 0: Links.get_or_create(user=user_to_be_removed_from_group, group=Group.get(group_name='Unauthorized')) bot.send_message(chat_id=user_to_be_removed_from_group.telegram_id, text='Вы были удалены из всех групп. Получите авторизацию у администратора, чтобы продолжить пользоваться этим ботом!', reply_markup=None) bot.edit_message_text(message_id=call.message.message_id, chat_id=call.message.chat.id, text=user_info(user_to_be_removed_from_group), reply_markup=keyboard_to_chose_users_groups(user_to_be_removed_from_group))
def group(call): if not is_person(call.message.chat): return try: user = User.get(telegram_id=call.message.chat.id) if user not in User.select(User).join(Links).join(Group).where(Group.group_name == 'Admins'): raise Exception("Unauthorized user") except Exception: bot.send_message(text=get_unauthorized_user_start_message(), chat_id=call.message.chat.id) return group_to_add_to = Group.get(id=int(call.data.split('_')[1])) user_to_be_entered_to_group = User.get(id=int(call.data.split('_')[2])) Links.get_or_create(user=user_to_be_entered_to_group, group=group_to_add_to) if user_to_be_entered_to_group in User.select(User).join(Links).join(Group).where( Group.group_name == 'Unauthorized'): temp_link = Links.get(user=user_to_be_entered_to_group, group=Group.get(group_name='Unauthorized')) temp_link.delete_instance() logger.info( f'{user.first_name} {user.last_name} added user {user_to_be_entered_to_group.first_name} {user_to_be_entered_to_group.last_name} to group {group_to_add_to.group_name}') bot.send_message(chat_id=user_to_be_entered_to_group.telegram_id, text=f'Вы авторизованы и добавлены в группу {group_to_add_to.group_name}', reply_markup=get_start_keyboard(user)) bot.send_message(chat_id=user_to_be_entered_to_group.telegram_id, text='Список доступных Вам функций', reply_markup=get_main_inline_keyboard(user_to_be_entered_to_group)) bot.edit_message_text(message_id=call.message.message_id, chat_id=call.message.chat.id, text=user_info(user_to_be_entered_to_group), reply_markup=keyboard_to_chose_users_groups(user_to_be_entered_to_group))