105 lines
3.0 KiB
HTML
105 lines
3.0 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<title>Kalendarz pracy</title>
|
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet" />
|
|
<style>
|
|
.calendar {
|
|
display: grid;
|
|
grid-template-columns: repeat(7, 1fr); /* 7 dni tygodnia */
|
|
{% comment %} gap: 10px; {% endcomment %}
|
|
}
|
|
.day {
|
|
text-align: center;
|
|
padding: 10px;
|
|
border: 1px solid #ddd;
|
|
border-radius: 5px;
|
|
}
|
|
.day .date {
|
|
font-weight: bold;
|
|
margin-bottom: 5px;
|
|
}
|
|
.day .hours {
|
|
font-size: 2rem;
|
|
color: #555;
|
|
}
|
|
.day.active {
|
|
background-color: #007bff;
|
|
color: #fff;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body class="bg-light">
|
|
<div class="container mx-auto my-4">
|
|
<h1 class="text-center mb-4">Kalendarz pracy</h1>
|
|
<div class="row g-3 calendar">
|
|
{% for _ in empty_days %}
|
|
<div class="col">
|
|
{% comment %}
|
|
<div class="card" style="height: 100%">
|
|
<div class="card-header text-center">X</div>
|
|
<div class="card-body text-center"></div>
|
|
</div>
|
|
{% endcomment %}
|
|
</div>
|
|
{% endfor %} {% for day in days %}
|
|
<div class="col">
|
|
<div class="card text-center" style="min-height: 228px; height: 100%">
|
|
{% if day.weekday == 5 %}
|
|
<div class="card-header bg-warning">
|
|
<h5 class="mb-0">{{ day.day}}</h5>
|
|
</div>
|
|
{% elif day.weekday == 6 %}
|
|
<div class="card-header text-white bg-danger">
|
|
<h5 class="mb-0">{{ day.day}}</h5>
|
|
</div>
|
|
{% elif day.is_holiday %}
|
|
<div class="card-header bg-info">
|
|
<h5 class="mb-0">{{ day.day}}</h5>
|
|
</div>
|
|
{% else %}
|
|
<div class="card-header text-white bg-secondary">
|
|
<h5 class="mb-0">{{ day.day}}</h5>
|
|
</div>
|
|
{% endif %}
|
|
<div class="card-body pt-1">
|
|
{% if day.is_holiday == False and day.weekday < 5 %}
|
|
<div>
|
|
<span
|
|
class="d-block text-end {% if '-' in day.daily_diffrance %} text-danger {% else %} text-success {% endif %}"
|
|
>
|
|
{{ day.daily_diffrance}}
|
|
</span>
|
|
</div>
|
|
<div>
|
|
<h1 class="display-6">{{ day.daily_actual}}</h1>
|
|
</div>
|
|
<div>
|
|
<div class="row row-cols-2 justify-content-center text-nowrap">
|
|
<strong class="d-block col">Expected:</strong>
|
|
<span class="d-block col">{{day.total_expected}}</span>
|
|
<strong class="d-block col">Actual:</strong>
|
|
<span class="d-block col">{{day.total_actual}}</span>
|
|
</div>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
{% if '-' in day.total_diffrance %}
|
|
<div class="card-footer bg-danger pt-0 pb-1">
|
|
<span class="text-white fs-5">{{day.total_diffrance}}</span>
|
|
</div>
|
|
{% else %}
|
|
<div class="card-footer bg-success pt-0 pb-1">
|
|
<span class="text-white fs-5">{{day.total_diffrance}}</span>
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|