Fix: paginator to include other GET variables

This commit is contained in:
Aroy-Art 2024-06-26 11:26:45 +02:00
parent 1a715c86d5
commit cbc9fd7db7
Signed by: Aroy
GPG key ID: DB9689E9391DD156

View file

@ -5,14 +5,15 @@
<div class="col"> <div class="col">
<nav aria-label="Page navigation"> <nav aria-label="Page navigation">
<ul class="pagination justify-content-center"> <ul class="pagination justify-content-center">
{% if page_obj.has_previous %} {% if page_obj.has_previous %}
<li class="page-item"> <li class="page-item">
<a class="page-link fs-4 lh-1" href="?page=1" aria-label="First"> <a class="page-link" href="?{{ request.GET.urlencode }}&page=1" aria-label="First">
« «
</a> </a>
</li> </li>
<li class="page-item"> <li class="page-item">
<a class="page-link fs-4 lh-1" href="?page={{ page_obj.previous_page_number }}" aria-label="Previous"> <a class="page-link" href="?{{ request.GET.urlencode }}&page={{ page_obj.previous_page_number }}" aria-label="Previous">
<span aria-hidden="true"> <span aria-hidden="true">
</span> </span>
@ -21,45 +22,45 @@
{% else %} {% else %}
<li class="page-item disabled"> <li class="page-item disabled">
<span class="page-link fs-4 lh-1 text-decoration-line-through"> <span class="page-link text-decoration-line-through">
« «
</span> </span>
</li> </li>
<li class="page-item disabled"> <li class="page-item disabled">
<span class="page-link fs-4 lh-1 text-decoration-line-through"> <span class="page-link text-decoration-line-through">
</span> </span>
</li> </li>
{% endif %} {% endif %}
<li class="page-item disabled"> <li class="page-item disabled">
<span class="page-link text-nowrap fs-4 lh-1"> <span class="page-link text-nowrap">
Page {{ page_obj.number }} of {{ page_obj.paginator.num_pages }}. Page {{ page_obj.number }} of {{ page_obj.paginator.num_pages }}.
</span> </span>
</li> </li>
{% if page_obj.has_next %} {% if page_obj.has_next %}
<li class="page-item"> <li class="page-item">
<a class="page-link fs-4 lh-1" href="?page={{ page_obj.next_page_number }}" aria-label="Next"> <a class="page-link" href="?{{ request.GET.urlencode }}&page={{ page_obj.next_page_number }}" aria-label="Next">
<span aria-hidden="true"> <span aria-hidden="true">
</span> </span>
</a> </a>
</li> </li>
<li class="page-item"> <li class="page-item">
<a class="page-link fs-4 lh-1" href="?page={{ page_obj.paginator.num_pages }}" aria-label="Last"> <a class="page-link" href="?{{ request.GET.urlencode }}&page={{ page_obj.paginator.num_pages }}" aria-label="Last">
» »
</a> </a>
</li> </li>
{% else %} {% else %}
<li class="page-item disabled"> <li class="page-item disabled">
<span class="page-link fs-4 lh-1 text-decoration-line-through"> <span class="page-link text-decoration-line-through">
</span> </span>
</li> </li>
<li class="page-item disabled"> <li class="page-item disabled">
<span class="page-link fs-4 lh-1 text-decoration-line-through"> <span class="page-link text-decoration-line-through">
» »
</span> </span>
</li> </li>
@ -72,14 +73,15 @@
<!-- Jump-to field --> <!-- Jump-to field -->
<div class="col "> <div class="col ">
<form method="get" class="d-flex flex-row flex-nowrap g-3 justify-content-center "> <form method="get" class="d-flex flex-row flex-nowrap flex-grow-1 justify-content-center ">
<label for="jumpToPage" class="col-auto col-form-label">Jump to:</label> {% for key, value in request.GET.items %}
<div class="col-4 col-sm-3 col-md-3 col-lg-2 col-xl-1 mx-2"> {% if key != "page" %}
<input type="number" name="page" id="jumpToPage" class="form-control" min="1" max="{{ page_obj.paginator.num_pages }}" value="{{ page_obj.number }}""> <input type="hidden" name="{{ key }}" value="{{ value }}">
</div> {% endif %}
<div class="col-auto"> {% endfor %}
<button type="submit" class="btn btn-primary">Go</button> <label for="jumpToPage" class="col-auto col-form-label mx-1">Jump to:</label>
</div> <input type="number" name="page" id="jumpToPage" class="form-control mx-1" min="1" max="{{ page_obj.paginator.num_pages }}" value="{{ page_obj.number }}" style="width: 5rem">
<button type="submit" class="btn btn-primary mx-1">Go</button>
</form> </form>
</div> </div>
<!-- Jump to field End --> <!-- Jump to field End -->