Skip to content

Commit

Permalink
Use belach or nh3 for cleaning html (fix for #2874)
Browse files Browse the repository at this point in the history
  • Loading branch information
OzzieIsaacs committed Nov 9, 2023
1 parent bd71391 commit f78e0ff
Showing 1 changed file with 15 additions and 3 deletions.
18 changes: 15 additions & 3 deletions cps/editbooks.py
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,18 @@
from functools import wraps

try:
from lxml.html.clean import clean_html, Cleaner
from bleach import clean_text as clean_html
BLEACH = True
except ImportError:
clean_html = None
try:
from nh3 import clean as clean_html
BLEACH = False
except ImportError:
try:
from lxml.html.clean import clean_html
BLEACH = False
except ImportError:
clean_html = None

from flask import Blueprint, request, flash, redirect, url_for, abort, Response
from flask_babel import gettext as _
Expand Down Expand Up @@ -992,7 +1001,10 @@ def edit_book_series_index(series_index, book):
def edit_book_comments(comments, book):
modify_date = False
if comments:
comments = clean_html(comments)
if BLEACH:
comments = clean_html(comments, tags=None, attributes=None)
else:
comments = clean_html(comments)
if len(book.comments):
if book.comments[0].text != comments:
book.comments[0].text = comments
Expand Down

0 comments on commit f78e0ff

Please sign in to comment.