diff --git a/patchwork/paginator.py b/patchwork/paginator.py
index 57085179..5a9e52ed 100644
--- a/patchwork/paginator.py
+++ b/patchwork/paginator.py
@@ -27,7 +27,7 @@ def __init__(self, request, objects):
if request.user.is_authenticated:
items_per_page = request.user.profile.items_per_page
- super(Paginator, self).__init__(objects, items_per_page)
+ super().__init__(objects, items_per_page)
try:
page_no = int(request.GET.get('page', 1))
@@ -52,23 +52,25 @@ def __init__(self, request, objects):
elif page_no < LEADING_PAGE_RANGE:
adjacent_start = 1
adjacent_end = LEADING_PAGE_RANGE_DISPLAYED + 1
- self.leading_set = [
- n + pages for n in range(0, -NUM_PAGES_OUTSIDE_RANGE, -1)
+ self.trailing_set = [
+ n + pages
+ for n in reversed(range(0, -NUM_PAGES_OUTSIDE_RANGE, -1))
]
elif page_no >= pages - TRAILING_PAGE_RANGE:
adjacent_start = pages - TRAILING_PAGE_RANGE_DISPLAYED + 1
adjacent_end = pages + 1
- self.trailing_set = [
+ self.leading_set = [
n + 1 for n in range(0, NUM_PAGES_OUTSIDE_RANGE)
]
else:
adjacent_start = page_no - ADJACENT_PAGES
adjacent_end = page_no + ADJACENT_PAGES + 1
self.leading_set = [
- n + pages for n in range(0, -NUM_PAGES_OUTSIDE_RANGE, -1)
+ n + 1 for n in range(0, NUM_PAGES_OUTSIDE_RANGE)
]
self.trailing_set = [
- n + 1 for n in range(0, NUM_PAGES_OUTSIDE_RANGE)
+ n + pages
+ for n in reversed(range(0, -NUM_PAGES_OUTSIDE_RANGE, -1))
]
self.adjacent_set = [
@@ -77,7 +79,6 @@ def __init__(self, request, objects):
if n > 0 and n <= pages
]
- self.leading_set.reverse()
self.long_page = (
len(self.current_page.object_list) >= LONG_PAGE_THRESHOLD
)
diff --git a/patchwork/templates/patchwork/partials/pagination.html b/patchwork/templates/patchwork/partials/pagination.html
index 0767d385..94be806d 100644
--- a/patchwork/templates/patchwork/partials/pagination.html
+++ b/patchwork/templates/patchwork/partials/pagination.html
@@ -10,8 +10,8 @@
«
{% endif %}
-{% if page.paginator.trailing_set %}
-{% for p in page.paginator.trailing_set %}
+{% if page.paginator.leading_set %}
+{% for p in page.paginator.leading_set %}
{{ p }}
{% endfor %}
…
@@ -25,9 +25,9 @@
{% endif %}
{% endfor %}
-{% if page.paginator.leading_set %}
+{% if page.paginator.trailing_set %}
…
-{% for p in page.paginator.leading_set %}
+{% for p in page.paginator.trailing_set %}
{{ p }}
{% endfor %}
{% endif %}