This repository has been archived on 2024-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
devicehub-teal/ereuse_devicehub/templates/inventory/erasure.html

401 lines
12 KiB
HTML
Raw Normal View History

2023-02-17 09:45:55 +00:00
<!DOCTYPE html>
2023-02-15 17:30:45 +00:00
<html>
<head>
<title>Data Sanitization Certificate</title>
<meta content="text/html; charset=UTF-8" http-equiv="content-type" />
2023-02-17 09:45:55 +00:00
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<link href="https://stackpath.bootstrapcdn.com/bootswatch/3.3.7/flatly/bootstrap.min.css"
rel="stylesheet"
integrity="sha384-+ENW/yibaokMnme+vBLnHMphUYxHs34h9lpdbSLuAwGkOKFRl4C34WkjazBtb7eT"
crossorigin="anonymous">
2023-02-15 17:30:45 +00:00
<style type="text/css" media="all">
@page {
size: A4 portrait; /* can use also 'landscape' for orientation */
2023-02-17 09:45:55 +00:00
margin: 1.0cm 1.5cm 3.5cm 1.5cm;
2023-02-24 16:01:38 +00:00
font-family: "Source Sans Pro", Calibri, Candra, Sans serif;
2023-02-15 17:30:45 +00:00
2023-02-17 09:45:55 +00:00
@top {
2023-02-15 17:30:45 +00:00
content: element(header);
}
2023-02-17 09:45:55 +00:00
@bottom {
2023-02-15 17:30:45 +00:00
content: element(footer);
}
}
2023-02-17 09:45:55 +00:00
body {
width: 100% !important;
height: 100%;
background: #fff;
color: black;
font-size: 100%;
line-height: 1.65;
-webkit-font-smoothing: antialiased;
-webkit-text-size-adjust: none;
}
2023-02-15 17:30:45 +00:00
header {
2023-02-23 16:07:00 +00:00
position: running(header);
2023-02-15 17:30:45 +00:00
/*height: 100px;*/
2023-02-23 16:07:00 +00:00
font-size: 12px;
/* color: #000; */
font-family: Arial;
width: 100%;
/* position: relative;*/
2023-02-15 17:30:45 +00:00
}
footer {
position: running(footer);
/*height: 150px;*/
}
2023-02-17 09:45:55 +00:00
.body_content {
position: relative;
page-break-inside: auto;
width: 100%;
/*overflow: hidden;*/
}
2023-02-15 17:30:45 +00:00
img {max-height: 150px; width: auto;}
.company-logo {float: left;}
.customer-logo {float: right;}
2023-02-24 16:01:38 +00:00
.page-break:not(section:first-of-type) {
page-break-before: always
}
}
2023-02-15 17:30:45 +00:00
</style>
</head>
<body>
2023-05-26 15:11:47 +00:00
<header class="page-header">
2023-02-15 17:30:45 +00:00
<div class="row">
2023-05-26 15:11:47 +00:00
<div class="col">
<h1>Data Sanitization Certificate</h1>
2023-02-15 17:30:45 +00:00
</div>
2023-05-26 15:11:47 +00:00
<div class="col" style="background-color: #d5a6bd;">
<p style="margin-left: 10px;">{{ date_report }}, {{ software }}</p>
2023-02-15 17:30:45 +00:00
</div>
</div>
2023-05-26 15:11:47 +00:00
</header>
2023-02-15 17:30:45 +00:00
2023-02-17 09:45:55 +00:00
<div class="container body-content">
2023-02-15 17:30:45 +00:00
<div class="row mt-3">
2023-02-17 09:45:55 +00:00
<div class="col-12">
<table class="body_content">
<tbody>
2023-05-26 15:11:47 +00:00
<tr>
2023-02-17 09:45:55 +00:00
<td style="width:80%;">
2023-05-26 15:11:47 +00:00
<table class="body_content">
<tbody>
<tr style="padding-top:5px;">
<td colspan="2">
<strong>Responsible Sanitization Entity</strong>
</td>
</tr>
<tr style="padding-top:5px;">
<td style="width:20%;">
<span>Name:</span>
</td>
<td style="width:80%;">
<span>{{ my_data and my_data.company_name or '' }}</span>
</td>
</tr>
<tr style="padding-top:5px;">
<td style="width:20%;">
<span>Responsible Person</span>
</td>
<td style="width:80%;">
<span>{{ my_data and my_data.responsable_person or '' }}</span>
</td>
</tr>
<tr style="padding-top:5px;">
<td style="width:20%;">
<span>Location:</span>
</td>
<td style="width:80%;">
<span>{{ my_data and my_data.location or '' }}</span>
</td>
</tr>
</table>
2023-02-17 09:45:55 +00:00
</td>
<td style="width:20%;">
2023-05-26 15:11:47 +00:00
<img style="width: 100%; height: auto;" src="{{ my_data and my_data.logo.to_text() }}" />
2023-02-17 09:45:55 +00:00
</td>
</tr>
2023-05-26 15:11:47 +00:00
</tbody>
2023-02-17 09:45:55 +00:00
</table>
2023-02-15 17:30:45 +00:00
</div>
</div>
2023-02-17 09:45:55 +00:00
<div class="row" style="padding-top: 20px;">
<div class="col-12">
<table class="body_content">
<tbody>
2023-05-26 15:11:47 +00:00
<tr>
2023-02-17 09:45:55 +00:00
<td style="width:80%;">
2023-05-26 15:11:47 +00:00
<table class="body_content">
<tbody>
<tr style="padding-top:5px;">
<td colspan="2">
<strong>Entity Information</strong>
</td>
</tr>
<tr>
<td style="width:20%;">
<span>Name: </span>
</td>
<td style="width:80%;">
<span>{{ customer_details and customer_details.company_name or ''}}</span>
</td>
</tr>
<tr>
<td style="width:20%;">
<span>Location: </span>
</td>
<td style="width:80%;">
<span>{{ customer_details and customer_details.location or '' }}</span>
</td>
</tr>
</tbody>
</table>
2023-02-17 09:45:55 +00:00
</td>
<td style="width:20%;">
2023-05-26 15:11:47 +00:00
<img style="width: 100%; height: auto;" src="{{ customer_details and customer_details.logo.to_text() or '' }}" />
2023-02-17 09:45:55 +00:00
</td>
</tr>
2023-05-26 15:11:47 +00:00
</tbody>
2023-02-17 09:45:55 +00:00
</table>
2023-02-15 17:30:45 +00:00
</div>
</div>
2023-05-26 15:11:47 +00:00
2023-02-17 09:45:55 +00:00
<div class="row" style="padding-top: 20px;">
<div class="col-12">
2023-02-15 17:30:45 +00:00
<strong>Summary</strong>
2023-02-17 09:45:55 +00:00
</div>
<div class="col-12">
<table class="body_content">
<tbody>
2023-05-26 15:11:47 +00:00
{% if customer_details and customer_details.transfer %}
<tr style="padding-top:5px;">
<td style="width:20%;">
<span>Code Transfer:</span>
</td>
<td style="width:80%;">
<span>{{ customer_details.transfer.code or '' }}</span>
</td>
</tr>
{% endif %}
2023-02-28 15:43:28 +00:00
{% if erasure_hosts %}
<tr style="padding-top:5px;">
<td style="width:20%;">
2023-03-13 11:24:57 +00:00
<span>SNs of sanitization server:</span>
2023-02-28 15:43:28 +00:00
</td>
<td style="width:80%;">
2023-03-09 12:09:05 +00:00
{% for e in erasure_hosts %}
2023-02-28 15:43:28 +00:00
{% if e.serial_number %}
2023-05-26 15:11:47 +00:00
<span>{{ (e.serial_number or '').upper() }}</span>{% if not loop.last %},{% endif %}
2023-02-28 15:43:28 +00:00
{% endif %}
2023-03-09 12:09:05 +00:00
{% endfor %}
2023-02-28 15:43:28 +00:00
</td>
</tr>
2023-03-09 12:09:05 +00:00
{% endif %}
{% if n_computers %}
2023-02-17 09:45:55 +00:00
<tr style="padding-top:5px;">
<td style="width:20%;">
2023-02-23 16:07:00 +00:00
<span>N&deg; of computers:</span>
2023-02-17 09:45:55 +00:00
</td>
<td style="width:80%;">
2023-02-28 15:43:28 +00:00
<span>{{ n_computers }}</span>
2023-02-17 09:45:55 +00:00
</td>
</tr>
2023-02-28 15:43:28 +00:00
{% endif %}
2023-02-17 09:45:55 +00:00
<tr style="padding-top:5px;">
<td style="width:20%;">
<span>N&deg; of data storage unit(s):</span>
</td>
<td style="width:80%;">
2023-02-28 15:43:28 +00:00
<span>{{ erasures | length }}</span>
2023-02-17 09:45:55 +00:00
</td>
</tr>
<tr style="padding-top:5px;">
<td style="width:20%;">
2023-05-26 15:11:47 +00:00
<span>N&deg; result Success:</span>
2023-02-17 09:45:55 +00:00
</td>
<td style="width:80%;">
2023-05-26 15:11:47 +00:00
<span>{{ result_success }}</span>
</td>
</tr>
<tr style="padding-top:5px;">
<td style="width:20%;">
<span>N&deg; result Failed:</span>
</td>
<td style="width:80%;">
<span>{{ result_failed }}</span>
2023-02-17 09:45:55 +00:00
</td>
</tr>
</table>
2023-02-15 17:30:45 +00:00
</div>
</div>
2023-02-17 09:45:55 +00:00
<div class="row" style="padding-top: 20px;">
<div class="col-12">
2023-02-15 17:30:45 +00:00
<strong>Report Details</strong>
2023-02-17 09:45:55 +00:00
</div>
<div class="col-12">
<table class="body_content">
<tbody>
<tr style="padding-top:5px;">
<td style="width:20%;">
<span>Report UUID:</span>
</td>
<td style="width:80%;">
2023-02-28 15:43:28 +00:00
<span>{{ uuid_report }}</span>
2023-02-17 09:45:55 +00:00
</td>
</tr>
<tr style="padding-top:5px;">
<td style="width:20%;">
<span>Report Date:</span>
</td>
<td style="width:80%;">
2023-02-28 15:43:28 +00:00
<span>{{ date_report }}</span>
2023-02-17 09:45:55 +00:00
</td>
</tr>
<tr style="padding-top:5px;">
<td style="width:20%;">
<span>Software Version:</span>
</td>
<td style="width:80%;">
2023-02-28 15:43:28 +00:00
<span>{{ software }}</span>
2023-02-17 09:45:55 +00:00
</td>
</tr>
</table>
2023-02-15 17:30:45 +00:00
</div>
</div>
2023-02-17 09:45:55 +00:00
<div class="row" style="margin-top:25px;">
2023-02-15 17:30:45 +00:00
<div class="col">
<p>
I hereby declare that the data erasure process has been carried
out in accordance with the instructions received.
</p>
</div>
</div>
2023-03-09 12:09:05 +00:00
<div class="row" style="margin-top:200px;">
2023-02-17 09:45:55 +00:00
<div class="col-12">
<table class="body_content" style="border-top: 1px solid #000;">
<tbody>
<tr style="padding-top:5px;">
<td style="width:50%; text-align: center;">
<span>Data Responsable</span>
2023-02-28 15:43:28 +00:00
<br />
<span>{{ my_data and my_data.responsable_person or '' }}</span>
2023-02-17 09:45:55 +00:00
</td>
<td style="width:50%; text-align: center;">
<span>Data Supervisor</span>
2023-02-28 15:43:28 +00:00
<br />
<span>{{ my_data and my_data.supervisor_person or '' }}</span>
2023-02-17 09:45:55 +00:00
</td>
</tr>
</table>
2023-02-15 17:30:45 +00:00
</div>
</div>
2023-02-28 15:43:28 +00:00
{% if erasures %}
2023-02-24 16:01:38 +00:00
<div class="row mt-3 page-break">
2023-02-15 17:30:45 +00:00
<div class="col">
2023-03-10 19:13:54 +00:00
<h1>Summary</h1>
2023-02-15 17:30:45 +00:00
</div>
</div>
<div class="row mt-3">
<div class="col">
2023-02-23 16:07:00 +00:00
<table class="table" style="width: 100%; text-align: center;">
<thead style="border-bottom: 1px solid #000;">
2023-02-15 17:30:45 +00:00
<tr>
2023-02-28 15:43:28 +00:00
<th scope="col" style="text-align: center;">SN Storage</th>
2023-03-10 19:13:54 +00:00
<th scope="col" style="text-align: center;">SN Host</th>
2023-02-28 15:43:28 +00:00
<th scope="col" style="text-align: center;">Method</th>
<th scope="col" style="text-align: center;">Result</th>
<th scope="col" style="text-align: center;">Date</th>
2023-02-15 17:30:45 +00:00
</tr>
</thead>
<tbody>
2023-02-23 16:07:00 +00:00
{% for erasure in erasures %}
<tr style="border-bottom: 1px dashed #000;">
<td>
2023-05-26 15:11:47 +00:00
{{ (erasure.device.serial_number or '').upper() }}
2023-02-23 16:07:00 +00:00
</td>
<td>
2023-05-26 15:11:47 +00:00
{{ (erasure.parent.serial_number or '').upper() }}
2023-02-28 15:43:28 +00:00
</td>
<td>
{{ erasure.get_public_name() }}
</td>
<td>
{{ erasure.severity.get_public_name() }}
</td>
<td>
{{ erasure.date_str }}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
2023-02-15 17:30:45 +00:00
</div>
2023-02-24 16:01:38 +00:00
{% for erasure in erasures %}
<div class="container mb-5 page-break">
2023-05-26 15:11:47 +00:00
{% if loop.index == 1 %}
<div class="col-12" style="margin-bottom: 20px;">
2023-05-30 07:45:19 +00:00
<h3>Technical Details</h3>
2023-05-26 15:11:47 +00:00
</div>
2023-03-09 11:40:46 +00:00
{% endif %}
2023-05-26 15:11:47 +00:00
<h4>{{ (erasure.device.serial_number or '').upper() }}</h4>
<dl>
<dt>Storage Drive:</dt>
<dd>Model: {{ erasure.device.model }}</dd>
<dd>SN: {{ (erasure.device.serial_number or '').upper() }}</dd>
<dd>Size: {{ erasure.device.get_size()}}</dd>
{% if erasure.parent %}
<br />
<dt>Computer Host:</dt>
<dd>Model: {{ erasure.parent.model }}</dd>
<dd>SN: {{ (erasure.parent.serial_number or '').upper() }}</dd>
<dd>DHID: {{ erasure.parent.dhid }}</dd>
{% endif %}
2023-02-24 16:01:38 +00:00
2023-05-26 15:11:47 +00:00
<br />
2023-02-24 16:01:38 +00:00
<dt>Erasure:</dt>
<dd>{{ erasure.__format__('ts') }}</dd>
{% if erasure.steps %}
<dt>Erasure steps:</dt>
2023-05-26 15:11:47 +00:00
<dd>
<ol>
{% for step in erasure.steps %}
<li>{{ step.__format__('') }}</li>
{% endfor %}
</ol>
</dd>
{% endif %}
2023-03-15 16:19:31 +00:00
{% if erasure.device.proofs %}
<dt>DLT Proofs:</dt>
<dd>
<ol>
{% for proof in erasure.device.proofs %}
<li>{{ proof.type }}: {{ proof.timestamp }}</li>
{% endfor %}
</ol>
</dd>
{% endif %}
2023-02-28 15:43:28 +00:00
</dl>
2023-02-15 17:30:45 +00:00
</div>
2023-02-24 16:01:38 +00:00
{% endfor %}
2023-02-28 15:43:28 +00:00
{% endif %}
<footer class="page-header">
<div>
<a href="{{ url_for('Document.StampsView', _external=True) }}">Verify on-line the integrity of this document</a>
</div>
</footer>
2023-02-15 17:30:45 +00:00
</body>
</html>