Enhance destinataer list: 50 entries per page + default sort by last name
🎯 Improvements Made: - Increased pagination from 20 to 50 entries per page - Added default sorting by last name (nachname) in ascending order - Added visual sorting indicators with Font Awesome icons (up/down arrows) - Added results info showing current page range and total count - Display shows sorting method when active 📊 User Experience: - List now shows 50 destinataers by default (as requested) - Always sorted by last name for consistent browsing - Clear visual feedback for which column is sorted - Informative pagination showing 'X-Y of Z entries (50 per page)' ✅ Template & View Changes: - Modified destinataer_list view in views.py - Enhanced destinataer_list.html template - Maintained all existing filtering and search functionality
This commit is contained in:
@@ -88,10 +88,28 @@
|
||||
<thead class="table-light">
|
||||
<tr>
|
||||
<th>
|
||||
<a href="?sort=vorname&dir={% if sort == 'vorname' and dir != 'desc' %}desc{% else %}asc{% endif %}{% if search_query %}&search={{ search_query }}{% endif %}{% if familienzweig_filter %}&familienzweig={{ familienzweig_filter }}{% endif %}{% if berufsgruppe_filter %}&berufsgruppe={{ berufsgruppe_filter }}{% endif %}{% if aktiv_filter %}&aktiv={{ aktiv_filter }}{% endif %}">Vorname</a>
|
||||
<a href="?sort=vorname&dir={% if sort == 'vorname' and dir != 'desc' %}desc{% else %}asc{% endif %}{% if search_query %}&search={{ search_query }}{% endif %}{% if familienzweig_filter %}&familienzweig={{ familienzweig_filter }}{% endif %}{% if berufsgruppe_filter %}&berufsgruppe={{ berufsgruppe_filter }}{% endif %}{% if aktiv_filter %}&aktiv={{ aktiv_filter }}{% endif %}">
|
||||
Vorname
|
||||
{% if sort == 'vorname' %}
|
||||
{% if dir == 'desc' %}
|
||||
<i class="fas fa-sort-down"></i>
|
||||
{% else %}
|
||||
<i class="fas fa-sort-up"></i>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</a>
|
||||
</th>
|
||||
<th>
|
||||
<a href="?sort=nachname&dir={% if sort == 'nachname' and dir != 'desc' %}desc{% else %}asc{% endif %}{% if search_query %}&search={{ search_query }}{% endif %}{% if familienzweig_filter %}&familienzweig={{ familienzweig_filter }}{% endif %}{% if berufsgruppe_filter %}&berufsgruppe={{ berufsgruppe_filter }}{% endif %}{% if aktiv_filter %}&aktiv={{ aktiv_filter }}{% endif %}">Nachname</a>
|
||||
<a href="?sort=nachname&dir={% if sort == 'nachname' and dir != 'desc' %}desc{% else %}asc{% endif %}{% if search_query %}&search={{ search_query }}{% endif %}{% if familienzweig_filter %}&familienzweig={{ familienzweig_filter }}{% endif %}{% if berufsgruppe_filter %}&berufsgruppe={{ berufsgruppe_filter }}{% endif %}{% if aktiv_filter %}&aktiv={{ aktiv_filter }}{% endif %}">
|
||||
Nachname
|
||||
{% if sort == 'nachname' %}
|
||||
{% if dir == 'desc' %}
|
||||
<i class="fas fa-sort-down"></i>
|
||||
{% else %}
|
||||
<i class="fas fa-sort-up"></i>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</a>
|
||||
</th>
|
||||
<th>
|
||||
<a href="?sort=email&dir={% if sort == 'email' and dir != 'desc' %}desc{% else %}asc{% endif %}{% if search_query %}&search={{ search_query }}{% endif %}{% if familienzweig_filter %}&familienzweig={{ familienzweig_filter }}{% endif %}{% if berufsgruppe_filter %}&berufsgruppe={{ berufsgruppe_filter }}{% endif %}{% if aktiv_filter %}&aktiv={{ aktiv_filter }}{% endif %}">E-Mail</a>
|
||||
@@ -170,6 +188,16 @@
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<!-- Results info -->
|
||||
<div class="mt-3 mb-3 text-muted text-center">
|
||||
<small>
|
||||
Zeige {{ page_obj.start_index }} - {{ page_obj.end_index }} von {{ page_obj.paginator.count }} Destinatären
|
||||
(50 Einträge pro Seite{% if sort %}, sortiert nach
|
||||
{% if sort == 'nachname' %}Nachname{% elif sort == 'vorname' %}Vorname{% elif sort == 'email' %}E-Mail{% elif sort == 'vierteljaehrlicher_betrag' %}Vierteljährlicher Betrag{% elif sort == 'aktiv' %}Status{% elif sort == 'unterstuetzung_bestaetigt' %}Unterstützung bestätigt{% endif %}
|
||||
{% if dir == 'desc' %} (absteigend){% else %} (aufsteigend){% endif %}{% endif %})
|
||||
</small>
|
||||
</div>
|
||||
|
||||
<!-- Pagination -->
|
||||
{% if page_obj.has_other_pages %}
|
||||
<nav aria-label="Destinatäre Pagination" class="mt-4">
|
||||
|
||||
Reference in New Issue
Block a user