From 491fa288a3ed018ae2201ad751d5f67735cd90af Mon Sep 17 00:00:00 2001 From: David Wick Date: Mon, 2 Feb 2015 12:52:11 -0800 Subject: [PATCH] Comment embeds: fix deleted comment rendering Comments with no replies should still show the message: "This comment was deleted." --- r2/r2/controllers/front.py | 1 + r2/r2/lib/embeds.py | 4 ++++ r2/r2/models/builder.py | 6 ++++-- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/r2/r2/controllers/front.py b/r2/r2/controllers/front.py index b2bb92636..26a7c7903 100644 --- a/r2/r2/controllers/front.py +++ b/r2/r2/controllers/front.py @@ -304,6 +304,7 @@ class FrontController(RedditController): kw["edits_visible"] = showedits kw["load_more"] = kw["continue_this_thread"] = showmore + kw["show_deleted"] = embeds.is_embed() displayPane = PaneStack() diff --git a/r2/r2/lib/embeds.py b/r2/r2/lib/embeds.py index 94bf76aa1..b6755d2e2 100644 --- a/r2/r2/lib/embeds.py +++ b/r2/r2/lib/embeds.py @@ -84,3 +84,7 @@ def setup_embed(thing, showedits): c.user_is_loggedin = False c.forced_loggedout = True c.allow_framing = True + + +def is_embed(): + return c.render_style == "iframe" diff --git a/r2/r2/models/builder.py b/r2/r2/models/builder.py index 89ad51d52..d2b3c52d8 100644 --- a/r2/r2/models/builder.py +++ b/r2/r2/models/builder.py @@ -756,7 +756,8 @@ def make_wrapper(parent_wrapper = Wrapped, **params): class CommentBuilder(Builder): def __init__(self, link, sort, comment=None, children=None, context=None, load_more=True, continue_this_thread=True, - max_depth=MAX_RECURSION, edits_visible=True, num=None, **kw): + max_depth=MAX_RECURSION, edits_visible=True, num=None, + show_deleted=False, **kw): Builder.__init__(self, **kw) self.link = link self.comment = comment @@ -764,6 +765,7 @@ class CommentBuilder(Builder): self.context = context or 0 self.load_more = load_more self.max_depth = max_depth + self.show_deleted = show_deleted or c.user_is_admin self.edits_visible = edits_visible self.num = num self.continue_this_thread = continue_this_thread @@ -884,7 +886,7 @@ class CommentBuilder(Builder): for comment in wrapped: # skip deleted comments with no children if (comment.deleted and not cid_tree.has_key(comment._id) - and not c.user_is_admin): + and not self.show_deleted): continue comment.num_children = num_children[comment._id]