Mercurial > kallithea
changeset 7977:2323e2bb2797
page: consistently invoke Page with kwargs instead of explicitly providing a custom url generator
Drop the option of providing an url maker as 'url', and thus also hardcode the
assumption that the page parameter is called page.
author | Mads Kiilerich <mads@kiilerich.com> |
---|---|
date | Fri, 08 Nov 2019 00:23:10 +0100 |
parents | 2a6b6baf1448 |
children | 7433775cc53b |
files | kallithea/controllers/admin/admin.py kallithea/controllers/journal.py kallithea/controllers/search.py kallithea/lib/page.py |
diffstat | 4 files changed, 11 insertions(+), 20 deletions(-) [+] |
line wrap: on
line diff
--- a/kallithea/controllers/admin/admin.py Sat Nov 09 19:08:16 2019 +0100 +++ b/kallithea/controllers/admin/admin.py Fri Nov 08 00:23:10 2019 +0100 @@ -36,7 +36,6 @@ from whoosh.qparser.dateparse import DateParserPlugin from whoosh.qparser.default import QueryParser -from kallithea.config.routing import url from kallithea.lib.auth import HasPermissionAnyDecorator, LoginRequired from kallithea.lib.base import BaseController, render from kallithea.lib.indexers import JOURNAL_SCHEMA @@ -139,10 +138,8 @@ p = safe_int(request.GET.get('page'), 1) - def url_generator(**kw): - return url.current(filter=c.search_term, **kw) - - c.users_log = Page(users_log, page=p, items_per_page=10, url=url_generator) + c.users_log = Page(users_log, page=p, items_per_page=10, + filter=c.search_term) if request.environ.get('HTTP_X_PARTIAL_XHR'): return render('admin/admin_log.html')
--- a/kallithea/controllers/journal.py Sat Nov 09 19:08:16 2019 +0100 +++ b/kallithea/controllers/journal.py Fri Nov 08 00:23:10 2019 +0100 @@ -39,7 +39,6 @@ from webob.exc import HTTPBadRequest import kallithea.lib.helpers as h -from kallithea.config.routing import url from kallithea.controllers.admin.admin import _journal_filter from kallithea.lib.auth import LoginRequired from kallithea.lib.base import BaseController, render @@ -201,10 +200,8 @@ journal = self._get_journal_data(c.following) - def url_generator(**kw): - return url.current(filter=c.search_term, **kw) - - c.journal_pager = Page(journal, page=p, items_per_page=20, url=url_generator) + c.journal_pager = Page(journal, page=p, items_per_page=20, + filter=c.search_term) c.journal_day_aggregate = self._get_daily_aggregate(c.journal_pager) if request.environ.get('HTTP_X_PARTIAL_XHR'):
--- a/kallithea/controllers/search.py Sat Nov 09 19:08:16 2019 +0100 +++ b/kallithea/controllers/search.py Fri Nov 08 00:23:10 2019 +0100 @@ -27,12 +27,10 @@ import logging import traceback -import urllib from tg import config, request from tg import tmpl_context as c from tg.i18n import ugettext as _ -from webhelpers2.html.tools import update_params from whoosh.index import EmptyIndexError, exists_in, open_dir from whoosh.qparser import QueryParser, QueryParserError from whoosh.query import Phrase, Prefix @@ -119,9 +117,6 @@ res_ln, results.runtime ) - def url_generator(**kw): - q = urllib.quote(safe_str(c.cur_query)) - return update_params("?q=%s&type=%s" % (q, safe_str(c.cur_type)), **kw) repo_location = RepoModel().repos_path c.formated_results = Page( WhooshResultWrapper(search_type, searcher, matcher, @@ -129,7 +124,8 @@ page=p, item_count=res_ln, items_per_page=10, - url=url_generator + type=safe_str(c.cur_type), + q=safe_str(c.cur_query), ) except QueryParserError:
--- a/kallithea/lib/page.py Sat Nov 09 19:08:16 2019 +0100 +++ b/kallithea/lib/page.py Fri Nov 08 00:23:10 2019 +0100 @@ -30,10 +30,11 @@ """ Custom pager emitting Bootstrap paginators """ - - def __init__(self, *args, **kwargs): - kwargs.setdefault('url', url.current) - _Page.__init__(self, *args, **kwargs) + def __init__(self, collection, + page=1, items_per_page=20, item_count=None, + **kwargs): + _Page.__init__(self, collection, page=page, items_per_page=items_per_page, item_count=item_count, + url=url.current, **kwargs) def _get_pos(self, cur_page, max_page, items): edge = (items / 2) + 1