Files
ProjectIOT/application/dashboard/templates/add.html
2025-05-23 12:54:42 +02:00

87 lines
3.1 KiB
HTML

{%extends 'base.html' %}
{% block content %}
<div class="col-md-9 ms-sm-auto col-lg-10 px-md-4">
<div class="d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center pt-3 pb-2 mb-3 border-bottom">
<h1 class="display-4 fw-bold" style="color: #313A4D;">Numberplate</h1>
</div>
<div class="col-md-12">
<div class="card mb-4">
</div>
</div>
<div class="col-md-12">
<div class="card mb-4">
<div class="card-body">
<h5 class="card-title fs-4">Add numberplate</h5>
<div class="log-container" style="max-height: 250px; overflow-y: auto;">
<form method="POST" class="contact-form" id="numberplateForm">
{{ form.hidden_tag() }}
<div class="form-field">
{{ form.numberplate(class="form-input",style="width: 200px; height: 40px;") }}
</div>
<div class="button-container" style="margin-top: 15px;">
{{ form.submit(class="btn btn-sm btn-dark", style="width: 200px;") }}
</div>
</form>
</div>
</div>
</div>
</div>
<div class="col-md-12">
<div class="card mb-4">
<div class="card-body">
<h5 class="card-title fs-4">Numberplates</h5>
<div class="log-container" style="max-height: 250px; overflow-y: auto;">
<table class="table table-sm table-hover" id="numberplatesTable">
<thead>
<tr>
<th scope="col" class="fs-5">ID</th>
<th scope="col" class="fs-5">Numberplate</th>
</tr>
</thead>
<tbody id="numberplatesBody">
{% for plate in plates %}
<tr>
<td><small class="fs-6">{{ plate.id }}</small></td>
<td><small class="fs-6">{{ plate.plate }}</small></td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
</div>
<script>
document.getElementById('numberplateForm').addEventListener('submit', async function(e) {
e.preventDefault();
const form = e.target;
const formData = new FormData(form);
const response = await fetch(form.action || window.location.pathname, {
method: 'POST',
body: formData,
headers: {'X-Requested-With': 'XMLHttpRequest'}
});
if (response.ok) {
const data = await response.json();
// Update the table body
const tbody = document.getElementById('numberplatesBody');
tbody.innerHTML = '';
data.plates.forEach(plate => {
tbody.innerHTML += `<tr>
<td><small class="fs-6">${plate.id}</small></td>
<td><small class="fs-6">${plate.plate}</small></td>
</tr>`;
});
form.reset();
} else {
alert('Failed to add numberplate.');
}
});
</script>
{% endblock %}