forked from CGM_Public/pretix_original
Fix #1488 some more: compile the regex' less often for better performance
This commit is contained in:
@@ -65,6 +65,10 @@ ALLOWED_ATTRIBUTES = {
|
|||||||
|
|
||||||
ALLOWED_PROTOCOLS = ['http', 'https', 'mailto', 'tel']
|
ALLOWED_PROTOCOLS = ['http', 'https', 'mailto', 'tel']
|
||||||
|
|
||||||
|
URL_RE = build_url_re(tlds=tld_set)
|
||||||
|
|
||||||
|
EMAIL_RE = build_email_re(tlds=tld_set)
|
||||||
|
|
||||||
|
|
||||||
def safelink_callback(attrs, new=False):
|
def safelink_callback(attrs, new=False):
|
||||||
url = attrs.get((None, 'href'), '/')
|
url = attrs.get((None, 'href'), '/')
|
||||||
@@ -87,8 +91,8 @@ def abslink_callback(attrs, new=False):
|
|||||||
|
|
||||||
def markdown_compile_email(source):
|
def markdown_compile_email(source):
|
||||||
linker = bleach.Linker(
|
linker = bleach.Linker(
|
||||||
url_re=build_url_re(tlds=tld_set),
|
url_re=URL_RE,
|
||||||
email_re=build_email_re(tlds=tld_set),
|
email_re=EMAIL_RE,
|
||||||
parse_email=True
|
parse_email=True
|
||||||
)
|
)
|
||||||
return linker.linkify(bleach.clean(
|
return linker.linkify(bleach.clean(
|
||||||
@@ -129,8 +133,8 @@ def rich_text(text: str, **kwargs):
|
|||||||
"""
|
"""
|
||||||
text = str(text)
|
text = str(text)
|
||||||
linker = bleach.Linker(
|
linker = bleach.Linker(
|
||||||
url_re=build_url_re(tlds=tld_set),
|
url_re=URL_RE,
|
||||||
email_re=build_email_re(tlds=tld_set),
|
email_re=EMAIL_RE,
|
||||||
callbacks=DEFAULT_CALLBACKS + ([safelink_callback] if kwargs.get('safelinks', True) else [abslink_callback]),
|
callbacks=DEFAULT_CALLBACKS + ([safelink_callback] if kwargs.get('safelinks', True) else [abslink_callback]),
|
||||||
parse_email=True
|
parse_email=True
|
||||||
)
|
)
|
||||||
@@ -145,8 +149,8 @@ def rich_text_snippet(text: str, **kwargs):
|
|||||||
"""
|
"""
|
||||||
text = str(text)
|
text = str(text)
|
||||||
linker = bleach.Linker(
|
linker = bleach.Linker(
|
||||||
url_re=build_url_re(tlds=tld_set),
|
url_re=URL_RE,
|
||||||
email_re=build_email_re(tlds=tld_set),
|
email_re=EMAIL_RE,
|
||||||
callbacks=DEFAULT_CALLBACKS + ([safelink_callback] if kwargs.get('safelinks', True) else [abslink_callback]),
|
callbacks=DEFAULT_CALLBACKS + ([safelink_callback] if kwargs.get('safelinks', True) else [abslink_callback]),
|
||||||
parse_email=True
|
parse_email=True
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ dj-static
|
|||||||
csscompressor
|
csscompressor
|
||||||
django-markup
|
django-markup
|
||||||
markdown<=2.2
|
markdown<=2.2
|
||||||
bleach>=3.1.3
|
bleach>=3.1.3,<3.2.0
|
||||||
sentry-sdk==0.14.*
|
sentry-sdk==0.14.*
|
||||||
babel
|
babel
|
||||||
django-i18nfield>=1.7.0
|
django-i18nfield>=1.7.0
|
||||||
|
|||||||
@@ -120,7 +120,7 @@ setup(
|
|||||||
'csscompressor',
|
'csscompressor',
|
||||||
'django-markup',
|
'django-markup',
|
||||||
'markdown<=2.2',
|
'markdown<=2.2',
|
||||||
'bleach>=3.1.3',
|
'bleach>=3.1.3,<3.2.0',
|
||||||
'sentry-sdk==0.14.*',
|
'sentry-sdk==0.14.*',
|
||||||
'babel',
|
'babel',
|
||||||
'paypalrestsdk==1.13.*',
|
'paypalrestsdk==1.13.*',
|
||||||
|
|||||||
Reference in New Issue
Block a user