Do not inject dir=auto using BeautifulSoup
This commit is contained in:
parent
af24a3f16e
commit
7b45163d8a
|
@ -1,5 +1,4 @@
|
|||
DATE_FORMAT = "%Y-%m-%dT%H:%M:%S+00:00"
|
||||
from bs4 import BeautifulSoup
|
||||
from flask import Flask, Response, request, url_for, render_template, redirect
|
||||
from flask import Blueprint, current_app, g, abort, session as flask_session
|
||||
from flask import make_response
|
||||
|
@ -169,23 +168,6 @@ def paginate_query(query, results_per_page=15):
|
|||
"total_results": total_results
|
||||
}
|
||||
|
||||
def inject_rtl_direction(resp):
|
||||
if resp.mimetype == 'text/html':
|
||||
html_doc = resp.data.decode('utf8')
|
||||
soup = BeautifulSoup(html_doc, 'html.parser')
|
||||
if not soup.body:
|
||||
return resp
|
||||
for el in soup.body.find_all():
|
||||
if el.name == 'input' or el.name == 'textarea':
|
||||
el.attrs['dir'] = "auto"
|
||||
continue
|
||||
for ch in el.text:
|
||||
if unicodedata.bidirectional(ch) in ('R', 'AL'):
|
||||
el.attrs['dir'] = "auto"
|
||||
break
|
||||
resp.data = soup.encode('utf-8')
|
||||
return resp
|
||||
|
||||
class ModifiedUnicodeConverter(UnicodeConverter):
|
||||
"""Added ~ and ^ to safe URL characters, otherwise no changes."""
|
||||
def to_url(self, value):
|
||||
|
@ -414,7 +396,7 @@ class SrhtFlask(Flask):
|
|||
route=request.endpoint,
|
||||
status=resp.status_code,
|
||||
).observe(max(default_timer() - request._srht_start_time, 0))
|
||||
return inject_rtl_direction(resp)
|
||||
return resp
|
||||
|
||||
def make_response(self, rv):
|
||||
# Converts responses from dicts to JSON response objects
|
||||
|
|
Loading…
Reference in New Issue