added evidence uuid on details

This commit is contained in:
Thomas Nahuel Rusiecki 2025-02-11 16:30:19 -03:00
parent 700c0d53dc
commit 23359d27b8

View file

@ -11,53 +11,69 @@
{% block content %}
<div class="row">
<div class="col">
<h3>{{ object.id }}</h3>
</div>
</div>
{% load django_bootstrap5 %}
<form role="form" method="post" class="p-2 mb-4 border rounded shadow-sm d-flex d-inline-flex align-items-center gap-3" style="max-width: 400px; {% if form2.erase_server.value %}background-color: #d5f7de;{% else %}background-color: #f7e7d5;{% endif %}">
{% csrf_token %}
{% if form2.errors %}
<div class="alert alert-danger d-flex align-items-center alert-dismissible fade show w-100" role="alert">
<i class="mdi mdi-alert-circle me-2"></i>
<div>
{% for field, error in form2.errors.items %}
<strong>{{ field|title }}:</strong> {{ error }}<br />
{% endfor %}
<div class="col-md-12 mb-3">
<div class="card d-flex flex-wrap">
<div class="card-header bg-light">
<strong class="card-title">Evidence
<span class="text-muted" id="uuid">{{ object.uuid }}</span>
<button class="btn btn-sm btn-outline-secondary ms-1" onclick="copyToClipboard()">
<i class="bi bi-clipboard"></i>
</button>
</strong>
</div>
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
<div class="card-body">
<!-- Erase server checkbox -->
{% load django_bootstrap5 %}
<form role="form" method="post" class="p-2 rounded d-flex d-inline-flex align-items-center gap-3" style="max-width: 400px; {% if form2.erase_server.value %}background-color: #f5faf7!important;{% endif %}">
{% csrf_token %}
{% if form2.errors %}
<div class="alert alert-danger d-flex align-items-center alert-dismissible fade show w-100" role="alert">
<i class="mdi mdi-alert-circle me-2"></i>
<div>
{% for field, error in form2.errors.items %}
<strong>{{ field|title }}:</strong> {{ error }}<br />
{% endfor %}
</div>
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
</div>
{% endif %}
<!-- erase server switch -->
<div class="form-check form-switch m-0">
<input
class="form-check-input"
type="checkbox"
id="{{ form2.erase_server.id_for_label }}"
name="{{ form2.erase_server.name }}"
onchange="toggleSaveButton(this)"
{% if form2.erase_server.value %}
checked
{% endif %}>
<label class="form-check-label ps-1" for="{{ form2.erase_server.id_for_label }}">
{% if form2.erase_server.value %}
<i class="pe-1 bi bi-eraser"></i>
{% translate "It is an erase server" %}
{% else %}
<i class="pe-1 bi bi-x-circle"></i>
{% translate "It is not an erase server" %}
{% endif %}
</label>
</div>
<!-- submit button -->
<button class="btn btn-sm btn btn-outline-success" d-flex align-items-end gap-1" type="submit" name="submit_form2">
<i class="bi bi-floppy2-fill"></i> {% translate 'Save' %}
</button>
</form>
</div>
</div>
</div>
{% endif %}
<!-- erase server swithc -->
<div class="form-check form-switch m-0">
<input
class="form-check-input"
type="checkbox"
id="{{ form2.erase_server.id_for_label }}"
name="{{ form2.erase_server.name }}"
{% if form2.erase_server.value %}
checked
{% endif %}>
<label class="form-check-label ps-1" for="{{ form2.erase_server.id_for_label }}">
{% if form2.erase_server.value %}
<i class="pe-1 bi bi-eraser"></i>
{% translate "It is an erase server" %}
{% else %}
<i class="pe-1 bi bi-x-circle"></i>
{% translate "It is not an erase server" %}
{% endif %}
</label>
</div>
<!-- submit button -->
<button class="btn btn-sm btn btn-outline-success" d-flex align-items-end gap-1" type="submit" name="submit_form2">
<i class="bi bi-floppy2-fill"></i> {% translate 'Save' %}
</button>
</form>
<div class="row">
<div class="col">
@ -153,6 +169,19 @@
{% block extrascript %}
<script>
function toggleSaveButton(checkbox) {
const saveButton = document.getElementById('saveButton');
// Enable the button if the checkbox state changes
saveButton.disabled = false;
}
function copyToClipboard() {
const uuid = document.getElementById('uuid').innerText;
navigator.clipboard.writeText(uuid).then(() => {
alert('UUID copied to clipboard!');
}).catch(() => {
alert('Failed to copy UUID.');
});
}
document.addEventListener("DOMContentLoaded", function() {
// Obtener el hash de la URL (ejemplo: #components)
const hash = window.location.hash;