Skip to content

Commit

Permalink
Every Command is Now DisableAble! && Cleanup!
Browse files Browse the repository at this point in the history
Signed-off-by: Yasir-siddiqui <[email protected]>
  • Loading branch information
Yasir-siddiqui authored and MD Raza committed Jul 17, 2020
1 parent 277cb4f commit e39bd0b
Show file tree
Hide file tree
Showing 18 changed files with 57 additions and 231 deletions.
2 changes: 1 addition & 1 deletion Procfile
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
web: python3 -m tg_bot
worker python3 -m tg_bot
worker: python3 -m tg_bot
9 changes: 5 additions & 4 deletions tg_bot/__main__.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
from tg_bot.modules import ALL_MODULES
from tg_bot.modules.helper_funcs.chat_status import is_user_admin
from tg_bot.modules.helper_funcs.misc import paginate_modules
from tg_bot.modules.disable import DisableAbleCommandHandler

PM_START_TEXT = """
Hi {}, My name is {}.
Expand Down Expand Up @@ -405,15 +406,15 @@ def migrate_chats(bot: Bot, update: Update):

def main():
test_handler = CommandHandler("test", test)
start_handler = CommandHandler("start", start, pass_args=True)
start_handler = DisableAbleCommandHandler("start", start, pass_args=True)

help_handler = CommandHandler("help", get_help)
help_handler = DisableAbleCommandHandler("help", get_help)
help_callback_handler = CallbackQueryHandler(help_button, pattern=r"help_")

settings_handler = CommandHandler("settings", get_settings)
settings_handler = DisableAbleCommandHandler("settings", get_settings)
settings_callback_handler = CallbackQueryHandler(settings_button, pattern=r"stngs_")

donate_handler = CommandHandler("donate", donate)
donate_handler = DisableAbleCommandHandler("donate", donate)
migrate_handler = MessageHandler(Filters.status_update.migrate, migrate_chats)

# dispatcher.add_handler(test_handler)
Expand Down
10 changes: 5 additions & 5 deletions tg_bot/modules/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -230,13 +230,13 @@ def __chat_settings__(chat_id, user_id):

__mod_name__ = "Admin"

PIN_HANDLER = CommandHandler("pin", pin, pass_args=True, filters=Filters.group)
UNPIN_HANDLER = CommandHandler("unpin", unpin, filters=Filters.group)
PIN_HANDLER = DisableAbleCommandHandler("pin", pin, pass_args=True, filters=Filters.group)
UNPIN_HANDLER = DisableAbleCommandHandler("unpin", unpin, filters=Filters.group)

INVITE_HANDLER = CommandHandler("invitelink", invite, filters=Filters.group)
INVITE_HANDLER = DisableAbleCommandHandler("invitelink", invite, filters=Filters.group)

PROMOTE_HANDLER = CommandHandler("promote", promote, pass_args=True, filters=Filters.group)
DEMOTE_HANDLER = CommandHandler("demote", demote, pass_args=True, filters=Filters.group)
PROMOTE_HANDLER = DisableAbleCommandHandler("promote", promote, pass_args=True, filters=Filters.group)
DEMOTE_HANDLER = DisableAbleCommandHandler("demote", demote, pass_args=True, filters=Filters.group)

ADMINLIST_HANDLER = DisableAbleCommandHandler("adminlist", adminlist, filters=Filters.group)

Expand Down
5 changes: 3 additions & 2 deletions tg_bot/modules/antiflood.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
from tg_bot.modules.helper_funcs.chat_status import is_user_admin, user_admin, can_restrict
from tg_bot.modules.log_channel import loggable
from tg_bot.modules.sql import antiflood_sql as sql
from tg_bot.modules.disable import DisableAbleCommandHandler

FLOOD_GROUP = 3

Expand Down Expand Up @@ -130,8 +131,8 @@ def __chat_settings__(chat_id, user_id):
__mod_name__ = "AntiFlood"

FLOOD_BAN_HANDLER = MessageHandler(Filters.all & ~Filters.status_update & Filters.group, check_flood)
SET_FLOOD_HANDLER = CommandHandler("setflood", set_flood, pass_args=True, filters=Filters.group)
FLOOD_HANDLER = CommandHandler("flood", flood, filters=Filters.group)
SET_FLOOD_HANDLER = DisableAbleCommandHandler("setflood", set_flood, pass_args=True, filters=Filters.group)
FLOOD_HANDLER = DisableAbleCommandHandler("flood", flood, filters=Filters.group)

dispatcher.add_handler(FLOOD_BAN_HANDLER, FLOOD_GROUP)
dispatcher.add_handler(SET_FLOOD_HANDLER)
Expand Down
15 changes: 9 additions & 6 deletions tg_bot/modules/bans.py
Original file line number Diff line number Diff line change
Expand Up @@ -288,19 +288,22 @@ def unban(bot: Bot, update: Update, args: List[str]) -> str:
__help__ = """
- /kickme: kicks the user who issued the command.
*Admin only:*
*Admins only:*
- /ban <userhandle>: bans a user. (via handle, or reply)
- /tban <userhandle> x(m/h/d): bans a user for x time. (via handle, or reply). m = minutes, h = hours, d = days.
- /unban <userhandle>: unbans a user. (via handle, or reply)
- /kick <userhandle>: kicks a user, (via handle, or reply)
- /mute <userhandle>: silences a user. Can also be used as a reply, muting the replied to user.
- /tmute <userhandle> x(m/h/d): mutes a user for x time. (via handle, or reply). m = minutes, h = hours, d = days.
- /unmute <userhandle>: unmutes a user. Can also be used as a reply, muting the replied to user.
"""

__mod_name__ = "Bans"
__mod_name__ = "Bans/Mutes"

BAN_HANDLER = CommandHandler("ban", ban, pass_args=True, filters=Filters.group)
TEMPBAN_HANDLER = CommandHandler(["tban", "tempban"], temp_ban, pass_args=True, filters=Filters.group)
KICK_HANDLER = CommandHandler("kick", kick, pass_args=True, filters=Filters.group)
UNBAN_HANDLER = CommandHandler("unban", unban, pass_args=True, filters=Filters.group)
BAN_HANDLER = DisableAbleCommandHandler("ban", ban, pass_args=True, filters=Filters.group)
TEMPBAN_HANDLER = DisableAbleCommandHandler(["tban", "tempban"], temp_ban, pass_args=True, filters=Filters.group)
KICK_HANDLER = DisableAbleCommandHandler("kick", kick, pass_args=True, filters=Filters.group)
UNBAN_HANDLER = DisableAbleCommandHandler("unban", unban, pass_args=True, filters=Filters.group)
KICKME_HANDLER = DisableAbleCommandHandler("kickme", kickme, filters=Filters.group)

dispatcher.add_handler(BAN_HANDLER)
Expand Down
4 changes: 2 additions & 2 deletions tg_bot/modules/blacklist.py
Original file line number Diff line number Diff line change
Expand Up @@ -164,8 +164,8 @@ def __stats__():

BLACKLIST_HANDLER = DisableAbleCommandHandler("blacklist", blacklist, filters=Filters.group, pass_args=True,
admin_ok=True)
ADD_BLACKLIST_HANDLER = CommandHandler("addblacklist", add_blacklist, filters=Filters.group)
UNBLACKLIST_HANDLER = CommandHandler(["unblacklist", "rmblacklist"], unblacklist, filters=Filters.group)
ADD_BLACKLIST_HANDLER = DisableAbleCommandHandler("addblacklist", add_blacklist, filters=Filters.group)
UNBLACKLIST_HANDLER = DisableAbleCommandHandler(["unblacklist", "rmblacklist"], unblacklist, filters=Filters.group)
BLACKLIST_DEL_HANDLER = MessageHandler(
(Filters.text | Filters.command | Filters.sticker | Filters.photo) & Filters.group, del_blacklist, edited_updates=True)

Expand Down
4 changes: 2 additions & 2 deletions tg_bot/modules/cust_filters.py
Original file line number Diff line number Diff line change
Expand Up @@ -222,8 +222,8 @@ def __chat_settings__(chat_id, user_id):

__mod_name__ = "Filters"

FILTER_HANDLER = CommandHandler("filter", filters)
STOP_HANDLER = CommandHandler("stop", stop_filter)
FILTER_HANDLER = DisableAbleCommandHandler("filter", filters)
STOP_HANDLER = DisableAbleCommandHandler("stop", stop_filter)
LIST_HANDLER = DisableAbleCommandHandler("filters", list_handlers, admin_ok=True)
CUST_FILTER_HANDLER = MessageHandler(CustomFilters.has_text, reply_filter)

Expand Down
3 changes: 2 additions & 1 deletion tg_bot/modules/global_bans.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
from tg_bot.modules.helper_funcs.filters import CustomFilters
from tg_bot.modules.helper_funcs.misc import send_to_list
from tg_bot.modules.sql.users_sql import get_all_chats
from tg_bot.modules.disable import DisableAbleCommandHandler

GBAN_ENFORCE_GROUP = 6

Expand Down Expand Up @@ -314,7 +315,7 @@ def __chat_settings__(chat_id, user_id):
GBAN_LIST = CommandHandler("gbanlist", gbanlist,
filters=CustomFilters.sudo_filter | CustomFilters.support_filter)

GBAN_STATUS = CommandHandler("gbanstat", gbanstat, pass_args=True, filters=Filters.group)
GBAN_STATUS = DisableAbleCommandHandler("gbanstat", gbanstat, pass_args=True, filters=Filters.group)

GBAN_ENFORCER = MessageHandler(Filters.all & Filters.group, enforce_gban)

Expand Down
3 changes: 2 additions & 1 deletion tg_bot/modules/global_mutes.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
from tg_bot.modules.helper_funcs.filters import CustomFilters
from tg_bot.modules.helper_funcs.misc import send_to_list
from tg_bot.modules.sql.users_sql import get_all_chats
from tg_bot.modules.disable import DisableAbleCommandHandler

GMUTE_ENFORCE_GROUP = 6

Expand Down Expand Up @@ -309,7 +310,7 @@ def __chat_settings__(chat_id, user_id):
GMUTE_LIST = CommandHandler("gmutelist", gmutelist,
filters=CustomFilters.sudo_filter | CustomFilters.support_filter)

GMUTE_STATUS = CommandHandler("gmutestat", gmutestat, pass_args=True, filters=Filters.group)
GMUTE_STATUS = DisableAbleCommandHandler("gmutestat", gmutestat, pass_args=True, filters=Filters.group)

GMUTE_ENFORCER = MessageHandler(Filters.all & Filters.group, enforce_gmute)

Expand Down
6 changes: 3 additions & 3 deletions tg_bot/modules/locks.py
Original file line number Diff line number Diff line change
Expand Up @@ -307,9 +307,9 @@ def __chat_settings__(chat_id, user_id):
__mod_name__ = "Locks"

LOCKTYPES_HANDLER = DisableAbleCommandHandler("locktypes", locktypes)
LOCK_HANDLER = CommandHandler("lock", lock, pass_args=True, filters=Filters.group)
UNLOCK_HANDLER = CommandHandler("unlock", unlock, pass_args=True, filters=Filters.group)
LOCKED_HANDLER = CommandHandler("locks", list_locks, filters=Filters.group)
LOCK_HANDLER = DisableAbleCommandHandler("lock", lock, pass_args=True, filters=Filters.group)
UNLOCK_HANDLER = DisableAbleCommandHandler("unlock", unlock, pass_args=True, filters=Filters.group)
LOCKED_HANDLER = DisableAbleCommandHandler("locks", list_locks, filters=Filters.group)

dispatcher.add_handler(LOCK_HANDLER)
dispatcher.add_handler(UNLOCK_HANDLER)
Expand Down
7 changes: 4 additions & 3 deletions tg_bot/modules/log_channel.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
from typing import Optional

from tg_bot.modules.helper_funcs.misc import is_module_loaded
from tg_bot.modules.disable import DisableAbleCommandHandler

FILENAME = __name__.rsplit(".", 1)[-1]

Expand Down Expand Up @@ -156,9 +157,9 @@ def __chat_settings__(chat_id, user_id):

__mod_name__ = "Log Channels"

LOG_HANDLER = CommandHandler("logchannel", logging)
SET_LOG_HANDLER = CommandHandler("setlog", setlog)
UNSET_LOG_HANDLER = CommandHandler("unsetlog", unsetlog)
LOG_HANDLER = DisableAbleCommandHandler("logchannel", logging)
SET_LOG_HANDLER = DisableAbleCommandHandler("setlog", setlog)
UNSET_LOG_HANDLER = DisableAbleCommandHandler("unsetlog", unsetlog)

dispatcher.add_handler(LOG_HANDLER)
dispatcher.add_handler(SET_LOG_HANDLER)
Expand Down
6 changes: 3 additions & 3 deletions tg_bot/modules/msg_deleting.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
from tg_bot import dispatcher, LOGGER
from tg_bot.modules.helper_funcs.chat_status import user_admin, can_delete
from tg_bot.modules.log_channel import loggable

from tg_bot.modules.disable import DisableAbleCommandHandler

@run_async
@user_admin
Expand Down Expand Up @@ -90,8 +90,8 @@ def del_message(bot: Bot, update: Update) -> str:

__mod_name__ = "Purges"

DELETE_HANDLER = CommandHandler("del", del_message, filters=Filters.group)
PURGE_HANDLER = CommandHandler("purge", purge, filters=Filters.group, pass_args=True)
DELETE_HANDLER = DisableAbleCommandHandler("del", del_message, filters=Filters.group)
PURGE_HANDLER = DisableAbleCommandHandler("purge", purge, filters=Filters.group, pass_args=True)

dispatcher.add_handler(DELETE_HANDLER)
dispatcher.add_handler(PURGE_HANDLER)
16 changes: 4 additions & 12 deletions tg_bot/modules/muting.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
from tg_bot.modules.helper_funcs.extraction import extract_user, extract_user_and_text
from tg_bot.modules.helper_funcs.string_handling import extract_time
from tg_bot.modules.log_channel import loggable
from tg_bot.modules.disable import DisableAbleCommandHandler


@run_async
Expand Down Expand Up @@ -183,18 +184,9 @@ def temp_mute(bot: Bot, update: Update, args: List[str]) -> str:
return ""


__help__ = """
*Admin only:*
- /mute <userhandle>: silences a user. Can also be used as a reply, muting the replied to user.
- /tmute <userhandle> x(m/h/d): mutes a user for x time. (via handle, or reply). m = minutes, h = hours, d = days.
- /unmute <userhandle>: unmutes a user. Can also be used as a reply, muting the replied to user.
"""

__mod_name__ = "Muting"

MUTE_HANDLER = CommandHandler("mute", mute, pass_args=True, filters=Filters.group)
UNMUTE_HANDLER = CommandHandler("unmute", unmute, pass_args=True, filters=Filters.group)
TEMPMUTE_HANDLER = CommandHandler(["tmute", "tempmute"], temp_mute, pass_args=True, filters=Filters.group)
MUTE_HANDLER = DisableAbleCommandHandler("mute", mute, pass_args=True, filters=Filters.group)
UNMUTE_HANDLER = DisableAbleCommandHandler("unmute", unmute, pass_args=True, filters=Filters.group)
TEMPMUTE_HANDLER = DisableAbleCommandHandler(["tmute", "tempmute"], temp_mute, pass_args=True, filters=Filters.group)

dispatcher.add_handler(MUTE_HANDLER)
dispatcher.add_handler(UNMUTE_HANDLER)
Expand Down
7 changes: 4 additions & 3 deletions tg_bot/modules/reporting.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
from tg_bot.modules.helper_funcs.chat_status import user_not_admin, user_admin
from tg_bot.modules.log_channel import loggable
from tg_bot.modules.sql import reporting_sql as sql
from tg_bot.modules.disable import DisableAbleCommandHandler

REPORT_GROUP = 5

Expand All @@ -20,7 +21,7 @@ def report_setting(bot: Bot, update: Update, args: List[str]):
chat = update.effective_chat # type: Optional[Chat]
msg = update.effective_message # type: Optional[Message]

if chat.type == chat.PRIVATE:
if chat.type == chat.PRIVlATE:
if len(args) >= 1:
if args[0] in ("yes", "on"):
sql.set_user_setting(chat.id, True)
Expand Down Expand Up @@ -133,8 +134,8 @@ def __user_settings__(user_id):
- If in chat, toggles that chat's status.
"""

