Use Jsoup cleaner

pull/72/head
M66B 6 years ago
parent 60bfa12bc5
commit 8bcc1b3163

@ -31,6 +31,7 @@ import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element; import org.jsoup.nodes.Element;
import org.jsoup.nodes.Node; import org.jsoup.nodes.Node;
import org.jsoup.nodes.TextNode; import org.jsoup.nodes.TextNode;
import org.jsoup.safety.Whitelist;
import org.jsoup.select.NodeTraversor; import org.jsoup.select.NodeTraversor;
import org.jsoup.select.NodeVisitor; import org.jsoup.select.NodeVisitor;
@ -115,14 +116,13 @@ public class HtmlHelper implements NodeVisitor {
public static String sanitize(Context context, String html, boolean reply) { public static String sanitize(Context context, String html, boolean reply) {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
Document document = Jsoup.parse(html);
if (prefs.getBoolean("sanitize", false)) { if (prefs.getBoolean("sanitize", false)) {
Document document = Jsoup.parse(html);
HtmlHelper visitor = new HtmlHelper(context, reply); HtmlHelper visitor = new HtmlHelper(context, reply);
NodeTraversor.traverse(visitor, document.body()); NodeTraversor.traverse(visitor, document.body());
return visitor.toString(); return visitor.toString();
} else { } else {
document.getElementsByTag("style").remove(); Document document = Jsoup.parse(Jsoup.clean(html, Whitelist.relaxed()));
document.select("[style]").removeAttr("style");
for (Element tr : document.select("tr")) for (Element tr : document.select("tr"))
tr.after("<br>"); tr.after("<br>");
return document.body().html(); return document.body().html();

Loading…
Cancel
Save