Add documents to decoders (#22)

* Add decoder documents support
* Use abstract model for Documents
* Increase version
* Code cleanup
This commit is contained in:
2023-10-01 00:03:41 +02:00
committed by GitHub
parent 9483648a1f
commit 5d536ce568
16 changed files with 161 additions and 60 deletions

View File

@@ -64,7 +64,7 @@
</thead>
<tbody>
<tr>
<th class="th-35" scope="row">Type</th>
<th class="w-25" scope="row">Type</th>
<td>{{ rolling_stock.rolling_class.type }}</td>
</tr>
<tr>
@@ -95,7 +95,7 @@
</thead>
<tbody>
<tr>
<th class="th-35" scope="row">Manufacturer</th>
<th class="w-25" scope="row">Manufacturer</th>
<td>{%if rolling_stock.manufacturer %}
<a href="{% url 'filtered' _filter="manufacturer" search=rolling_stock.manufacturer.slug %}">{{ rolling_stock.manufacturer }}{% if rolling_stock.manufacturer.website %}</a> <a href="{{ rolling_stock.manufacturer.website }}" target="_blank"><i class="bi bi-box-arrow-up-right"></i></a>{% endif %}
{% endif %}</td>
@@ -119,7 +119,7 @@
</thead>
<tbody>
<tr>
<th class="th-35" scope="row">Interface</th>
<th class="w-25" scope="row">Interface</th>
<td>{{ rolling_stock.get_decoder_interface_display }}</td>
</tr>
{% if rolling_stock.decoder %}
@@ -145,7 +145,7 @@
</thead>
<tbody>
<tr>
<th class="th-35" scope="row">Manufacturer</th>
<th class="w-25" scope="row">Manufacturer</th>
<td>{%if rolling_stock.manufacturer %}
<a href="{% url 'filtered' _filter="manufacturer" search=rolling_stock.manufacturer.slug %}">{{ rolling_stock.manufacturer }}{% if rolling_stock.manufacturer.website %}</a> <a href="{{ rolling_stock.manufacturer.website }}" target="_blank"><i class="bi bi-box-arrow-up-right"></i></a>{% endif %}
{% endif %}</td>
@@ -182,7 +182,7 @@
<tbody>
{% for p in rolling_stock_properties %}
<tr>
<th class="th-35" scope="row">{{ p.property }}</th>
<th class="w-25" scope="row">{{ p.property }}</th>
<td>{{ p.value }}</td>
</tr>
{% endfor %}
@@ -199,7 +199,7 @@
</thead>
<tbody>
<tr>
<th class="th-35" scope="row">Class</th>
<th class="w-25" scope="row">Class</th>
<td>{{ rolling_stock.rolling_class.identifier }}</td>
</tr>
<tr>
@@ -234,7 +234,7 @@
<tbody>
{% for p in class_properties %}
<tr>
<th class="th-35" scope="row">{{ p.property }}</th>
<th class="w-25" scope="row">{{ p.property }}</th>
<td>{{ p.value }}</td>
</tr>
{% endfor %}
@@ -255,7 +255,7 @@
<td>{{ rolling_stock.get_decoder_interface_display }}</td>
</tr>
<tr>
<th class="th-35" scope="row">Address</th>
<th class="w-25" scope="row">Address</th>
<td>{{ rolling_stock.address }}</td>
</tr>
<tr>
@@ -301,13 +301,31 @@
<tbody>
{% for d in rolling_stock.document.all %}
<tr>
<td>{{ d.description }}</td>
<td class="w-25">{{ d.description }}</td>
<td><a href="{{ d.file.url }}" target="_blank">{{ d.filename }}</a></td>
<td class="text-end">{{ d.file.size | filesizeformat }}</td>
</tr>
{% endfor %}
</tbody>
</table>
{% if rolling_stock.decoder.document.count > 0 %}
<table class="table table-striped">
<thead>
<tr>
<th colspan="3" scope="row">Decoder documents</th>
</tr>
</thead>
<tbody>
{% for d in rolling_stock.decoder.document.all %}
<tr>
<td class="w-25">{{ d.description }}</td>
<td><a href="{{ d.file.url }}" target="_blank">{{ d.filename }}</a></td>
<td class="text-end">{{ d.file.size | filesizeformat }}</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endif %}
</div>
<div class="tab-pane fade" id="nav-journal" role="tabpanel" aria-labelledby="nav-journal-tab">
<table class="table table-striped">
@@ -319,7 +337,7 @@
<tbody>
{% for j in rolling_stock_journal %}
<tr>
<th class="th-35" scope="row">{{ j.date }}</th>
<th class="w-25" scope="row">{{ j.date }}</th>
<td>{{ j.log | safe }}</a></td>
</tr>
{% endfor %}