mirror of
https://github.com/TitanEmbeds/Titan.git
synced 2025-06-16 11:25:22 +02: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