Skip to content
Snippets Groups Projects
Commit c370c7e4 authored by Alissa Cheng's avatar Alissa Cheng
Browse files

fix pagination and add ellipsis

parent e87c41d4
Branches
No related tags found
1 merge request!338fix pagination and add ellipsis
Pipeline #69397 passed
...@@ -2,10 +2,10 @@ ...@@ -2,10 +2,10 @@
{% if my_tasks.has_previous %} {% if my_tasks.has_previous %}
<a href="?page=1" class="btn btn-outline-primary">First</a> <a href="?page=1" class="btn btn-outline-primary">First</a>
<a href="?page={{ my_tasks.previous_page_number }}" class="btn btn-outline-primary">Prev</a> <a href="?page={{ my_tasks.previous_page_number }}" class="btn btn-outline-primary">Previous</a>
{% else %} {% else %}
<button class="btn btn-outline-primary" disabled>First</button> <button class="btn btn-outline-primary" disabled>First</button>
<button class="btn btn-outline-primary" disabled>Prev</button> <button class="btn btn-outline-primary" disabled>Previous</button>
{% endif %} {% endif %}
{% for page_number in my_tasks.paginator.page_range %} {% for page_number in my_tasks.paginator.page_range %}
...@@ -13,17 +13,26 @@ ...@@ -13,17 +13,26 @@
<button class="btn btn-outline-primary active"> <button class="btn btn-outline-primary active">
<span>{{ page_number }} <span class="sr-only">(current)</span></span> <span>{{ page_number }} <span class="sr-only">(current)</span></span>
</button> </button>
{% elif my_tasks.number < 5 and page_number < 21 or my_tasks.number > my_tasks.paginator.num_pages|add:"-5" and page_number > my_tasks.paginator.num_pages|add:"-20" %} <!-- first and last 20 pages -->
{% elif my_tasks.number < 10 and page_number < 20 or my_tasks.number > my_tasks.paginator.num_pages|add:"-10" and page_number > my_tasks.paginator.num_pages|add:"-20" %}
<a href="?page={{ page_number }}" class="btn btn-outline-primary"> <a href="?page={{ page_number }}" class="btn btn-outline-primary">
{{ page_number }} {{ page_number }}
</a> </a>
{% elif page_number < my_tasks.number and page_number > my_tasks.number|add:"-5" or page_number > my_tasks.number and page_number < my_tasks.number|add:5 %} <!-- 10 pages around current page -->
{% elif page_number < my_tasks.number and page_number > my_tasks.number|add:"-10" or page_number > my_tasks.number and page_number < my_tasks.number|add:10 %}
<a href="?page={{ page_number }}" class="btn btn-outline-primary"> <a href="?page={{ page_number }}" class="btn btn-outline-primary">
{{ page_number }} {{ page_number }}
</a> </a>
{% endif %} {% endif %}
{% endfor %} {% endfor %}
<!-- last page button or ellipsis if last page is too far -->
{% if my_tasks.number|add:10 < my_tasks.paginator.num_pages %}
<button class="btn btn-outline-primary" disabled>...</button>
{% elif my_tasks.number|add:10 == my_tasks.paginator.num_pages %}
<a href="?page={{ my_tasks.paginator.num_pages }}" class="btn btn-outline-primary">{{ my_tasks.paginator.num_pages }}</a>
{% endif %}
{% if my_tasks.has_next %} {% if my_tasks.has_next %}
<a href="?page={{ my_tasks.next_page_number }}" class="btn btn-outline-primary">Next</a> <a href="?page={{ my_tasks.next_page_number }}" class="btn btn-outline-primary">Next</a>
<a href="?page={{ my_tasks.paginator.num_pages }}" class="btn btn-outline-primary">Last</a> <a href="?page={{ my_tasks.paginator.num_pages }}" class="btn btn-outline-primary">Last</a>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment