45 lines
1.2 KiB
Python
45 lines
1.2 KiB
Python
from pyrogram import filters
|
|
from pyrogram.types import Message
|
|
|
|
from classes.pyroclient import PyroClient
|
|
from modules import custom_filters
|
|
|
|
|
|
@PyroClient.on_message(
|
|
~filters.scheduled & filters.private & filters.command(["toggle"], prefixes=["/"]) & ~custom_filters.context # type: ignore
|
|
)
|
|
async def command_toggle(app: PyroClient, message: Message):
|
|
user = await app.find_user(message.from_user)
|
|
|
|
await user.update_state(not user.enabled)
|
|
|
|
if not user.enabled:
|
|
await message.reply_text(
|
|
app._("toggle_disabled", "messages", locale=user.locale)
|
|
)
|
|
return
|
|
|
|
try:
|
|
user_time = user.get_reminder_time().strftime(
|
|
app._("time", "formats", locale=user.locale)
|
|
)
|
|
except AttributeError:
|
|
user_time = "N/A"
|
|
|
|
if user.location is None:
|
|
await message.reply_text(
|
|
app._("toggle_enabled", "messages", locale=user.locale).format(
|
|
offset=user.offset,
|
|
time=user_time,
|
|
),
|
|
)
|
|
return
|
|
|
|
await message.reply_text(
|
|
app._("toggle_enabled_location", "messages", locale=user.locale).format(
|
|
offset=user.offset,
|
|
time=user_time,
|
|
name=user.location.name,
|
|
)
|
|
)
|