mirror of
https://github.com/daniviga/django-ram.git
synced 2025-12-26 07:18:32 +01:00
* Fix a search filter when no catalogs are returned * Code refactoring to simplify templates * Remove duplicated code * Remove dead code * More improvements, clean up and add featured items in homepage * Fix a type and better page navigation
82 lines
3.9 KiB
HTML
82 lines
3.9 KiB
HTML
{% load static %}
|
|
{% load dynamic_url %}
|
|
<div class="col">
|
|
<div class="card shadow-sm">
|
|
{% if d.image.exists %}
|
|
<a href="{{d.get_absolute_url}}"><img class="card-img-top" src="{{ d.image.first.image.url }}" alt="{{ d }}"></a>
|
|
{% else %}
|
|
<!-- Do not show the "Coming soon" image when running in a single card column mode (e.g. on mobile) -->
|
|
<a href="{{d.get_absolute_url}}"><img class="card-img-top d-none d-sm-block" src="{% static DEFAULT_CARD_IMAGE %}" alt="{{ d }}"></a>
|
|
{% endif %}
|
|
<div class="card-body">
|
|
<p class="card-text" style="position: relative;">
|
|
<strong>{{ d }}</strong>
|
|
<a class="stretched-link" href="{{ d.get_absolute_url }}"></a>
|
|
</p>
|
|
<p class="card-text"><small>Tags:</small>
|
|
{% for t in d.tags.all %}<a href="{% url 'filtered' _filter="tag" search=t.slug %}" class="badge rounded-pill bg-primary">
|
|
{{ t.name }}</a>{# new line is required #}
|
|
{% empty %}
|
|
<span class="badge rounded-pill bg-secondary"><i class="bi bi-ban"></i></span>
|
|
{% endfor %}
|
|
</p>
|
|
<table class="table table-striped">
|
|
<thead>
|
|
<tr>
|
|
<th colspan="2" scope="row">
|
|
{{ d.obj_label|capfirst }}
|
|
<div class="float-end">
|
|
{% if not d.published %}
|
|
<span class="badge text-bg-warning">Unpublished</span>
|
|
{% endif %}
|
|
</div>
|
|
</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody class="table-group-divider">
|
|
{% if d.obj_type == "catalog" %}
|
|
<tr>
|
|
<th class="w-33" scope="row">Manufacturer</th>
|
|
<td>
|
|
<a href="{% url 'filtered' _filter="manufacturer" search=d.manufacturer.slug %}">{{ d.manufacturer }}{% if d.manufacturer.website %}</a> <a href="{{ d.manufacturer.website }}" target="_blank"><i class="bi bi-box-arrow-up-right"></i></a>{% endif %}
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th class="w-33" scope="row">Scales</th>
|
|
<td>{{ d.get_scales }}</td>
|
|
</tr>
|
|
{% elif d.obj_type == "book" %}
|
|
<tr>
|
|
<th class="w-33" scope="row">Authors</th>
|
|
<td>
|
|
<ul class="mb-0 list-unstyled">{% for a in d.authors.all %}<li>{{ a }}</li>{% endfor %}</ul>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th class="w-33" scope="row">Publisher</th>
|
|
<td><img src="{{ d.publisher.country.flag }}" alt="{{ d.publisher.country }}"> {{ d.publisher }}</td>
|
|
</tr>
|
|
{% endif %}
|
|
<tr>
|
|
<th scope="row">Language</th>
|
|
<td>{{ d.get_language_display }}</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">Pages</th>
|
|
<td>{{ d.number_of_pages|default:"-" }}</td>
|
|
</tr>
|
|
<tr>
|
|
<th scope="row">Year</th>
|
|
<td>{{ d.publication_year|default:"-" }}</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<div class="d-grid gap-2 mb-1 d-md-block">
|
|
<a class="btn btn-sm btn-outline-primary" href="{{ d.get_absolute_url }}">Show all data</a>
|
|
{% if request.user.is_staff %}<a class="btn btn-sm btn-outline-danger" href="{% dynamic_admin_url 'bookshelf' d.obj_type d.pk %}">Edit</a>{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|