Rolegiver sorting, fix duplicate modlogs, fix awaiting standard funcs
This commit is contained in:
parent
f0d2bd1b37
commit
df7df919d7
3 changed files with 32 additions and 21 deletions
|
@ -35,10 +35,10 @@ class ModlogMemberCog(commands.Cog):
|
||||||
guild=guild.id,
|
guild=guild.id,
|
||||||
user=user.id,
|
user=user.id,
|
||||||
active=True,
|
active=True,
|
||||||
sort=MongoSort(key="created_at", type="desc"),
|
sort=MongoSort(key="created_at", direction="desc"),
|
||||||
)
|
)
|
||||||
admin = guild.get_member(ban.admin)
|
admin = guild.get_member(ban.admin)
|
||||||
embed = await modlog_embed(
|
embed = modlog_embed(
|
||||||
user,
|
user,
|
||||||
admin,
|
admin,
|
||||||
log,
|
log,
|
||||||
|
@ -67,10 +67,10 @@ class ModlogMemberCog(commands.Cog):
|
||||||
guild=guild.id,
|
guild=guild.id,
|
||||||
user=user.id,
|
user=user.id,
|
||||||
active=True,
|
active=True,
|
||||||
sort=MongoSort(key="created_at", type="desc"),
|
sort=MongoSort(key="created_at", direction="desc"),
|
||||||
)
|
)
|
||||||
admin = guild.get_member(ban.admin)
|
admin = guild.get_member(ban.admin)
|
||||||
embed = await modlog_embed(
|
embed = modlog_embed(
|
||||||
user,
|
user,
|
||||||
admin,
|
admin,
|
||||||
log,
|
log,
|
||||||
|
@ -98,10 +98,10 @@ class ModlogMemberCog(commands.Cog):
|
||||||
kick = Kick.get(
|
kick = Kick.get(
|
||||||
guild=user.guild.id,
|
guild=user.guild.id,
|
||||||
user=user.id,
|
user=user.id,
|
||||||
sort=MongoSort(key="created_at", type="desc"),
|
sort=MongoSort(key="created_at", direction="desc"),
|
||||||
)
|
)
|
||||||
admin = user.guild.get_member(kick.admin)
|
admin = user.guild.get_member(kick.admin)
|
||||||
embed = await modlog_embed(
|
embed = modlog_embed(
|
||||||
user,
|
user,
|
||||||
admin,
|
admin,
|
||||||
log,
|
log,
|
||||||
|
@ -126,7 +126,7 @@ class ModlogMemberCog(commands.Cog):
|
||||||
guild=before.guild.id,
|
guild=before.guild.id,
|
||||||
user=before.id,
|
user=before.id,
|
||||||
active=True,
|
active=True,
|
||||||
sort=MongoSort(key="created_at", type="desc"),
|
sort=MongoSort(key="created_at", direction="desc"),
|
||||||
)
|
)
|
||||||
admin = before.guild.get_member(mute.admin)
|
admin = before.guild.get_member(mute.admin)
|
||||||
return modlog_embed(
|
return modlog_embed(
|
||||||
|
@ -152,7 +152,7 @@ class ModlogMemberCog(commands.Cog):
|
||||||
guild=before.guild.id,
|
guild=before.guild.id,
|
||||||
user=before.id,
|
user=before.id,
|
||||||
active=True,
|
active=True,
|
||||||
sort=MongoSort(key="created_at", type="desc"),
|
sort=MongoSort(key="created_at", direction="desc"),
|
||||||
)
|
)
|
||||||
mute = Mute(**mute)
|
mute = Mute(**mute)
|
||||||
admin = before.guild.get_member(mute.admin)
|
admin = before.guild.get_member(mute.admin)
|
||||||
|
|
|
@ -42,6 +42,8 @@ class RolegiverCog(commands.Cog):
|
||||||
for role_id in setting.value:
|
for role_id in setting.value:
|
||||||
e_role = ctx.guild.get_role(role_id)
|
e_role = ctx.guild.get_role(role_id)
|
||||||
roles.append(e_role)
|
roles.append(e_role)
|
||||||
|
if roles:
|
||||||
|
roles.sort(lambda x: -x.position)
|
||||||
|
|
||||||
value = "\n".join([r.mention for r in roles]) if roles else "None"
|
value = "\n".join([r.mention for r in roles]) if roles else "None"
|
||||||
fields = [
|
fields = [
|
||||||
|
@ -101,6 +103,9 @@ class RolegiverCog(commands.Cog):
|
||||||
e_role = ctx.guild.get_role(role_id)
|
e_role = ctx.guild.get_role(role_id)
|
||||||
roles.append(e_role)
|
roles.append(e_role)
|
||||||
|
|
||||||
|
if roles:
|
||||||
|
roles.sort(lambda x: -x.position)
|
||||||
|
|
||||||
value = "\n".join([r.mention for r in roles]) if roles else "None"
|
value = "\n".join([r.mention for r in roles]) if roles else "None"
|
||||||
fields = [
|
fields = [
|
||||||
Field(name="Removed Role", value=f"{role.mention}"),
|
Field(name="Removed Role", value=f"{role.mention}"),
|
||||||
|
@ -142,6 +147,9 @@ class RolegiverCog(commands.Cog):
|
||||||
e_role = ctx.guild.get_role(role_id)
|
e_role = ctx.guild.get_role(role_id)
|
||||||
roles.append(e_role)
|
roles.append(e_role)
|
||||||
|
|
||||||
|
if roles:
|
||||||
|
roles.sort(lambda x: -x.position)
|
||||||
|
|
||||||
value = "\n".join([r.mention for r in roles]) if roles else "None"
|
value = "\n".join([r.mention for r in roles]) if roles else "None"
|
||||||
|
|
||||||
embed = build_embed(
|
embed = build_embed(
|
||||||
|
@ -191,11 +199,12 @@ class RolegiverCog(commands.Cog):
|
||||||
|
|
||||||
await ctx.author.add_roles(role, reason="Rolegiver")
|
await ctx.author.add_roles(role, reason="Rolegiver")
|
||||||
|
|
||||||
value = (
|
roles = ctx.author.roles
|
||||||
"\n".join([r.mention for r in ctx.author.roles])
|
if roles:
|
||||||
if ctx.author.roles
|
roles.sort(lambda x: -x.position)
|
||||||
else "None"
|
_ = roles.pop(-1)
|
||||||
)
|
|
||||||
|
value = "\n".join([r.mention for r in roles]) if roles else "None"
|
||||||
fields = [
|
fields = [
|
||||||
Field(name="Added Role", value=f"{role.mention}"),
|
Field(name="Added Role", value=f"{role.mention}"),
|
||||||
Field(name="Prior Role(s)", value=value),
|
Field(name="Prior Role(s)", value=value),
|
||||||
|
@ -248,11 +257,12 @@ class RolegiverCog(commands.Cog):
|
||||||
|
|
||||||
await ctx.author.remove_roles(role, reason="Rolegiver")
|
await ctx.author.remove_roles(role, reason="Rolegiver")
|
||||||
|
|
||||||
value = (
|
roles = ctx.author.roles
|
||||||
"\n".join([r.mention for r in ctx.author.roles if r.id != role.id])
|
if roles:
|
||||||
if ctx.author.roles
|
roles.sort(lambda x: -x.position)
|
||||||
else "None"
|
_ = roles.pop(-1)
|
||||||
)
|
|
||||||
|
value = "\n".join([r.mention for r in roles]) if roles else "None"
|
||||||
fields = [
|
fields = [
|
||||||
Field(name="Taken Role", value=f"{role.mention}"),
|
Field(name="Taken Role", value=f"{role.mention}"),
|
||||||
Field(name="Remaining Role(s)", value=value),
|
Field(name="Remaining Role(s)", value=value),
|
||||||
|
|
|
@ -20,6 +20,7 @@ class MemberEventHandler(object):
|
||||||
unverified = Setting.get(guild=guild.id, setting="unverified")
|
unverified = Setting.get(guild=guild.id, setting="unverified")
|
||||||
if unverified:
|
if unverified:
|
||||||
role = guild.get_role(unverified.value)
|
role = guild.get_role(unverified.value)
|
||||||
await user.add_roles(
|
if role not in user.roles:
|
||||||
role, reason="User just joined and is unverified"
|
await user.add_roles(
|
||||||
)
|
role, reason="User just joined and is unverified"
|
||||||
|
)
|
||||||
|
|
Loading…
Add table
Reference in a new issue