mirror of
				https://github.com/TitanEmbeds/Titan.git
				synced 2025-11-04 07:47:10 +01:00 
			
		
		
		
	Implement autorole for embed users
This commit is contained in:
		@@ -176,6 +176,7 @@ def administrate_guild(guild_id):
 | 
			
		||||
    dbguild_dict = {
 | 
			
		||||
        "id": guild["id"],
 | 
			
		||||
        "name": guild["name"],
 | 
			
		||||
        "roles": guild["roles"],
 | 
			
		||||
        "unauth_users": db_guild.unauth_users,
 | 
			
		||||
        "visitor_view": db_guild.visitor_view,
 | 
			
		||||
        "webhook_messages": db_guild.webhook_messages,
 | 
			
		||||
@@ -191,6 +192,8 @@ def administrate_guild(guild_id):
 | 
			
		||||
        "banned_words_enabled": db_guild.banned_words_enabled,
 | 
			
		||||
        "banned_words_global_included": db_guild.banned_words_global_included,
 | 
			
		||||
        "banned_words": json.loads(db_guild.banned_words),
 | 
			
		||||
        "autorole_unauth": db_guild.autorole_unauth,
 | 
			
		||||
        "autorole_discord": db_guild.autorole_discord
 | 
			
		||||
    }
 | 
			
		||||
    return render_template("administrate_guild.html.j2", guild=dbguild_dict, members=users, permissions=permissions, cosmetics=cosmetics)
 | 
			
		||||
 | 
			
		||||
@@ -209,6 +212,8 @@ def update_administrate_guild(guild_id):
 | 
			
		||||
    db_guild.max_message_length = request.form.get("max_message_length", db_guild.max_message_length)
 | 
			
		||||
    db_guild.banned_words_enabled = request.form.get("banned_words_enabled", db_guild.banned_words_enabled) in ["true", True]
 | 
			
		||||
    db_guild.banned_words_global_included = request.form.get("banned_words_global_included", db_guild.banned_words_global_included) in ["true", True]
 | 
			
		||||
    db_guild.autorole_unauth = request.form.get("autorole_unauth", db_guild.autorole_unauth, type=int)
 | 
			
		||||
    db_guild.autorole_discord = request.form.get("autorole_discord", db_guild.autorole_discord, type=int)
 | 
			
		||||
    invite_link = request.form.get("invite_link", db_guild.invite_link)
 | 
			
		||||
    if invite_link != None and invite_link.strip() == "":
 | 
			
		||||
        invite_link = None
 | 
			
		||||
@@ -244,6 +249,8 @@ def update_administrate_guild(guild_id):
 | 
			
		||||
        banned_words_enabled=db_guild.banned_words_enabled,
 | 
			
		||||
        banned_words_global_included=db_guild.banned_words_global_included,
 | 
			
		||||
        banned_words=json.loads(db_guild.banned_words),
 | 
			
		||||
        autorole_unauth=db_guild.autorole_unauth,
 | 
			
		||||
        autorole_discord=db_guild.autorole_discord
 | 
			
		||||
    )
 | 
			
		||||
 | 
			
		||||
@admin.route("/guilds")
 | 
			
		||||
 
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
from titanembeds.database import db, Guilds, UnauthenticatedUsers, UnauthenticatedBans, AuthenticatedUsers, get_administrators_list, get_badges, DiscordBotsOrgTransactions
 | 
			
		||||
from titanembeds.decorators import valid_session_required, discord_users_only, abort_if_guild_disabled
 | 
			
		||||
from titanembeds.utils import check_guild_existance, guild_accepts_visitors, guild_query_unauth_users_bool, get_client_ipaddr, discord_api, rate_limiter, channel_ratelimit_key, guild_ratelimit_key, user_unauthenticated, checkUserRevoke, checkUserBanned, update_user_status, check_user_in_guild, get_guild_channels, guild_webhooks_enabled, guild_unauthcaptcha_enabled, get_member_roles, get_online_embed_user_keys, redis_store, redisqueue
 | 
			
		||||
