From 2f26d4ca7cf545625e6a779c0ec98e82d052ec26 Mon Sep 17 00:00:00 2001 From: callidus Date: Tue, 2 Oct 2018 21:54:02 +0200 Subject: [PATCH] adding 400 safety for description and title --- safeembeds/__init__.py | 6 ++---- safeembeds/embed.py | 42 ++++++++++++++++++++++-------------------- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/safeembeds/__init__.py b/safeembeds/__init__.py index c898b90..0c2f763 100644 --- a/safeembeds/__init__.py +++ b/safeembeds/__init__.py @@ -1,8 +1,6 @@ import discord -from .embed import new_add_field, new_set_footer, new_set_author +from .embed import NewEmbed def patch_discord(): - discord.Embed.add_field = new_add_field - discord.Embed.set_footer = new_set_footer - discord.Embed.set_author = new_set_author + discord.Embed = NewEmbed diff --git a/safeembeds/embed.py b/safeembeds/embed.py index 652f35c..549e21d 100644 --- a/safeembeds/embed.py +++ b/safeembeds/embed.py @@ -1,30 +1,32 @@ from discord import Embed -from .limits import field_name_limit, field_value_limit, footer_text_limit, author_name_limit +from .limits import * -old_add_field = Embed.add_field -old_set_footer = Embed.set_footer -old_set_author = Embed.set_author +class NewEmbed(Embed): + def __init__(self, **kwargs): + if len(kwargs['title']) > field_name_limit: + kwargs['title'] = (kwargs['title'][:title_limit-3] + '...') + if len(kwargs['description']) > field_value_limit: + kwargs['description'] = (kwargs['description'][:description_limit-3] + '...') + super().__init__(**kwargs) -def new_add_field(*args, **kwargs): - if len(kwargs['name']) > field_name_limit: - kwargs['name'] = (kwargs['name'][:field_name_limit-3] + '...') - if len(kwargs['value']) > field_value_limit: - kwargs['value'] = (kwargs['value'][:field_value_limit-3] + '...') + def add_field(*args, **kwargs): + if len(kwargs['name']) > field_name_limit: + kwargs['name'] = (kwargs['name'][:field_name_limit-3] + '...') + if len(kwargs['value']) > field_value_limit: + kwargs['value'] = (kwargs['value'][:field_value_limit-3] + '...') - old_add_field(*args, **kwargs) + super().add_field(**kwargs) + def set_footer(*args, **kwargs): + if len(kwargs['text']) > footer_text_limit: + kwargs['text'] = (kwargs['text'][:footer_text_limit - 3] + '...') -def new_set_footer(*args, **kwargs): - if len(kwargs['text']) > footer_text_limit: - kwargs['text'] = (kwargs['text'][:footer_text_limit - 3] + '...') + super().set_footer(*args, **kwargs) - old_set_footer(*args, **kwargs) + def set_author(*args, **kwargs): + if len(kwargs['name']) > author_name_limit: + kwargs['name'] = (kwargs['name'][:author_name_limit - 3] + '...') - -def new_set_author(*args, **kwargs): - if len(kwargs['name']) > author_name_limit: - kwargs['name'] = (kwargs['name'][:author_name_limit - 3] + '...') - - old_set_author(*args, **kwargs) + super().set_author(*args, **kwargs)