Example #1
0
def sudopromote(bot: Bot, update: Update, args: List[str]):
    message = update.effective_message
    banner = update.effective_user
    user_id = extract_user(message, args)

    if not user_id:
        message.reply_text("You don't seem to be referring to a user.")
        return ""

    if int(user_id) == OWNER_ID:
        message.reply_text(
            "The specified user is my owner! No need add him to DRAGONS list!")
        return ""

    if int(user_id) in DRAGONS:
        message.reply_text("The user is already a sudo user.")
        return ""

    with open("DRAGONS.txt", "a") as file:
        file.write(str(user_id) + "\n")

    DRAGONS.append(user_id)
    message.reply_text("Succefully added to SUDO user list!")

    return ""
Example #2
0
def addsudo(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 user_id in DRAGONS:
        message.reply_text("This member is already a Titan Shifter")
        return ""

    if user_id in DEMONS:
        rt += "Requested the Ackermans to promote a Royal Blood to Titan Shifter."
        data["supports"].remove(user_id)
        DEMONS.remove(user_id)

    if user_id in WOLVES:
        rt += "Requested the Ackermans to promote a Garrison to Titan Shifter."
        data["whitelists"].remove(user_id)
        WOLVES.remove(user_id)

    data["sudos"].append(user_id)
    DRAGONS.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 Titan Shifter!".format(
            user_member.first_name, ), )

    log_message = (
        f"#SUDO\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