Add ordering, templatetags, update pagination

This commit is contained in:
Nyymix 2025-01-21 15:31:47 +02:00
parent 1dbd1c1779
commit 7c7eb0061d
10 changed files with 93 additions and 52 deletions

View file

@ -1,39 +0,0 @@
{% if page_obj.has_other_pages %}
<ul class="uk-pagination uk-flex-center" uk-margin>
{% if page_obj.has_previous %}
<li><a href="?page={{ page_obj.previous_page_number }}"><span uk-pagination-previous></span></a></li>
{% else %}
<li class="uk-disabled"><span uk-pagination-previous></span></li>
{% endif %}
{% if page_obj.number|add:'-3' > 1 %}
<li><a href="?page=1">1</a></li>
{% if page_obj.number|add:'-4' > 1 %}
<li><a href="?page={{ page_obj.number|add:'-4' }}">&hellip;</a></li>
{% endif %}
{% endif %}
{% for i in page_obj.paginator.page_range %}
{% if page_obj.number == i %}
<li class="uk-active"><span>{{ i }}</span></li>
{% elif i > page_obj.number|add:'-4' and i < page_obj.number|add:'4' %}
<li><a href="?page={{ i }}">{{ i }}</a></li>
{% endif %}
{% endfor %}
{% if page_obj.paginator.num_pages > page_obj.number|add:'3' %}
{% if page_obj.number|add:'4' < page_obj.paginator.num_pages %}
<li><a href="?page={{ page_obj.number|add:'4' }}">&hellip;</a></li>
{% endif %}
<li><a href="?page={{ page_obj.paginator.num_pages }}">{{ page_obj.paginator.num_pages }}</a></li>
{% endif %}
{% if page_obj.has_next %}
<li><a href="?page={{ page_obj.next_page_number }}"><span uk-pagination-next></span></a></li>
{% else %}
<li class="uk-disabled"><span uk-pagination-next></span></li>
{% endif %}
</ul>
{% endif %}

View file

@ -44,6 +44,6 @@
{% endfor %}
</div>
{% include "./_pagination.html" %}
{% include "./partials/pagination.html" %}
{% endblock %}

View file

@ -28,7 +28,7 @@
</div>
{% include "./_pagination.html" %}
{% include "./partials/pagination.html" %}
{% endblock %}

View file

@ -0,0 +1,43 @@
{% load link_tags %}
{% if page_obj.has_other_pages %}
<div class="uk-margin">
<ul class="uk-pagination uk-flex-center">
{% if page_obj.has_previous %}
<li><a href="{% paginator_link page_obj.previous_page_number request.GET %}"><span class="uk-margin-small-right" uk-pagination-previous></span> Previous</a></li>
{% else %}
<li class="uk-disabled"><a href="#"><span class="uk-margin-small-right" uk-pagination-previous></span> Previous</a></li>
{% endif %}
{% if page_obj.number|add:'-3' > 1 %}
<li><a href="{% paginator_link 1 request.GET %}">1</a></li>
{% if page_obj.number|add:'-4' > 1 %}
<li><a href="{% paginator_link page_obj.number|add:'-4' request.GET %}">&hellip;</a></li>
{% endif %}
{% endif %}
{% for i in page_obj.paginator.page_range %}
{% if page_obj.number == i %}
<li class="uk-active"><span>{{ i }}</span></li>
{% elif i > page_obj.number|add:'-4' and i < page_obj.number|add:'4' %}
<li><a href="{% paginator_link i request.GET %}">{{ i }}</a></li>
{% endif %}
{% endfor %}
{% if page_obj.paginator.num_pages > page_obj.number|add:'3' %}
{% if page_obj.number|add:'4' < page_obj.paginator.num_pages %}
<li><a href="{% paginator_link page_obj.number|add:'4' request.GET %}">&hellip;</a></li>
{% endif %}
<li><a href="{% paginator_link page_obj.paginator.num_pages request.GET %}">{{ page_obj.paginator.num_pages }}</a></li>
{% endif %}
{% if page_obj.has_next %}
<li><a href="{% paginator_link page_obj.next_page_number request.GET %}">Next <span uk-pagination-next></span></a></li>
{% else %}
<li class="uk-disabled"><a href="#">Next <span class="uk-margin-small-left" uk-pagination-next></span></a></li>
{% endif %}
</ul>
</div>
{% endif %}

View file

@ -1,11 +1,19 @@
{% extends "base.html" %}
<!-- Title -->
{% block title %} Gallery : Photostream {% endblock %}
<!-- Content -->
{% block content %}
{% load link_tags %}
<ul class="uk-tab uk-flex-right">
<li {% if order == 'latest' %}class="uk-active" {% endif %}><a href="{% search_link 'latest' request.GET %}">Latest</a></li>
<li {% if order == 'liked' %}class="uk-active" {% endif %}><a href="{% search_link 'liked' request.GET %}">Top Liked</a></li>
<li {% if order == 'popular' %}class="uk-active" {% endif %}><a href="{% search_link 'popular' request.GET %}">Popular</a></li>
</ul>
<div class="uk-grid-small uk-child-width-1-2 uk-child-width-1-3@s uk-child-width-1-4@m uk-child-width-1-5@l" uk-grid="masonry: true">
{% for photo in object_list %}
<a href="{{ photo.get_absolute_url }}">
@ -15,7 +23,7 @@
{% endfor %}
</div>
{% include "./_pagination.html" %}
{% include "./partials/pagination.html" %}
{% endblock %}