def addpiro(update: Update, context: CallbackContext) -> str: message = update.effective_message user = update.effective_user chat = update.effective_chat bot, args = context.bot, context.args user_id = extract_user(message, args) user_member = bot.getChat(user_id) rt = "" reply = check_user_id(user_id, bot) if reply: message.reply_text(reply) return "" with open(ELEVATED_USERS_FILE, "r") as infile: data = json.load(infile) if int(user_id) in DEV_USERS: message.reply_text("This member is already a Pro Developer") if user_id in DRAGONS: rt += "Requested AU to promote a Dragon Disaster to Pro Developer." data["sudos"].remove(user_id) DRAGONS.remove(user_id) if user_id in DEMONS: rt += "Requested AU to promote a Demon Disaster to Pro Developer." data["supports"].remove(user_id) DEMONS.remove(user_id) if user_id in WOLVES: rt += "Requested AU to promote a Wolf Disaster to Pro Developer." data["whitelists"].remove(user_id) WOLVES.remove(user_id) data["devs"].append(user_id) DEV_USERS.append(user_id) with open(ELEVATED_USERS_FILE, "w") as outfile: json.dump(data, outfile, indent=4) update.effective_message.reply_text( rt + "\nSuccessfully set Disaster level of {} to Pro Developer!".format( user_member.first_name ) ) log_message = ( f"#ProDeveloper\n" f"<b>Admin:</b> {mention_html(user.id, html.escape(user.first_name))}\n" f"<b>User:</b> {mention_html(user_member.id, html.escape(user_member.first_name))}" ) if chat.type != "private": log_message = f"<b>{html.escape(chat.title)}:</b>\n" + log_message return log_message
def rmpiro(update: Update, context: CallbackContext) -> str: message = update.effective_message user = update.effective_user chat = update.effective_chat bot, args = context.bot, context.args user_id = extract_user(message, args) user_member = bot.getChat(user_id) reply = check_user_id(user_id, bot) if reply: message.reply_text(reply) return "" with open(ELEVATED_USERS_FILE, 'r') as infile: data = json.load(infile) if user_id in DEV_USERS: message.reply_text("Requested HQ to demote this user to Civilian") DEV_USERS.remove(user_id) data['devs'].remove(user_id) with open(ELEVATED_USERS_FILE, 'w') as outfile: json.dump(data, outfile, indent=4) log_message = ( f"#UNDEV\n" f"<b>Admin:</b> {mention_html(user.id, html.escape(user.first_name))}\n" f"<b>User:</b> {mention_html(user_member.id, html.escape(user_member.first_name))}" ) if chat.type != 'private': log_message = "<b>{}:</b>\n".format(html.escape( chat.title)) + log_message return log_message else: message.reply_text("This user is not a Pro Developer Disaster!") return ""
from telegram.ext import ( CallbackContext, CommandHandler, Filters, MessageHandler, run_async, ) import LEGEND.X.sql.users_sql as sql from LEGEND import DEV_USERS, LOGGER, OWNER_ID, dispatcher from LEGEND.X.helper_funcs.chat_status import dev_plus, sudo_plus from LEGEND.X.sql.users_sql import get_all_users USERS_GROUP = 4 CHAT_GROUP = 5 DEV_AND_MORE = DEV_USERS.append(int(OWNER_ID)) def get_user_id(username): # ensure valid userid if len(username) <= 5: return None if username.startswith("@"): username = username[1:] users = sql.get_userid_by_name(username) if not users: return None