Escape comment text

This commit is contained in:
Omar Roth 2018-09-09 07:40:12 -05:00
parent bd820b9b48
commit 8c45694ce5
1 changed files with 9 additions and 5 deletions

View File

@ -1890,9 +1890,13 @@ get "/api/v1/comments/:id" do |env|
node_comment = node["commentRenderer"] node_comment = node["commentRenderer"]
end end
contentHtml = node_comment["contentText"]["simpleText"]?.try &.as_s.rchop('\ufeff') content_html = node_comment["contentText"]["simpleText"]?.try &.as_s.rchop('\ufeff')
contentHtml ||= node_comment["contentText"]["runs"].as_a.map do |run| if content_html
text = run["text"].as_s content_html = HTML.escape(content_html)
end
content_html ||= node_comment["contentText"]["runs"].as_a.map do |run|
text = HTML.escape(run["text"].as_s)
if run["text"] == "\n" if run["text"] == "\n"
text = "<br>" text = "<br>"
@ -1924,7 +1928,7 @@ get "/api/v1/comments/:id" do |env|
text text
end.join.rchop('\ufeff') end.join.rchop('\ufeff')
contentHtml, content = html_to_content(contentHtml) content_html, content = html_to_content(content_html)
author = node_comment["authorText"]?.try &.["simpleText"] author = node_comment["authorText"]?.try &.["simpleText"]
author ||= "" author ||= ""
@ -1953,7 +1957,7 @@ get "/api/v1/comments/:id" do |env|
published = decode_date(node_comment["publishedTimeText"]["runs"][0]["text"].as_s.rchop(" (edited)")) published = decode_date(node_comment["publishedTimeText"]["runs"][0]["text"].as_s.rchop(" (edited)"))
json.field "content", content json.field "content", content
json.field "contentHtml", contentHtml json.field "contentHtml", content_html
json.field "published", published.epoch json.field "published", published.epoch
json.field "likeCount", node_comment["likeCount"] json.field "likeCount", node_comment["likeCount"]
json.field "commentId", node_comment["commentId"] json.field "commentId", node_comment["commentId"]