Feat: some fixes

This commit is contained in:
2025-01-13 15:18:48 +03:00
parent 9ee8e43fb4
commit b5a893e5aa
5 changed files with 73 additions and 6 deletions

View File

@@ -1,3 +1,4 @@
import asyncio
import logging import logging
from sys import exit from sys import exit
@@ -18,7 +19,12 @@ if __name__ == "__main__":
User.create_table() User.create_table()
asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
loop = uvloop.new_event_loop()
asyncio.set_event_loop(loop)
# Start bot # Start bot
bot = NwXrayBot(config.bot_token.get_secret_value()) bot = NwXrayBot(config.bot_token.get_secret_value())
bot.include_routers(HelloHandler(), MenuHandler(), AdminHandler()) bot.include_routers(HelloHandler(), MenuHandler(), AdminHandler())
uvloop.run(bot.start(skip_updates=True))
asyncio.run(bot.start(skip_updates=True))

View File

@@ -50,5 +50,10 @@ class HelloHandler(Handler):
@self.router.callback_query(F.data == 'update') @self.router.callback_query(F.data == 'update')
async def update_data(callback: CallbackQuery): async def update_data(callback: CallbackQuery):
await callback.message.edit_text(get_subscription_info(callback.from_user.id), text = get_subscription_info(callback.from_user.id)
reply_markup=self.__non_admin_main_menu(), parse_mode=ParseMode.MARKDOWN) try:
await callback.message.edit_text(get_subscription_info(callback.from_user.id),
reply_markup=self.__non_admin_main_menu(), parse_mode=ParseMode.MARKDOWN)
except:
await callback.answer('Обновлений нет', show_alert=True)
return

View File

@@ -10,7 +10,7 @@ def get_subscription_info(telegram_id: str) -> str:
user: User = User.select().where(User.telegram_id == telegram_id).first() user: User = User.select().where(User.telegram_id == telegram_id).first()
if user is None: if user is None:
logging.error("[get_subscription_info]: User is not found") logging.error("[get_subscription_info]: User is not found")
return "Ошибка\!" return "Ошибка!"
date: Optional[datetime] = user.time date: Optional[datetime] = user.time
date_str = "" if date is None else f'До: { date_str = "" if date is None else f'До: {
date.strftime("%d.%m.%Y %H:%M")} МСК\n' date.strftime("%d.%m.%Y %H:%M")} МСК\n'

59
poetry.lock generated
View File

@@ -1,4 +1,4 @@
# This file is automatically @generated by Poetry 1.8.4 and should not be changed by hand. # This file is automatically @generated by Poetry 1.8.5 and should not be changed by hand.
[[package]] [[package]]
name = "aiofiles" name = "aiofiles"
@@ -185,6 +185,33 @@ files = [
{file = "ansicon-1.89.0.tar.gz", hash = "sha256:e4d039def5768a47e4afec8e89e83ec3ae5a26bf00ad851f914d1240b444d2b1"}, {file = "ansicon-1.89.0.tar.gz", hash = "sha256:e4d039def5768a47e4afec8e89e83ec3ae5a26bf00ad851f914d1240b444d2b1"},
] ]
[[package]]
name = "apscheduler"
version = "3.11.0"
description = "In-process task scheduler with Cron-like capabilities"
optional = false
python-versions = ">=3.8"
files = [
{file = "APScheduler-3.11.0-py3-none-any.whl", hash = "sha256:fc134ca32e50f5eadcc4938e3a4545ab19131435e851abb40b34d63d5141c6da"},
{file = "apscheduler-3.11.0.tar.gz", hash = "sha256:4c622d250b0955a65d5d0eb91c33e6d43fd879834bf541e0a18661ae60460133"},
]
[package.dependencies]
tzlocal = ">=3.0"
[package.extras]
doc = ["packaging", "sphinx", "sphinx-rtd-theme (>=1.3.0)"]
etcd = ["etcd3", "protobuf (<=3.21.0)"]
gevent = ["gevent"]
mongodb = ["pymongo (>=3.0)"]
redis = ["redis (>=3.0)"]
rethinkdb = ["rethinkdb (>=2.4.0)"]
sqlalchemy = ["sqlalchemy (>=1.4)"]
test = ["APScheduler[etcd,mongodb,redis,rethinkdb,sqlalchemy,tornado,zookeeper]", "PySide6", "anyio (>=4.5.2)", "gevent", "pytest", "pytz", "twisted"]
tornado = ["tornado (>=4.3)"]
twisted = ["twisted"]
zookeeper = ["kazoo"]
[[package]] [[package]]
name = "attrs" name = "attrs"
version = "24.3.0" version = "24.3.0"
@@ -882,6 +909,34 @@ files = [
{file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"}, {file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"},
] ]
[[package]]
name = "tzdata"
version = "2024.2"
description = "Provider of IANA time zone data"
optional = false
python-versions = ">=2"
files = [
{file = "tzdata-2024.2-py2.py3-none-any.whl", hash = "sha256:a48093786cdcde33cad18c2555e8532f34422074448fbc874186f0abd79565cd"},
{file = "tzdata-2024.2.tar.gz", hash = "sha256:7d85cc416e9382e69095b7bdf4afd9e3880418a2413feec7069d533d6b4e31cc"},
]
[[package]]
name = "tzlocal"
version = "5.2"
description = "tzinfo object for the local timezone"
optional = false
python-versions = ">=3.8"
files = [
{file = "tzlocal-5.2-py3-none-any.whl", hash = "sha256:49816ef2fe65ea8ac19d19aa7a1ae0551c834303d5014c6d5a62e4cbda8047b8"},
{file = "tzlocal-5.2.tar.gz", hash = "sha256:8d399205578f1a9342816409cc1e46a93ebd5755e39ea2d85334bea911bf0e6e"},
]
[package.dependencies]
tzdata = {version = "*", markers = "platform_system == \"Windows\""}
[package.extras]
devenv = ["check-manifest", "pytest (>=4.3)", "pytest-cov", "pytest-mock (>=3.3)", "zest.releaser"]
[[package]] [[package]]
name = "uvloop" name = "uvloop"
version = "0.21.0" version = "0.21.0"
@@ -1085,4 +1140,4 @@ propcache = ">=0.2.0"
[metadata] [metadata]
lock-version = "2.0" lock-version = "2.0"
python-versions = "^3.13" python-versions = "^3.13"
content-hash = "9b455b4a27b4038063fad5d023c0d2af06d7277a9b7ee02cc2d366e458f195b4" content-hash = "57654abddded59b21f10fc936a3f75bf5897bc0fd9ebcc81da38a5699d7ca90a"

View File

@@ -14,6 +14,7 @@ peewee = "^3.17.8"
uvloop = "^0.21.0" uvloop = "^0.21.0"
jurigged = "^0.6.0" jurigged = "^0.6.0"
psycopg2-binary = "^2.9.10" psycopg2-binary = "^2.9.10"
apscheduler = "^3.11.0"
[build-system] [build-system]