diff options
| -rw-r--r-- | bot/exts/filtering/filtering.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/bot/exts/filtering/filtering.py b/bot/exts/filtering/filtering.py index 11a3948f3..5f42e2cab 100644 --- a/bot/exts/filtering/filtering.py +++ b/bot/exts/filtering/filtering.py @@ -687,9 +687,12 @@ class Filtering(Cog): await ctx.send(embed=embed, reference=ctx.message, view=view) @staticmethod - def _identical_filters_message(content: str, filter_list: FilterList, list_type: ListType) -> str: + def _identical_filters_message(content: str, filter_list: FilterList, list_type: ListType, filter_: Filter) -> str: """Returns all the filters in the list with content identical to the content supplied.""" - duplicates = [f for f in filter_list.filter_lists.get(list_type, {}).values() if f.content == content] + duplicates = [ + f for f in filter_list.filter_lists.get(list_type, {}).values() + if f.content == content and f.id != filter_.id + ] msg = "" if duplicates: msg = f"\n:warning: The filter(s) #{', #'.join(str(dup.id) for dup in duplicates)} have the same content. " @@ -722,8 +725,8 @@ class Filtering(Cog): "additional_field": json.dumps(filter_settings), **settings } response = await bot.instance.api_client.post('bot/filter/filters', json=payload) - extra_msg = Filtering._identical_filters_message(content, filter_list, list_type) new_filter = filter_list.add_filter(response, list_type) + extra_msg = Filtering._identical_filters_message(content, filter_list, list_type, new_filter) await msg.reply(f"✅ Added filter: {new_filter}" + extra_msg) @staticmethod @@ -759,8 +762,8 @@ class Filtering(Cog): "additional_field": json.dumps(filter_settings), **settings } response = await bot.instance.api_client.patch(f'bot/filter/filters/{filter_.id}', json=payload) - extra_msg = Filtering._identical_filters_message(content, filter_list, list_type) edited_filter = filter_list.add_filter(response, list_type) + extra_msg = Filtering._identical_filters_message(content, filter_list, list_type, edited_filter) await msg.reply(f"✅ Edited filter: {edited_filter}" + extra_msg) # endregion |