Files
ProjectIOT/application/auth/templates/login.html
2025-06-05 23:16:18 +02:00

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>