Advertisement
AnonumysMR

Untitled

Jun 27th, 2021
351
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.36 KB | None | 0 0
  1. import logging
  2. import os
  3.  
  4. from aiogram import Dispatcher, executor, types, Bot
  5. from menu import mainMenu, englishMenu, ChooseLvlMenu
  6. from work_with_db import checks_if_user_have_lvl, set_lvl_to_db
  7. from aiogram.dispatcher.filters.state import State, StatesGroup
  8.  
  9. from middleware import AccessMiddleware
  10.  
  11. # os.environ['API_TOKEN'] = ''
  12. API_TOKEN = os.getenv('API_TOKEN')
  13.  
  14. bot = Bot(token=API_TOKEN)
  15. dp = Dispatcher(bot)
  16. # dp.middleware.setup(AccessMiddleware(ACCESS_ID))
  17. logging.basicConfig(level=logging.INFO)
  18.  
  19.  
  20. @dp.message_handler(commands=['menu'])
  21. async def menu(message: types.Message):
  22. await bot.send_message(message.from_user.id,f'Вы перешли в главное меню'
  23. ,reply_markup=mainMenu)
  24.  
  25. @dp.message_handler(commands=['chooselvl'])
  26. async def lvl_command(message: types.Message):
  27. await message.answer(f'Выбери один из вариантов предоставленных ниже',
  28. reply_markup=ChooseLvlMenu)
  29.  
  30.  
  31. # @dp.message_handler()
  32. # async def lvl_choose(message:types.Message):
  33. # if message.text == 'Выбрать уровень английского':
  34. # await message.answer(f'Выбери один из вариантов предоставленных ниже',
  35. # reply_markup=ChooseLvlMenu)
  36. #
  37. # if message.text == 'Beginner.':
  38. # set_lvl_to_db(user_id=message.from_user.id, lvl='Beginner')
  39. # await message.answer('Уровень Beginner поставлен, ваш рейтинг был обнулен')
  40. # if message.text == 'Elementary.':
  41. # set_lvl_to_db(user_id=message.from_user.id, lvl='Elementary.')
  42. # await message.answer('Уровень Elementary поставлен, ваш рейтинг был обнулен')
  43. # if message.text == 'Pre-Intermediate.':
  44. # set_lvl_to_db(user_id=message.from_user.id, lvl='Pre-Intermediate.')
  45. # await message.answer('Уровень Pre-Intermediate поставлен, ваш рейтинг был обнулен')
  46. # if message.text == 'Intermediate':
  47. # set_lvl_to_db(user_id=message.from_user.id, lvl='Intermediate')
  48. # await message.answer('Уровень Intermediate поставлен, ваш рейтинг был обнулен')
  49. # if message.text == 'Upper-Intermediate.':
  50. # set_lvl_to_db(user_id=message.from_user.id, lvl='Upper-Intermediate.')
  51. # await message.answer('Уровень Upper-Intermediate поставлен, ваш рейтинг был обнулен')
  52. # if message.text == 'Advanced.':
  53. # set_lvl_to_db(user_id=message.from_user.id, lvl='Advanced.')
  54. # await message.answer('Уровень Advanced поставлен, ваш рейтинг был обнулен')
  55. # if message.text == 'Proficiency.':
  56. # set_lvl_to_db(user_id=message.from_user.id, lvl='Proficiency.')
  57. # await message.answer('Уровень Proficiency поставлен, ваш рейтинг был обнулен')
  58.  
  59.  
  60.  
  61. @dp.message_handler()
  62. async def sub_menu(message: types.Message):
  63. if message.text == '⭐Изучение английского':
  64. if checks_if_user_have_lvl(message.from_user.id):
  65. await bot.send_message(message.from_user.id,
  66. f'Здесь ты можешь:\n'
  67. f'1.Изучить новые слова\n'
  68. f'2.Изучить правила грамматики\n'
  69. f'3.Повторить изученные слова\n',
  70. reply_markup=englishMenu)
  71. else:
  72. await bot.send_message(message.from_user.id,
  73. f"Перед использованием бота нужно выбрать свой уровень английского,"
  74. f" сделать это вы можете нажав на кнопку 'Выбрать уровень английского'")
  75. elif message.text == '🔙':
  76. await bot.send_message(message.from_user.id,
  77. f'Вернулись назад в главное меню',
  78.  
  79. reply_markup=mainMenu)
  80. elif message.text == '☀️Изучить новые слова':
  81. pass
  82. elif message.text == 'Выбрать уровень английского':
  83. await message.answer(f'Выбери один из вариантов предоставленных ниже',
  84. reply_markup=ChooseLvlMenu)
  85. elif message.text == 'Beginner.':
  86. set_lvl_to_db(user_id=message.from_user.id, lvl='Beginner.')
  87. await message.answer('Уровень Beginner поставлен, ваш рейтинг был обнулен')
  88. elif message.text == 'Elementary.':
  89. set_lvl_to_db(user_id=message.from_user.id, lvl='Elementary.')
  90. await message.answer('Уровень Elementary поставлен, ваш рейтинг был обнулен')
  91. elif message.text == 'Pre-Intermediate.':
  92. set_lvl_to_db(user_id=message.from_user.id, lvl='Pre-Intermediate.')
  93. await message.answer('Уровень Pre-Intermediate поставлен, ваш рейтинг был обнулен')
  94. elif message.text == 'Intermediate':
  95. set_lvl_to_db(user_id=message.from_user.id, lvl='Intermediate.')
  96. await message.answer('Уровень Intermediate поставлен, ваш рейтинг был обнулен')
  97. elif message.text == 'Upper-Intermediate.':
  98. set_lvl_to_db(user_id=message.from_user.id, lvl='Upper-Intermediate.')
  99. await message.answer('Уровень Upper-Intermediate поставлен, ваш рейтинг был обнулен')
  100. elif message.text == 'Advanced.':
  101. set_lvl_to_db(user_id=message.from_user.id, lvl='Advanced.')
  102. await message.answer('Уровень Advanced поставлен, ваш рейтинг был обнулен')
  103. elif message.text == 'Proficiency.':
  104. set_lvl_to_db(user_id=message.from_user.id, lvl='Proficiency.')
  105. await message.answer('Уровень Proficiency поставлен, ваш рейтинг был обнулен')
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112. if __name__ == '__main__':
  113. executor.start_polling(dispatcher=dp, skip_updates=True)
  114.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement