diff --git a/rhodecode/lib/pagination.py b/rhodecode/lib/pagination.py --- a/rhodecode/lib/pagination.py +++ b/rhodecode/lib/pagination.py @@ -109,16 +109,9 @@ page's items by their index number pleas """ import re -import sys from string import Template from webhelpers2.html import literal -# are we running at least python 3.x ? -PY3 = sys.version_info[0] >= 3 - -if PY3: - unicode = str - def make_html_tag(tag, text=None, **params): """Create an HTML tag string. @@ -907,9 +900,12 @@ class SqlalchemyOrmWrapper(object): self.pager = pager self.collection = collection - def __getitem__(self, range): + def __getitem__(self, key): + if not isinstance(key, slice): + raise ValueError('Pagination without a slice not supported') + # Return a range of objects of an sqlalchemy.orm.query.Query object - return self.collection[range] + return self.collection[key] def __len__(self): # support empty types, without actually making a query. @@ -1033,7 +1029,7 @@ class RepoCommitsWrapper(object): self.pager = pager self.collection = collection - def __getitem__(self, range): + def __getitem__(self, key): cur_page = self.pager.page items_per_page = self.pager.items_per_page first_item = max(0, (len(self.collection) - (cur_page * items_per_page)))