REPORT_HANDLER = CommandHandler("report", report, filters=Filters.group)
SETTING_HANDLER = CommandHandler("reports", report_setting, pass_args=True)
REPORT_HANDLER = DisableAbleCommandHandler("report", report, filters=Filters.group)
SETTING_HANDLER = DisableAbleCommandHandler("reports", report_setting, pass_args=True)
ADMIN_REPORT_HANDLER = RegexHandler("(?i)@admin(s)?", report)

dispatcher.add_handler(REPORT_HANDLER, REPORT_GROUP)
Expand Down
6 changes: 3 additions & 3 deletions tg_bot/modules/rules.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
from tg_bot import dispatcher
from tg_bot.modules.helper_funcs.chat_status import user_admin
from tg_bot.modules.helper_funcs.string_handling import markdown_parser

from tg_bot.modules.disable import DisableAbleCommandHandler

@run_async
def get_rules(bot: Bot, update: Update):
Expand Down Expand Up @@ -103,8 +103,8 @@ def __chat_settings__(chat_id, user_id):

__mod_name__ = "Rules"

GET_RULES_HANDLER = CommandHandler("rules", get_rules, filters=Filters.group)
SET_RULES_HANDLER = CommandHandler("setrules", set_rules, filters=Filters.group)
GET_RULES_HANDLER = DisableAbleCommandHandler("rules", get_rules, filters=Filters.group)
SET_RULES_HANDLER = DisableAbleCommandHandler("setrules", set_rules, filters=Filters.group)
RESET_RULES_HANDLER = CommandHandler("clearrules", clear_rules, filters=Filters.group)

dispatcher.add_handler(GET_RULES_HANDLER)
Expand Down
Loading

0 comments on commit e39bd0b

Please sign in to comment.