237 lines
7 KiB
HTML
237 lines
7 KiB
HTML
{% extends "base.html" %}
|
|
{% load i18n %}
|
|
|
|
{% block content %}
|
|
<div class="row">
|
|
<div class="col">
|
|
<h3>{{ object.id }}</h3>
|
|
</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="#traceabiliy">Traceability log</button>
|
|
</li>
|
|
<li class="nav-items">
|
|
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#snapshots">Snapshots</button>
|
|
</li>
|
|
<li class="nav-items">
|
|
<a 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 ">
|
|
(<a href="{% url 'device:edit' object.id %}">Edit Device</a>)
|
|
</div>
|
|
<div class="col-lg-9 col-md-8">
|
|
{% if object.hid %}Snapshot{% else %}Placeholder{% endif %}
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-lg-3 col-md-4 label ">Phid</div>
|
|
<div class="col-lg-9 col-md-8">{{ object.id }}</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-lg-3 col-md-4 label ">Id device internal</div>
|
|
<div class="col-lg-9 col-md-8"></div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-lg-3 col-md-4 label ">Type</div>
|
|
<div class="col-lg-9 col-md-8">{{ snapshot.doc.device.type }}</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-lg-3 col-md-4 label">Manufacturer</div>
|
|
<div class="col-lg-9 col-md-8">{{ snapshot.doc.device.manufacturer|default:"" }}</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-lg-3 col-md-4 label">Model</div>
|
|
<div class="col-lg-9 col-md-8">{{ snapshot.doc.device.model|default:"" }}</div>
|
|
</div>
|
|
|
|
<div class="row">
|
|
<div class="col-lg-3 col-md-4 label">Serial Number</div>
|
|
<div class="col-lg-9 col-md-8">{{ snapshot.doc.device.serialNumber|default:"" }}</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-lg-3 col-md-4 label">Identifiers</div>
|
|
</div>
|
|
{% for chid in object.hids %}
|
|
<div class="row">
|
|
<div class="col">{{ chid |default:"" }}</div>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
|
|
<div class="tab-pane fade profile-overview" id="annotations">
|
|
<div class="btn-group dropdown ml-1 mt-1" uib-dropdown="">
|
|
<a href="{% url 'device:add_annotation' object.pk %}" class="btn btn-primary">
|
|
<i class="bi bi-plus"></i>
|
|
Add new annotation
|
|
<span class="caret"></span>
|
|
</a>
|
|
</div>
|
|
|
|
<h5 class="card-title">Annotations</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.annotations %}
|
|
{% if a.is_user_annotation %}
|
|
<tr>
|
|
<td>{{ a.key }}</td>
|
|
<td>{{ a.value }}</td>
|
|
<td>{{ a.created }}</td>
|
|
<td></td>
|
|
<td></td>
|
|
</tr>
|
|
{% endif %}
|
|
{% endfor %}
|
|
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
|
|
<div class="tab-pane fade profile-overview" id="lots">
|
|
{% for tag in lot_tags %}
|
|
<h5 class="card-title">{{ tag }}</h5>
|
|
|
|
{% for lot in object.lot_set.filter %}
|
|
{% if lot.type == tag %}
|
|
<div class="row">
|
|
<div class="col">
|
|
<a href="{% url 'dashboard:lot' lot.id %}">{{ lot.name }}</a>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% endfor %}
|
|
</div>
|
|
|
|
<div class="tab-pane fade profile-overview" id="documents">
|
|
<div class="btn-group dropdown ml-1 mt-1" uib-dropdown="">
|
|
<a href="/inventory/device/4W8D3/document/add/" class="btn btn-primary">
|
|
<i class="bi bi-plus"></i>
|
|
Add new document
|
|
<span class="caret"></span>
|
|
</a>
|
|
</div>
|
|
|
|
<h5 class="card-title">Documents</h5>
|
|
<table class="table">
|
|
<thead>
|
|
<tr>
|
|
<th scope="col">File</th>
|
|
<th scope="col">Type</th>
|
|
<th scope="col">Description</th>
|
|
<th scope="col" data-type="date" data-format="YYYY-MM-DD hh:mm">Uploaded on</th>
|
|
<th></th>
|
|
<th></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
<div class="tab-pane fade profile-overview" id="traceability">
|
|
<h5 class="card-title">Traceability log Details</h5>
|
|
<div class="list-group col-6">
|
|
|
|
<div class="list-group-item d-flex justify-content-between align-items-center">
|
|
Snapshot ✓
|
|
<small class="text-muted">14:07 23-06-2024</small>
|
|
</div>
|
|
|
|
<div class="list-group-item d-flex justify-content-between align-items-center">
|
|
EraseCrypto ✓
|
|
<small class="text-muted">14:07 23-06-2024</small>
|
|
</div>
|
|
|
|
<div class="list-group-item d-flex justify-content-between align-items-center">
|
|
EraseCrypto ✓
|
|
<small class="text-muted">14:07 23-06-2024</small>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
|
|
<div class="tab-pane fade profile-overview" id="components">
|
|
<h5 class="card-title">Components last snapshot</h5>
|
|
<div class="list-group col-6">
|
|
{% for c in snapshot.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">{{ snapshot.created }}</small>
|
|
</div>
|
|
<p class="mb-1">
|
|
{{ c.manufacturer }}<br />
|
|
{{ c.model }}<br />
|
|
{{ c.serialNumber }}<br />
|
|
</p>
|
|
<small class="text-muted">
|
|
</small>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
|
|
<div class="tab-pane fade profile-overview" id="snapshots">
|
|
<h5 class="card-title">List of snapshots</h5>
|
|
<div class="list-group col-6">
|
|
{% for snap in object.snapshots %}
|
|
<div class="list-group-item">
|
|
<div class="d-flex w-100 justify-content-between">
|
|
<h5 class="mb-1"></h5>
|
|
<small class="text-muted">{{ snap.created }}</small>
|
|
</div>
|
|
<p class="mb-1">
|
|
{{ snap.uuid }}<br />
|
|
</p>
|
|
<small class="text-muted">
|
|
</small>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endblock %}
|