Revert "new mention behavior, new filter behavior (#3553)" (#3619)

* Revert "new mention behavior, new filter behavior (#3553)"

This reverts commit 066bf516d9.

* keep invalid escape fix
This commit is contained in:
jack1142
2020-02-28 20:34:51 +01:00
committed by GitHub
parent 136fcd7bb2
commit 227009733e
3 changed files with 0 additions and 43 deletions

View File

@@ -1,7 +1,4 @@
import re
from typing import Iterable
import discord
__all__ = [
"URL_RE",
@@ -14,7 +11,6 @@ __all__ = [
"normalize_smartquotes",
"escape_spoilers",
"escape_spoilers_and_mass_mentions",
"sanitize_role_mentions",
]
# regexes
@@ -177,32 +173,3 @@ def escape_spoilers_and_mass_mentions(content: str) -> str:
The escaped string.
"""
return escape_spoilers(filter_mass_mentions(content))
def sanitize_role_mentions(content: str, roles: Iterable[discord.Role]) -> str:
"""
Swaps out role mentions for @RoleName
This should always be used prior to filtering everyone mentions
Parameters
----------
content: str
The string to make substitutions to
roles: Iterable[discord.Role]
The roles to make substitutions for
Returns
-------
str
The resulting string
"""
transformations = {re.escape(fr"<@&{role.id}>"): f"@{role.name}" for role in roles}
def repl(obj):
return transformations.get(re.escape(obj.group(0)), "")
pattern = re.compile("|".join(transformations.keys()))
result = pattern.sub(repl, content)
return result