aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRapptz <[email protected]>2018-12-17 18:04:32 -0500
committerRapptz <[email protected]>2018-12-17 18:04:32 -0500
commit648e62031df69222b08c284d03b0491f55b8e24a (patch)
tree4cb882ef9f78f86cd95beee5ef1347bcfdba599e
parentFix some lingering attribute setting issues. (diff)
downloaddiscord.py-648e62031df69222b08c284d03b0491f55b8e24a.tar.xz
discord.py-648e62031df69222b08c284d03b0491f55b8e24a.zip
Add support for explicit_content_filter in Guild.edit
-rw-r--r--discord/guild.py7
-rw-r--r--discord/http.py5
2 files changed, 10 insertions, 2 deletions
diff --git a/discord/guild.py b/discord/guild.py
index cf07697e..225a66e8 100644
--- a/discord/guild.py
+++ b/discord/guild.py
@@ -750,6 +750,8 @@ class Guild(Hashable):
The new verification level for the guild.
default_notifications: :class:`NotificationLevel`
The new default notification level for the guild.
+ explicit_content_filter: :class:`ContentFilter`
+ The new explicit content filter for the guild.
vanity_code: str
The new vanity code for the guild.
system_channel: Optional[:class:`TextChannel`]
@@ -842,6 +844,11 @@ class Guild(Hashable):
fields['verification_level'] = level.value
+ explicit_content_filter = fields.get('explicit_content_filter', self.explicit_content_filter)
+ if not isinstance(explicit_content_filter, ContentFilter):
+ raise InvalidArgument('explicit_content_filter field must of type ContentFilter')
+
+ fields['explicit_content_filter'] = explicit_content_filter.value
await http.edit_guild(self.id, reason=reason, **fields)
async def get_ban(self, user):
diff --git a/discord/http.py b/discord/http.py
index d2055093..d218ecca 100644
--- a/discord/http.py
+++ b/discord/http.py
@@ -565,7 +565,8 @@ class HTTPClient:
def edit_guild(self, guild_id, *, reason=None, **fields):
valid_keys = ('name', 'region', 'icon', 'afk_timeout', 'owner_id',
'afk_channel_id', 'splash', 'verification_level',
- 'system_channel_id', 'default_message_notifications')
+ 'system_channel_id', 'default_message_notifications',
+ 'explicit_content_filter')
payload = {
k: v for k, v in fields.items() if k in valid_keys
@@ -771,7 +772,7 @@ class HTTPClient:
def get_mutual_friends(self, user_id):
return self.request(Route('GET', '/users/{user_id}/relationships', user_id=user_id))
-
+
def change_hypesquad_house(self, house_id):
payload = {'house_id': house_id}
return self.request(Route('POST', '/hypesquad/online'), json=payload)