mirror of https://gitlab.com/litecord/litecord.git
blueprints.guilds: fix guild_owner_check
- blueprints.guilds: fix create_guild_role
- blueprints.guilds: fix giving ints in the place of snowflakes in some
events
This commit is contained in:
parent
a08eb0d068
commit
956498ac65
|
|
@ -18,7 +18,7 @@ async def guild_owner_check(user_id: int, guild_id: int):
|
||||||
owner_id = await app.db.fetchval("""
|
owner_id = await app.db.fetchval("""
|
||||||
SELECT owner_id
|
SELECT owner_id
|
||||||
FROM guilds
|
FROM guilds
|
||||||
WHERE guild_id = $1
|
WHERE guilds.id = $1
|
||||||
""", guild_id)
|
""", guild_id)
|
||||||
|
|
||||||
if not owner_id:
|
if not owner_id:
|
||||||
|
|
@ -73,8 +73,6 @@ async def create_role(guild_id, name: str, **kwargs):
|
||||||
WHERE guild_id = $1
|
WHERE guild_id = $1
|
||||||
""", guild_id)
|
""", guild_id)
|
||||||
|
|
||||||
max_pos = max_pos or 0
|
|
||||||
|
|
||||||
await app.db.execute(
|
await app.db.execute(
|
||||||
"""
|
"""
|
||||||
INSERT INTO roles (id, guild_id, name, color,
|
INSERT INTO roles (id, guild_id, name, color,
|
||||||
|
|
@ -86,7 +84,11 @@ async def create_role(guild_id, name: str, **kwargs):
|
||||||
name,
|
name,
|
||||||
dict_get(kwargs, 'color', 0),
|
dict_get(kwargs, 'color', 0),
|
||||||
dict_get(kwargs, 'hoist', False),
|
dict_get(kwargs, 'hoist', False),
|
||||||
max_pos + 1,
|
|
||||||
|
# set position = 0 when there isn't any
|
||||||
|
# other role (when we're creating the
|
||||||
|
# @everyone role)
|
||||||
|
max_pos + 1 if max_pos else 0,
|
||||||
dict_get(kwargs, 'permissions', default_perms),
|
dict_get(kwargs, 'permissions', default_perms),
|
||||||
False,
|
False,
|
||||||
dict_get(kwargs, 'mentionable', False)
|
dict_get(kwargs, 'mentionable', False)
|
||||||
|
|
@ -95,7 +97,7 @@ async def create_role(guild_id, name: str, **kwargs):
|
||||||
role = await app.storage.get_role(new_role_id, guild_id)
|
role = await app.storage.get_role(new_role_id, guild_id)
|
||||||
await app.dispatcher.dispatch_guild(
|
await app.dispatcher.dispatch_guild(
|
||||||
guild_id, 'GUILD_ROLE_CREATE', {
|
guild_id, 'GUILD_ROLE_CREATE', {
|
||||||
'guild_id': guild_id,
|
'guild_id': str(guild_id),
|
||||||
'role': role,
|
'role': role,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
@ -384,9 +386,13 @@ async def create_guild_role(guild_id: int):
|
||||||
# TODO: use check_guild and MANAGE_ROLES permission
|
# TODO: use check_guild and MANAGE_ROLES permission
|
||||||
await guild_owner_check(user_id, guild_id)
|
await guild_owner_check(user_id, guild_id)
|
||||||
|
|
||||||
j = validate(await request.get_json(), ROLE_CREATE)
|
# client can just send null
|
||||||
|
j = validate(await request.get_json() or {}, ROLE_CREATE)
|
||||||
|
|
||||||
role = await create_role(guild_id, j.get('name', 'new role'), **j)
|
role_name = j['name']
|
||||||
|
j.pop('name')
|
||||||
|
|
||||||
|
role = await create_role(guild_id, role_name, **j)
|
||||||
|
|
||||||
return jsonify(role)
|
return jsonify(role)
|
||||||
|
|
||||||
|
|
@ -513,7 +519,7 @@ async def remove_member(guild_id: int, member_id: int):
|
||||||
await app.dispatcher.unsub('guild', guild_id, member_id)
|
await app.dispatcher.unsub('guild', guild_id, member_id)
|
||||||
|
|
||||||
await app.dispatcher.dispatch_guild(guild_id, 'GUILD_MEMBER_REMOVE', {
|
await app.dispatcher.dispatch_guild(guild_id, 'GUILD_MEMBER_REMOVE', {
|
||||||
'guild': guild_id,
|
'guild_id': str(guild_id),
|
||||||
'user': await app.storage.get_user(member_id),
|
'user': await app.storage.get_user(member_id),
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
@ -569,9 +575,10 @@ async def create_ban(guild_id, member_id):
|
||||||
|
|
||||||
await remove_member(guild_id, member_id)
|
await remove_member(guild_id, member_id)
|
||||||
|
|
||||||
await app.dispatcher.dispatch_guild(guild_id, 'GUILD_BAN_ADD', {**{
|
await app.dispatcher.dispatch_guild(guild_id, 'GUILD_BAN_ADD', {
|
||||||
'guild': guild_id,
|
'guild_id': str(guild_id),
|
||||||
}, **(await app.storage.get_user(member_id))})
|
'user': await app.storage.get_user(member_id)
|
||||||
|
})
|
||||||
|
|
||||||
return '', 204
|
return '', 204
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue