Optimized for DB/OOP update
This commit is contained in:
@@ -1,22 +1,25 @@
|
||||
from app import app
|
||||
from pyrogram import filters
|
||||
from pyrogram.types import InlineKeyboardMarkup, InlineKeyboardButton
|
||||
from modules.utils import configGet, configSet, locale
|
||||
from classes.holo_user import HoloUser
|
||||
from modules.utils import configGet, locale
|
||||
from modules.handlers.welcome import welcome_pass
|
||||
from modules.database import col_tmp
|
||||
|
||||
# Reapply command ==============================================================================================================
|
||||
@app.on_message(~ filters.scheduled & filters.private & filters.command(["reapply"], prefixes=["/"]))
|
||||
async def cmd_reapply(app, msg):
|
||||
|
||||
if configGet("approved", file=str(msg.from_user.id)) or configGet("refused", file=str(msg.from_user.id)):
|
||||
if (configGet("stage", file=str(msg.from_user.id)) == 10) and not (configGet("sent", file=str(msg.from_user.id))):
|
||||
holo_user = HoloUser(msg.from_user)
|
||||
|
||||
if holo_user.application_state()[0] in ["approved", "rejected"]:
|
||||
if (holo_user.application_state()[1] is True) and (not col_tmp.find_one({"user": holo_user.id, "type": "application"})["sent"]):
|
||||
left_chat = True
|
||||
async for member in app.get_chat_members(configGet("destination_group")):
|
||||
if member.user.id == msg.from_user.id:
|
||||
left_chat = False
|
||||
if not left_chat:
|
||||
configSet(["reapply"], True, file=str(msg.from_user.id))
|
||||
configSet(["confirmed"], False, file=str(msg.from_user.id))
|
||||
holo_user.application_restart()
|
||||
await welcome_pass(app, msg, once_again=True)
|
||||
else:
|
||||
await msg.reply_text(locale("reapply_left_chat", "message"), reply_markup=InlineKeyboardMarkup([
|
||||
@@ -34,7 +37,7 @@ async def cmd_reapply(app, msg):
|
||||
]
|
||||
]))
|
||||
else:
|
||||
if configGet("sent", file=str(msg.from_user.id)):
|
||||
if (holo_user.application_state()[0] == "fill") and (col_tmp.find_one({"user": holo_user.id, "type": "application"})["sent"] is True):
|
||||
await msg.reply_text(locale("reapply_forbidden", "message"))
|
||||
else:
|
||||
await msg.reply_text(locale("reapply_in_progress", "message").format(locale("confirm", "keyboard")[1][0]), reply_markup=InlineKeyboardMarkup([
|
||||
|
Reference in New Issue
Block a user