async def _(event): if event.fwd_from: return chat = await event.get_chat() admin = chat.admin_rights creator = chat.creator warn_reason = event.pattern_match.group(1) reply_message = await event.get_reply_message() if not admin and not creator: await event.edit("`Bruh I Am Not Admin Here`") return if await is_admin(event.chat_id, reply_message.from_id): return await event.edit("`User is an admin`") limit, soft_warn = sql.get_warn_setting(event.chat_id) num_warns, reasons = sql.warn_user(reply_message.from_id, event.chat_id, warn_reason) if num_warns >= limit: await event.client.edit_permissions(chat, reply_message.from_id, until_date=None, view_messages=False) if soft_warn: reply = "{} warnings, <u><a href='tg://user?id={}'>user</a></u> has been kicked!".format(limit, reply_message.from_id) await event.client.kick_participant(event.chat_id, reply_message.from_id) else: await event.client.edit_permissions(chat, reply_message.from_id, until_date=None, view_messages=False) reply = "{} warnings, <u><a href='tg://user?id={}'>user</a></u> has been banned!".format(limit, reply_message.from_id) else: reply = "<u><a href='tg://user?id={}'>user</a></u> has {}/{} warnings... watch out!".format(reply_message.from_id, num_warns, limit) if warn_reason: reply += "\nReason for last warn:\n{}".format(html.escape(warn_reason)) # await event.edit(reply, parse_mode="html")
async def _(event): if event.fwd_from: return warn_reason = event.pattern_match.group(1) reply_message = await event.get_reply_message() limit, soft_warn = sql.get_warn_setting(event.chat_id) num_warns, reasons = sql.warn_user( reply_message.from_id, event.chat_id, warn_reason) if num_warns >= limit: sql.reset_warns(reply_message.from_id, event.chat_id) if soft_warn: logger.info("TODO: kick user") reply = "<code>{}</code> warnings, <u><a href='tg://user?id={}'>user</a></u> has been kicked!".format( limit, reply_message.from_id) else: logger.info("TODO: ban user") reply = "<code>{}</code> warnings, <u><a href='tg://user?id={}'>user</a></u> has been banned!".format( limit, reply_message.from_id) else: reply = "<u><a href='tg://user?id={}'>User</a></u> has <code>{}/{}</code> warnings... watch out!".format( reply_message.from_id, num_warns, limit) if warn_reason: reply += "\nReason for last warn:\n<code>{}</code>".format( html.escape(warn_reason)) # await event.edit(reply, parse_mode="html")
async def _(event): if event.fwd_from: return try: chat = await event.get_chat() admin = chat.admin_rights creator = chat.creator warn_reason = event.pattern_match.group(1) reply_message = await event.get_reply_message() except: return await event.reply("`Sorry canot warn users here`") if not admin and not creator: return await event.reply("`I have to be admin to warn people.`") if await is_admin(event.chat_id, reply_message.sender.id): return await event.reply("`I'm not going to warn an admin!`") if reply_message.sender.id == 929138153: return await event.edit( "__HEY ME IS JAVES-3.0 THE TG USERBOT CRETED BY HIM__") limit, soft_warn = sql.get_warn_setting(event.chat_id) num_warns, reasons = sql.warn_user(reply_message.sender.id, event.chat_id, warn_reason) if num_warns >= limit: if soft_warn: reply = "{} warnings, <u><a href='tg://user?id={}'>user</a></u> has been muted!".format( limit, reply_message.sender.id) await event.client.edit_permissions(chat, reply_message.sender.id, until_date=None, send_messages=False) else: await event.client.edit_permissions(chat, reply_message.sender.id, until_date=None, view_messages=False) reply = "{} warnings, <u><a href='tg://user?id={}'>user</a></u> has been banned!".format( limit, reply_message.sender.id) else: reply = "<u><a href='tg://user?id={}'>user</a></u> has {}/{} warnings... watch out!".format( reply_message.sender.id, num_warns, limit) if warn_reason: reply += "\nReason for last warn:\n{}".format( html.escape(warn_reason)) # await event.reply(reply, parse_mode="html")