From c7f918754e5106de62fd0af735b793ef797712f0 Mon Sep 17 00:00:00 2001 From: David Hu Date: Mon, 6 May 2013 12:39:48 -0700 Subject: [PATCH] Fix discussion page's "limit", "after", "reverse", "count" params. --- r2/r2/controllers/front.py | 5 +++-- r2/r2/controllers/wiki.py | 3 ++- r2/r2/lib/utils/utils.py | 8 +++++--- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/r2/r2/controllers/front.py b/r2/r2/controllers/front.py index 884285984..8f334c84f 100755 --- a/r2/r2/controllers/front.py +++ b/r2/r2/controllers/front.py @@ -764,8 +764,9 @@ class FrontController(RedditController, OAuth2ResourceController): # 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) + 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: diff --git a/r2/r2/controllers/wiki.py b/r2/r2/controllers/wiki.py index a9202bce7..7110bd35f 100644 --- a/r2/r2/controllers/wiki.py +++ b/r2/r2/controllers/wiki.py @@ -225,7 +225,8 @@ class WikiController(RedditController): @validate(page=VWikiPage('page', restricted=True)) def GET_wiki_discussions(self, page, num, after, reverse, count): page_url = add_sr("%s/%s" % (c.wiki_base_url, page.name)) - builder = url_links_builder(page_url) + builder = url_links_builder(page_url, num=num, after=after, + reverse=reverse, count=count) listing = LinkListing(builder).listing() return WikiDiscussions(listing, page=page.name, may_revise=this_may_revise(page)).render() diff --git a/r2/r2/lib/utils/utils.py b/r2/r2/lib/utils/utils.py index 25d5ad22a..756c75501 100644 --- a/r2/r2/lib/utils/utils.py +++ b/r2/r2/lib/utils/utils.py @@ -1028,7 +1028,8 @@ def filter_links(links, filter_spam = False, multiple = True): # among those, show them the hottest one return links if multiple else links[0] -def url_links_builder(url, exclude=None): +def url_links_builder(url, exclude=None, num=None, after=None, reverse=None, + count=None): from r2.models import IDBuilder, Link, NotFound from operator import attrgetter @@ -1050,8 +1051,9 @@ def url_links_builder(url, exclude=None): c.user_is_admin or link.subreddit.is_moderator(c.user)))) - builder = IDBuilder([link._fullname for link in links], - skip=True, keep_fn=include_link) + builder = IDBuilder([link._fullname for link in links], skip=True, + keep_fn=include_link, num=num, after=after, + reverse=reverse, count=count) return builder