from titanembeds.utils import check_guild_existance, guild_accepts_visitors, guild_query_unauth_users_bool, get_client_ipaddr, discord_api, rate_limiter, channel_ratelimit_key, guild_ratelimit_key, user_unauthenticated, checkUserRevoke, checkUserBanned, update_user_status, check_user_in_guild, get_guild_channels, guild_webhooks_enabled, guild_unauthcaptcha_enabled, get_member_roles, get_online_embed_user_keys, redis_store, redisqueue, get_forced_role
 | 
			
		||||
from titanembeds.oauth import user_has_permission, generate_avatar_url, check_user_can_administrate_guild
 | 
			
		||||
import titanembeds.constants as constants
 | 
			
		||||
from flask import Blueprint, abort, jsonify, session, request, url_for
 | 
			
		||||
@@ -93,7 +93,8 @@ def format_everyone_mention(channel, content):
 | 
			
		||||
    return content
 | 
			
		||||
 | 
			
		||||
def filter_guild_channel(guild_id, channel_id, force_everyone=False):
 | 
			
		||||
    channels = get_guild_channels(guild_id, force_everyone)
 | 
			
		||||
    forced_role = get_forced_role(guild_id)
 | 
			
		||||
    channels = get_guild_channels(guild_id, force_everyone, forced_role)
 | 
			
		||||
    for chan in channels:
 | 
			
		||||
        if chan["channel"]["id"] == channel_id:
 | 
			
		||||
            return chan
 | 
			
		||||
@@ -426,7 +427,8 @@ def get_guild_guest_icon(guild_id):
 | 
			
		||||
 | 
			
		||||
def process_query_guild(guild_id, visitor=False):
 | 
			
		||||
    widget = discord_api.get_widget(guild_id)
 | 
			
		||||
    channels = get_guild_channels(guild_id, visitor)
 | 
			
		||||
    forced_role = get_forced_role(guild_id)
 | 
			
		||||
    channels = get_guild_channels(guild_id, visitor, forced_role=forced_role)
 | 
			
		||||
    if widget.get("success", True):
 | 
			
		||||
        discordmembers = get_online_discord_users(guild_id, widget)
 | 
			
		||||
    else:
 | 
			
		||||
 
 | 
			
		||||
@@ -1,4 +1,4 @@
 | 
			
		||||
from titanembeds.utils import socketio, guild_accepts_visitors, get_client_ipaddr, discord_api, check_user_in_guild, get_guild_channels, update_user_status, guild_webhooks_enabled, redis_store, redisqueue
 | 
			
		||||
from titanembeds.utils import socketio, guild_accepts_visitors, get_client_ipaddr, discord_api, check_user_in_guild, get_guild_channels, update_user_status, guild_webhooks_enabled, redis_store, redisqueue, get_forced_role
 | 
			
		||||
from titanembeds.database import db
 | 
			
		||||
from flask_socketio import Namespace, emit, disconnect, join_room, leave_room
 | 
			
		||||
import functools
 | 
			
		||||
@@ -21,10 +21,11 @@ class Gateway(Namespace):
 | 
			
		||||
            return
 | 
			
		||||
        session["socket_guild_id"] = guild_id
 | 
			
		||||
        channels = []
 | 
			
		||||
        forced_role = get_forced_role(guild_id)
 | 
			
		||||
        if guild_accepts_visitors(guild_id) and not check_user_in_guild(guild_id):
 | 
			
		||||
            channels = get_guild_channels(guild_id, force_everyone=True)
 | 
			
		||||
            channels = get_guild_channels(guild_id, force_everyone=True, forced_role=forced_role)
 | 
			
		||||
        else:
 | 
			
		||||
            channels = get_guild_channels(guild_id)
 | 
			
		||||
            channels = get_guild_channels(guild_id, forced_role=forced_role)
 | 
			
		||||
        join_room("GUILD_"+guild_id)
 | 
			
		||||
        for chan in channels:
 | 
			
		||||
            if chan["read"]:
 | 
			
		||||
