diff --git a/amadeus/templates/pagination.html b/amadeus/templates/pagination.html
index a325121..f18d0b5 100644
--- a/amadeus/templates/pagination.html
+++ b/amadeus/templates/pagination.html
@@ -2,11 +2,23 @@
diff --git a/amadeus/templatetags/pagination.py b/amadeus/templatetags/pagination.py
index 7b16a8e..fa2552d 100644
--- a/amadeus/templatetags/pagination.py
+++ b/amadeus/templatetags/pagination.py
@@ -10,6 +10,32 @@ def pagination(request, paginator, page_obj):
'page_obj': page_obj,
}
+ page_numbers = []
+
+ if paginator.num_pages <= 10:
+ page_numbers = paginator.page_range
+ else:
+ init = page_obj.number - 5
+ end = page_obj.number + 5
+
+ if init <= 0:
+ init = 1
+
+ if end > paginator.num_pages:
+ end = paginator.num_pages + 1
+
+ if (end - init) < 10:
+ if init == 1 and end < paginator.num_pages:
+ end += (10 - (end - init))
+ elif init > 1 and end == paginator.num_pages + 1:
+ init -= (10 - (end - init))
+
+ for n in range(init, end):
+ if n > 0 and n <= paginator.num_pages:
+ page_numbers.append(n)
+
+ context['page_numbers'] = page_numbers
+
getvars = request.GET.copy()
if 'page' in getvars:
--
libgit2 0.21.2