feat(frontend): integrate tailwind pipeline and update templates
This commit is contained in:
@ -1,8 +1,8 @@
|
||||
{% load player_query %}
|
||||
|
||||
<div class="row-between wrap-gap">
|
||||
<div class="flex flex-wrap items-center justify-between gap-3">
|
||||
<h2>Results</h2>
|
||||
<div class="muted-text">
|
||||
<div class="text-sm text-slate-600">
|
||||
{{ page_obj.paginator.count }} player{{ page_obj.paginator.count|pluralize }} found
|
||||
</div>
|
||||
</div>
|
||||
@ -12,8 +12,8 @@
|
||||
{% endif %}
|
||||
|
||||
{% if players %}
|
||||
<div class="table-wrap">
|
||||
<table>
|
||||
<div class="table-wrap mt-4">
|
||||
<table class="data-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Player</th>
|
||||
@ -29,20 +29,15 @@
|
||||
{% if request.user.is_authenticated %}<th>Watchlist</th>{% endif %}
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tbody class="divide-y divide-slate-100 bg-white">
|
||||
{% for player in players %}
|
||||
<tr>
|
||||
<td>
|
||||
<a href="{% url 'players:detail' player.pk %}">{{ player.full_name }}</a>
|
||||
</td>
|
||||
<td><a class="font-medium" href="{% url 'players:detail' player.pk %}">{{ player.full_name }}</a></td>
|
||||
<td>{{ player.nationality.name|default:"-" }}</td>
|
||||
<td>
|
||||
{{ player.nominal_position.code|default:"-" }}
|
||||
/ {{ player.inferred_role.name|default:"-" }}
|
||||
</td>
|
||||
<td>{{ player.nominal_position.code|default:"-" }} / {{ player.inferred_role.name|default:"-" }}</td>
|
||||
<td>
|
||||
{{ player.origin_competition.name|default:"-" }}
|
||||
{% if player.origin_team %}<br><span class="muted-text">{{ player.origin_team.name }}</span>{% endif %}
|
||||
{% if player.origin_team %}<div class="text-xs text-slate-500">{{ player.origin_team.name }}</div>{% endif %}
|
||||
</td>
|
||||
<td>{{ player.height_cm|default:"-" }} / {{ player.weight_kg|default:"-" }}</td>
|
||||
<td>{{ player.games_played_value|floatformat:0 }}</td>
|
||||
@ -65,37 +60,21 @@
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="pagination row-gap mt-16">
|
||||
{% if page_obj.has_previous %}
|
||||
{% query_transform page=page_obj.previous_page_number as prev_query %}
|
||||
<a
|
||||
class="button ghost"
|
||||
href="?{{ prev_query }}"
|
||||
hx-get="?{{ prev_query }}"
|
||||
hx-target="#player-results"
|
||||
hx-swap="innerHTML"
|
||||
hx-push-url="true"
|
||||
>
|
||||
Previous
|
||||
</a>
|
||||
{% endif %}
|
||||
|
||||
<span>Page {{ page_obj.number }} of {{ page_obj.paginator.num_pages }}</span>
|
||||
|
||||
{% if page_obj.has_next %}
|
||||
{% query_transform page=page_obj.next_page_number as next_query %}
|
||||
<a
|
||||
class="button ghost"
|
||||
href="?{{ next_query }}"
|
||||
hx-get="?{{ next_query }}"
|
||||
hx-target="#player-results"
|
||||
hx-swap="innerHTML"
|
||||
hx-push-url="true"
|
||||
>
|
||||
Next
|
||||
</a>
|
||||
{% endif %}
|
||||
<div class="mt-4 flex items-center justify-between gap-3">
|
||||
<div>
|
||||
{% if page_obj.has_previous %}
|
||||
{% query_transform page=page_obj.previous_page_number as prev_query %}
|
||||
<a class="btn-secondary" href="?{{ prev_query }}" hx-get="?{{ prev_query }}" hx-target="#player-results" hx-swap="innerHTML" hx-push-url="true" hx-indicator="#htmx-loading">Previous</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
<span class="text-sm text-slate-600">Page {{ page_obj.number }} of {{ page_obj.paginator.num_pages }}</span>
|
||||
<div>
|
||||
{% if page_obj.has_next %}
|
||||
{% query_transform page=page_obj.next_page_number as next_query %}
|
||||
<a class="btn-secondary" href="?{{ next_query }}" hx-get="?{{ next_query }}" hx-target="#player-results" hx-swap="innerHTML" hx-push-url="true" hx-indicator="#htmx-loading">Next</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% else %}
|
||||
<p>No players matched the current filters.</p>
|
||||
<div class="empty-state mt-4">No players matched the current filters.</div>
|
||||
{% endif %}
|
||||
|
||||
Reference in New Issue
Block a user