@@ -96,10 +97,11 @@ class Gateway(Namespace):
 | 
			
		||||
        guild_id = data["guild_id"]
 | 
			
		||||
        visitor_mode = data["visitor_mode"]
 | 
			
		||||
        channels = None
 | 
			
		||||
        forced_role = get_forced_role(guild_id)
 | 
			
		||||
        if visitor_mode or session.get("unauthenticated", True):
 | 
			
		||||
            channels = get_guild_channels(guild_id, True)
 | 
			
		||||
            channels = get_guild_channels(guild_id, True, forced_role=forced_role)
 | 
			
		||||
        else:
 | 
			
		||||
            channels = get_guild_channels(guild_id)
 | 
			
		||||
            channels = get_guild_channels(guild_id, forced_role=forced_role)
 | 
			
		||||
        for chan in channels:
 | 
			
		||||
            if chan["read"]:
 | 
			
		||||
                join_room("CHANNEL_"+chan["channel"]["id"])
 | 
			
		||||
 
 | 
			
		||||
@@ -213,6 +213,7 @@ def administrate_guild(guild_id):
 | 
			
		||||
    dbguild_dict = {
 | 
			
		||||
        "id": db_guild.guild_id,
 | 
			
		||||
        "name": guild["name"],
 | 
			
		||||
        "roles": guild["roles"],
 | 
			
		||||
        "unauth_users": db_guild.unauth_users,
 | 
			
		||||
        "visitor_view": db_guild.visitor_view,
 | 
			
		||||
        "webhook_messages": db_guild.webhook_messages,
 | 
			
		||||
@@ -228,6 +229,8 @@ def administrate_guild(guild_id):
 | 
			
		||||
        "banned_words_enabled": db_guild.banned_words_enabled,
 | 
			
		||||
        "banned_words_global_included": db_guild.banned_words_global_included,
 | 
			
		||||
        "banned_words": json.loads(db_guild.banned_words),
 | 
			
		||||
        "autorole_unauth": db_guild.autorole_unauth,
 | 
			
		||||
        "autorole_discord": db_guild.autorole_discord
 | 
			
		||||
    }
 | 
			
		||||
    return render_template("administrate_guild.html.j2", guild=dbguild_dict, members=users, permissions=permissions, cosmetics=cosmetics, disabled=(guild_id in list_disabled_guilds()))
 | 
			
		||||
 | 
			
		||||
@@ -254,6 +257,8 @@ def update_administrate_guild(guild_id):
 | 
			
		||||
    db_guild.max_message_length = request.form.get("max_message_length", db_guild.max_message_length)
 | 
			
		||||
    db_guild.banned_words_enabled = request.form.get("banned_words_enabled", db_guild.banned_words_enabled) in ["true", True]
 | 
			
		||||
    db_guild.banned_words_global_included = request.form.get("banned_words_global_included", db_guild.banned_words_global_included) in ["true", True]
 | 
			
		||||
    db_guild.autorole_unauth = request.form.get("autorole_unauth", db_guild.autorole_unauth, type=int)
 | 
			
		||||
    db_guild.autorole_discord = request.form.get("autorole_discord", db_guild.autorole_discord, type=int)
 | 
			
		||||
    
 | 
			
		||||
    invite_link = request.form.get("invite_link", db_guild.invite_link)
 | 
			
		||||
    if invite_link != None and invite_link.strip() == "":
 | 
			
		||||
@@ -293,6 +298,8 @@ def update_administrate_guild(guild_id):
 | 
			
		||||
        banned_words_enabled=db_guild.banned_words_enabled,
 | 
			
		||||
        banned_words_global_included=db_guild.banned_words_global_included,
 | 
			
		||||
        banned_words=json.loads(db_guild.banned_words),
 | 
			
		||||
        autorole_unauth=db_guild.autorole_unauth,
 | 
			
		||||
        autorole_discord=db_guild.autorole_discord
 | 
			
		||||
    )
 | 
			
		||||
 | 
			
		||||
@user.route("/add-bot/<guild_id>")
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user