mirror of
https://github.com/StefBuwalda/ProjectIOT.git
synced 2025-10-30 03:09:58 +00:00
103 lines
3.6 KiB
HTML
103 lines
3.6 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.5/dist/css/bootstrap.min.css" rel="stylesheet"
|
|
integrity="sha384-SgOJa3DmI69IUzQ2PVdRZhwQ+dy64/BUtbMJw1MZ8t5HZApcHrRKUc4W0kG879m7" crossorigin="anonymous">
|
|
<title>Login</title>
|
|
<style>
|
|
.rounded-input {
|
|
border-radius: 20px;
|
|
}
|
|
|
|
.split-background {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 50vh;
|
|
background-color: #424D66;
|
|
z-index: -1;
|
|
}
|
|
|
|
@keyframes moveLeftRight {
|
|
0% {
|
|
transform: translateX(0);
|
|
}
|
|
|
|
100% {
|
|
transform: translateX(1366px);
|
|
}
|
|
}
|
|
|
|
.logo {
|
|
margin-top: 70px;
|
|
width: 770px;
|
|
height: auto;
|
|
}
|
|
|
|
.car-image-container {
|
|
position: fixed;
|
|
bottom: 33px;
|
|
}
|
|
|
|
.animate {
|
|
animation: moveLeftRight 15s infinite alternate;
|
|
}
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
<div class="split-background">
|
|
<div class="container-fluid text-center">
|
|
<img src="{{ url_for('static', filename='images/logo-light.png') }}" alt="Logo" class="logo img-fluid mt-5">
|
|
</div>
|
|
</div>
|
|
<div class="container d-flex justify-content-center align-items-center" style="min-height: 100vh;">
|
|
<div class="col-md-6 col-lg-4">
|
|
<form method="POST" class="p-5 border rounded-input shadow-sm bg-white bg-opacity-75">
|
|
{{form.hidden_tag()}}
|
|
<div class=" p-4 border rounded-input shadow-sm bg-white">
|
|
<label for="username" class="form-label text-center w-100">Username</label>
|
|
{{form.username(class="form-control rounded-input")}}
|
|
<label for="password" class="form-label text-center w-100">Password</label>
|
|
{{form.password(class="form-control rounded-input")}}
|
|
<br>
|
|
<div class="d-grid">
|
|
{{form.submit(class="btn btn-dark rounded-input px-4 mx-auto w-50")}}
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
<div class="car-image-container">
|
|
<img src="{{ url_for('static', filename='images/car.png') }}" alt="Moving Image" class="animate">
|
|
</div>
|
|
<footer class="py-3 bg-dark text-white fixed-bottom"">
|
|
<div class=" container text-center">
|
|
<span class="text-muted"> </span>
|
|
</div>
|
|
</footer>
|
|
<svg xmlns="http://www.w3.org/2000/svg" class="d-none">
|
|
<symbol id="check-circle-fill" viewBox="0 0 16 16">
|
|
<path
|
|
d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z" />
|
|
</symbol>
|
|
</svg>
|
|
|
|
<div class="position-fixed w-25 m-3 bottom-0" style="z-index: 1050;">
|
|
{% for message in get_flashed_messages() %}
|
|
<div class="alert alert-success alert-dismissible fade show" role="alert">
|
|
<svg class="bi flex-shrink-0 me-2" width="15" height="15" role="img" aria-label="Success:">
|
|
<use xlink:href="#check-circle-fill" />
|
|
</svg>
|
|
{{message}}
|
|
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
</body>
|
|
|
|
</html> |