2025-03-16 01:11:32 +00:00
|
|
|
{% extends 'base.html' %}
|
2024-08-25 00:54:11 +00:00
|
|
|
{% block content %}
|
2025-03-07 21:55:11 +00:00
|
|
|
<div class="container" style="display: flex; justify-content: center; align-items: center; min-width: 40vw; flex-direction: column;">
|
|
|
|
|
|
2024-08-31 23:50:22 +00:00
|
|
|
<style>
|
|
|
|
|
form {
|
2025-03-07 21:55:11 +00:00
|
|
|
max-width: 80vw;
|
2024-08-31 23:50:22 +00:00
|
|
|
padding: 40px;
|
|
|
|
|
}
|
2025-03-07 21:55:11 +00:00
|
|
|
|
|
|
|
|
.flash-message {
|
|
|
|
|
position: fixed;
|
|
|
|
|
top: 20vh;
|
|
|
|
|
left: 50%;
|
|
|
|
|
transform: translateX(-50%);
|
|
|
|
|
background-color: #f44336;
|
|
|
|
|
color: white;
|
|
|
|
|
padding: 15px;
|
|
|
|
|
border-radius: 4px;
|
|
|
|
|
z-index: 100;
|
|
|
|
|
text-align: center;
|
|
|
|
|
box-shadow: 0 4px 8px rgba(0,0,0,0.2);
|
|
|
|
|
max-width: 80%;
|
|
|
|
|
}
|
2024-08-31 23:50:22 +00:00
|
|
|
</style>
|
2025-03-07 21:55:11 +00:00
|
|
|
|
|
|
|
|
{% if messages %}
|
|
|
|
|
<div id="flash-message" class="flash-message">
|
|
|
|
|
{{ messages }}
|
|
|
|
|
</div>
|
|
|
|
|
<script>
|
|
|
|
|
setTimeout(function() {
|
|
|
|
|
var flashMessage = document.getElementById('flash-message');
|
|
|
|
|
if (flashMessage) {
|
|
|
|
|
flashMessage.style.display = 'none';
|
|
|
|
|
}
|
|
|
|
|
}, 3000);
|
|
|
|
|
</script>
|
|
|
|
|
{% endif %}
|
|
|
|
|
|
2024-08-25 00:54:11 +00:00
|
|
|
<form method="post" enctype="multipart/form-data" style="background-color: rgb(205, 243, 148);">
|
2025-04-14 20:52:00 +00:00
|
|
|
{{ login_form.csrf_token }}
|
|
|
|
|
{{ login_form.hidden_tag() }}
|
|
|
|
|
{{ login_form.username.label }}
|
|
|
|
|
{{ login_form.username() }}
|
|
|
|
|
{{ login_form.pwd.label }}
|
|
|
|
|
{{ login_form.pwd() }}
|
2024-08-25 00:54:11 +00:00
|
|
|
|
2025-04-14 20:52:00 +00:00
|
|
|
<p>{{ login_form.submit() }}</p>
|
2024-08-25 00:54:11 +00:00
|
|
|
</form>
|
2025-03-07 21:55:11 +00:00
|
|
|
</div>
|
2024-08-25 00:54:11 +00:00
|
|
|
{% endblock %}
|