database.py 908 B

123456789101112131415161718192021222324252627
  1. """Database functons"""
  2. from app import SESSION
  3. from app.models import Player, TelegramAccount, TelegramHandle, PlayerTelegram, TelegramVerification
  4. def get_telegram_account(telegram_id):
  5. """Get Telegram account"""
  6. session = SESSION()
  7. telegram_account = _get_telegram_account(session, telegram_id)
  8. session.close()
  9. return telegram_account
  10. def _get_telegram_account(session, telegram_id):
  11. """Return telegram_account"""
  12. return session.query(TelegramAccount).get(telegram_id)
  13. def get_rr_accounts(telegram_id):
  14. """Get Rival Region accounts associated with Telegram account"""
  15. session = SESSION()
  16. telegram_account = _get_telegram_account(session, telegram_id)
  17. rr_accounts = session.query(Player) \
  18. .join(Player.player_telegram) \
  19. .filter(PlayerTelegram.telegram_id == telegram_account.id) \
  20. .all()
  21. session.close()
  22. return rr_accounts