feature/90-implement-public-website-for-device #17
|
@ -12,62 +12,25 @@
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<ul class="nav nav-tabs nav-tabs-bordered">
|
<ul class="nav nav-tabs nav-tabs-bordered">
|
||||||
<li class="nav-items">
|
<li class="nav-items">
|
||||||
<button class="nav-link active" data-bs-toggle="tab" data-bs-target="#details">General details</button>
|
<a href="#details" class="nav-link active" data-bs-toggle="tab" data-bs-target="#details">General details</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-items">
|
<li class="nav-items">
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#annotations">User annotations</button>
|
<a href="#annotations" class="nav-link" data-bs-toggle="tab" data-bs-target="#annotations">User annotations</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-items">
|
<li class="nav-items">
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#documents">Documents</button>
|
<a href="#documents" class="nav-link" data-bs-toggle="tab" data-bs-target="#documents">Documents</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-items">
|
<li class="nav-items">
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#lots">Lots</button>
|
<a href="#lots" class="nav-link" data-bs-toggle="tab" data-bs-target="#lots">Lots</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-items">
|
<li class="nav-items">
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#components">Components</button>
|
<a href="#components" class="nav-link" data-bs-toggle="tab" data-bs-target="#components">Components</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-items">
|
<li class="nav-items">
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#evidences">Evidences</button>
|
<a href="#evidences" class="nav-link" data-bs-toggle="tab" data-bs-target="#evidences">Evidences</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="nav-items">
|
<li class="nav-items">
|
||||||
<a class="nav-link" href="">Web</a>
|
<a href="#web" class="nav-link" href="">Web</a>
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="tab-content pt-2">
|
|
||||||
|
|
||||||
<div class="tab-pane fade show active" id="details">
|
|
||||||
<h5 class="card-title">Details</h5>
|
|
||||||
<div class="row mb-3">
|
|
||||||
<div class="col-lg-3 col-md-4 label ">Phid</div>
|
|
||||||
<div class="col-lg-9 col-md-8">{{ object.id }}</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
|
||||||
<div class="col">
|
|
||||||
<ul class="nav nav-tabs nav-tabs-bordered">
|
|
||||||
<li class="nav-items">
|
|
||||||
<button class="nav-link active" data-bs-toggle="tab" data-bs-target="#details">General details</button>
|
|
||||||
</li>
|
|
||||||
<li class="nav-items">
|
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#annotations">User annotations</button>
|
|
||||||
</li>
|
|
||||||
<li class="nav-items">
|
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#documents">Documents</button>
|
|
||||||
</li>
|
|
||||||
<li class="nav-items">
|
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#lots">Lots</button>
|
|
||||||
</li>
|
|
||||||
<li class="nav-items">
|
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#components">Components</button>
|
|
||||||
</li>
|
|
||||||
<li class="nav-items">
|
|
||||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#evidences">Evidences</button>
|
|
||||||
</li>
|
|
||||||
<li class="nav-items">
|
|
||||||
<a class="nav-link" href="{% url 'device:device_web' object.id %}">Web</a>
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
@ -85,60 +48,17 @@
|
||||||
<div class="col-lg-9 col-md-8">{{ object.type }}</div>
|
<div class="col-lg-9 col-md-8">{{ object.type }}</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<i class="bi bi-plus"></i>
|
{% if object.is_websnapshot %}
|
||||||
Add new document
|
{% for k, v in object.last_user_evidence %}
|
||||||
<span class="caret"></span>
|
<div class="row">
|
||||||
</a>
|
<div class="col-lg-3 col-md-4 label">{{ k }}</div>
|
||||||
</div>
|
<div class="col-lg-9 col-md-8">{{ v|default:'' }}</div>
|
||||||
|
|
||||||
<h5 class="card-title mt-2">Documents</h5>
|
|
||||||
<table class="table table-striped">
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th scope="col">Key</th>
|
|
||||||
<th scope="col">Value</th>
|
|
||||||
<th scope="col" data-type="date" data-format="YYYY-MM-DD hh:mm">Created on</th>
|
|
||||||
<th></th>
|
|
||||||
<th></th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
{% for a in object.get_user_documents %}
|
|
||||||
<tr>
|
|
||||||
<td>{{ a.key }}</td>
|
|
||||||
<td>{{ a.value }}</td>
|
|
||||||
<td>{{ a.created }}</td>
|
|
||||||
<td></td>
|
|
||||||
<td></td>
|
|
||||||
</tr>
|
|
||||||
{% endfor %}
|
|
||||||
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="tab-pane fade profile-overview" id="components">
|
|
||||||
<h5 class="card-title">Components last evidence</h5>
|
|
||||||
<div class="list-group col-6">
|
|
||||||
{% for c in object.components %}
|
|
||||||
<div class="list-group-item">
|
|
||||||
<div class="d-flex w-100 justify-content-between">
|
|
||||||
<h5 class="mb-1">{{ c.type }}</h5>
|
|
||||||
<small class="text-muted">{{ evidence.created }}</small>
|
|
||||||
</div>
|
|
||||||
<p class="mb-1">
|
|
||||||
{% for k, v in c.items %}
|
|
||||||
{% if k not in "actions,type" %}
|
|
||||||
{{ k }}: {{ v }}<br />
|
|
||||||
{% endif %}
|
|
||||||
{% endfor %}
|
|
||||||
<br />
|
|
||||||
</p>
|
|
||||||
<small class="text-muted">
|
|
||||||
</small>
|
|
||||||
</div>
|
</div>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</div>
|
{% else %}
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-lg-3 col-md-4 label">Manufacturer</div>
|
||||||
|
<div class="col-lg-9 col-md-8">{{ object.manufacturer|default:'' }}</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
@ -248,16 +168,19 @@
|
||||||
<div class="tab-pane fade profile-overview" id="components">
|
<div class="tab-pane fade profile-overview" id="components">
|
||||||
<h5 class="card-title">Components last evidence</h5>
|
<h5 class="card-title">Components last evidence</h5>
|
||||||
<div class="list-group col-6">
|
<div class="list-group col-6">
|
||||||
{% for c in object.last_evidence.doc.components %}
|
{% for c in object.components %}
|
||||||
<div class="list-group-item">
|
<div class="list-group-item">
|
||||||
<div class="d-flex w-100 justify-content-between">
|
<div class="d-flex w-100 justify-content-between">
|
||||||
<h5 class="mb-1">{{ c.type }}</h5>
|
<h5 class="mb-1">{{ c.type }}</h5>
|
||||||
<small class="text-muted">{{ evidence.created }}</small>
|
<small class="text-muted">{{ evidence.created }}</small>
|
||||||
</div>
|
</div>
|
||||||
<p class="mb-1">
|
<p class="mb-1">
|
||||||
{{ c.manufacturer }}<br />
|
{% for k, v in c.items %}
|
||||||
{{ c.model }}<br />
|
{% if k not in 'actions,type' %}
|
||||||
{{ c.serialNumber }}<br />
|
{{ k }}: {{ v }}<br />
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
<br />
|
||||||
</p>
|
</p>
|
||||||
<small class="text-muted"></small>
|
<small class="text-muted"></small>
|
||||||
</div>
|
</div>
|
||||||
|
@ -284,3 +207,24 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
{% block extrascript %}
|
||||||
|
<script>
|
||||||
|
document.addEventListener('DOMContentLoaded', function () {
|
||||||
|
// Obtener el hash de la URL (ejemplo: #components)
|
||||||
|
const hash = window.location.hash
|
||||||
|
|
||||||
|
// Verificar si hay un hash en la URL
|
||||||
|
if (hash) {
|
||||||
|
// Buscar el botón o enlace que corresponde al hash y activarlo
|
||||||
|
const tabTrigger = document.querySelector(`[data-bs-target="${hash}"]`)
|
||||||
|
|
||||||
|
if (tabTrigger) {
|
||||||
|
// Crear una instancia de tab de Bootstrap para activar el tab
|
||||||
|
const tab = new bootstrap.Tab(tabTrigger)
|
||||||
|
tab.show()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
{% endblock %}
|
||||||
|
|
Loading…
Reference in New Issue