From 8d204621151a0e59b1095f443204dcd61a78e533 Mon Sep 17 00:00:00 2001 From: Chad Birch Date: Thu, 13 Jun 2013 16:28:22 -0600 Subject: [PATCH] Add 'other discussions' tab for self-posts Shows submissions linking to the self-post --- r2/r2/controllers/front.py | 15 +++++---------- r2/r2/lib/pages/pages.py | 2 +- r2/r2/lib/utils/utils.py | 4 ++++ 3 files changed, 10 insertions(+), 11 deletions(-) diff --git a/r2/r2/controllers/front.py b/r2/r2/controllers/front.py index e2d5bbe16..e9a5c54c1 100755 --- a/r2/r2/controllers/front.py +++ b/r2/r2/controllers/front.py @@ -759,16 +759,11 @@ class FrontController(RedditController, OAuth2ResourceController): if not can_view_link_comments(article): abort(403, 'forbidden') - # only look up duplicates if it's not a self-post - if not getattr(article, 'is_self', False): - builder = url_links_builder(article.url, exclude=article._fullname, - num=num, after=after, reverse=reverse, - count=count) - num_duplicates = len(builder.get_items()[0]) - listing = LinkListing(builder).listing() - else: - num_duplicates = 0 - listing = None + builder = url_links_builder(article.url, exclude=article._fullname, + num=num, after=after, reverse=reverse, + count=count) + num_duplicates = len(builder.get_items()[0]) + listing = LinkListing(builder).listing() res = LinkInfoPage(link=article, comment=None, diff --git a/r2/r2/lib/pages/pages.py b/r2/r2/lib/pages/pages.py index 944fad46d..b034a8f2c 100755 --- a/r2/r2/lib/pages/pages.py +++ b/r2/r2/lib/pages/pages.py @@ -1167,7 +1167,7 @@ class LinkInfoPage(Reddit): buttons.extend([info_button('comments'), info_button('related')]) - if not self.link.is_self and self.num_duplicates > 0: + if self.num_duplicates > 0: buttons.append(info_button('duplicates', num=self.num_duplicates)) if c.user_is_admin: diff --git a/r2/r2/lib/utils/utils.py b/r2/r2/lib/utils/utils.py index 756c75501..a9f54ea78 100644 --- a/r2/r2/lib/utils/utils.py +++ b/r2/r2/lib/utils/utils.py @@ -1030,9 +1030,13 @@ def filter_links(links, filter_spam = False, multiple = True): def url_links_builder(url, exclude=None, num=None, after=None, reverse=None, count=None): + from r2.lib.template_helpers import add_sr from r2.models import IDBuilder, Link, NotFound from operator import attrgetter + if url.startswith('/'): + url = add_sr(url, force_hostname=True) + try: links = tup(Link._by_url(url, None)) except NotFound: