Spaces:
Runtime error
Runtime error
from aiogram import Router, F | |
from aiogram.types import Message, CallbackQuery | |
from aiogram.fsm.context import FSMContext | |
from app.database import requests as rq | |
from app.keyboards import user_keyboards as kb | |
from app.database.requests import check_user_registered, update_user_data, check_login_unique, own_login_check | |
from app.states import Other | |
router = Router() | |
async def get_info(message: Message): | |
registration_status = await check_user_registered(message.from_user.id) | |
if registration_status: | |
user_info = await rq.get_user_registration_info(message.from_user.id) | |
await message.answer(user_info, reply_markup=kb.user_infocheck_back) | |
elif not registration_status: | |
await message.answer("Вы не зарегистрированы. Пожалуйста, зарегистрируйтесь, чтобы увидеть сохраненные сведения о себе.", reply_markup=kb.user_back) | |
return | |
async def correction_info(callback: CallbackQuery, state: FSMContext): | |
await state.set_state(Other.user_data_check) | |
await callback.message.answer('Вы правда хотите изменить регистрационные данные?', reply_markup=kb.yes_no_keyboard) | |
async def register_check(message: Message, state: FSMContext): | |
if message.text == 'Да': | |
await state.set_state(Other.user_data_correct) | |
await message.answer('Упс :( Что Вы хотите исправить?', reply_markup=kb.register_correct_keyboard) | |
if message.text == 'Нет': | |
await message.answer('Хорошо! Если что-то изменится, Вы всегда можете обновить свои данные!', reply_markup=kb.user_back_wo_reg) | |
await state.clear() | |
async def correction_info(message: Message, state: FSMContext): | |
await state.update_data(correction=message.text) | |
print("check") | |
await state.set_state(Other.user_data_finish) | |
await message.answer('Какие данные Вы хотите внести?', reply_markup=kb.yes_no_keyboard) | |
async def correction_info_set(message: Message, state: FSMContext): | |
data = await state.get_data() | |
if data['correction'] == 'Логин': | |
if not await check_login_unique(message.text) and not own_login_check(message.from_user.id, message.text): | |
await message.answer('Этот логин уже занят. Пожалуйста, выберите другой.') | |
return | |
await update_user_data(message.from_user.id, data['correction'], message.text) | |
await state.clear() | |
await message.answer('Изменения внесены!', reply_markup=kb.user_back_wo_reg) |