From f485791e3bba6469da117269d8b560b63c16b772 Mon Sep 17 00:00:00 2001
From: Iziram
Date: Thu, 16 Nov 2023 14:25:06 +0100
Subject: [PATCH] Assiduites : Gestions couleurs + bugfix calendrier Close #800
---
app/static/css/assiduites.css | 70 +++-
app/static/icons/absent.svg | 16 +-
app/static/icons/absent_ancien.svg | 11 +
app/static/icons/aucun.svg | 2 +-
app/static/icons/present.svg | 4 +-
app/static/icons/retard.svg | 4 +-
app/static/js/assiduites.js | 2 +-
app/static/js/date_utils.js | 11 +
.../assiduites/pages/ajout_justificatif.j2 | 2 +-
app/templates/assiduites/pages/calendrier.j2 | 303 ++++++++++++------
.../pages/signal_assiduites_etud.j2 | 13 +-
.../pages/signal_assiduites_group.j2 | 12 +-
app/templates/assiduites/widgets/alert.j2 | 2 +-
app/templates/assiduites/widgets/conflict.j2 | 16 +-
app/templates/assiduites/widgets/differee.j2 | 22 +-
.../assiduites/widgets/legende_couleur.j2 | 12 +
.../assiduites/widgets/minitimeline.j2 | 18 +-
app/templates/assiduites/widgets/prompt.j2 | 2 +-
.../assiduites/widgets/tableau_assi.j2 | 6 +-
.../assiduites/widgets/tableau_base.j2 | 16 +-
.../assiduites/widgets/tableau_justi.j2 | 6 +-
app/templates/assiduites/widgets/timeline.j2 | 4 +-
app/templates/assiduites/widgets/toast.j2 | 8 +-
23 files changed, 357 insertions(+), 205 deletions(-)
mode change 100755 => 100644 app/static/icons/absent.svg
create mode 100755 app/static/icons/absent_ancien.svg
create mode 100644 app/templates/assiduites/widgets/legende_couleur.j2
diff --git a/app/static/css/assiduites.css b/app/static/css/assiduites.css
index c935f4f839..fe429ecfcb 100644
--- a/app/static/css/assiduites.css
+++ b/app/static/css/assiduites.css
@@ -1,3 +1,33 @@
+:root {
+ --color-present: #6bdb83;
+ --color-absent: #e62a11;
+ --color-retard: #f0c865;
+ --color-justi: #7059FF;
+ --color-justi-invalide: #a84476;
+ --color-nonwork: #badfff;
+
+ --color-absent-justi: #e65ab7;
+ --color-retard-justi: #ffef7a;
+
+ --color-error: #FF0000;
+ --color-warning: #eec660;
+ --color-information: #658ef0;
+
+ --color-def: #d61616;
+ --color-conflit: #ff00009c;
+ --color-bg-def: #c8c8c8;
+ --color-primary: #7059FF;
+ --color-secondary: #6f9fff;
+
+ --color-defaut: #FFF;
+ --color-defaut-dark: #444;
+
+
+
+ --motif-justi: repeating-linear-gradient(135deg, transparent, transparent 4px, var(--color-justi) 4px, var(--color-justi) 8px);
+ --motif-justi-invalide: repeating-linear-gradient(-135deg, transparent, transparent 4px, var(--color-justi-invalide) 4px, var(--color-justi-invalide) 8px);
+}
+
* {
box-sizing: border-box;
}
@@ -87,7 +117,7 @@
}
.ui-slider-range.ui-widget-header.ui-corner-all {
- background-color: #F9C768;
+ background-color: var(--color-warning);
background-image: none;
opacity: 0.50;
visibility: visible;
@@ -122,7 +152,7 @@
.etud_row.def,
.etud_row.dem {
- background-color: #c8c8c8;
+ background-color: var(--color-bg-def);
}
/* --- Index --- */
@@ -149,7 +179,7 @@
.tr.def .td.sticky span::after {
display: block;
content: " (Déf.)";
- color: #d61616;
+ color: var(--color-def);
margin-left: 2px;
}
@@ -157,7 +187,7 @@
.tr.dem .td.sticky span::after {
display: block;
content: " (Dém.)";
- color: #d61616;
+ color: var(--color-def);
margin-left: 2px;
}
@@ -213,32 +243,36 @@
}
.etud_row.conflit {
- background-color: #ff0000c2;
+ background-color: var(--color-conflit);
}
.etud_row .assiduites_bar .absent,
.demo.absent {
- background-color: #F1A69C !important;
+ background-color: var(--color-absent) !important;
}
.etud_row .assiduites_bar .present,
.demo.present {
- background-color: #9CF1AF !important;
+ background-color: var(--color-present) !important;
}
.etud_row .assiduites_bar .retard,
.demo.retard {
- background-color: #F1D99C !important;
+ background-color: var(--color-retard) !important;
+}
+
+.demo.nonwork {
+ background-color: var(--color-nonwork) !important;
}
.etud_row .assiduites_bar .justified,
.demo.justified {
- background-image: repeating-linear-gradient(135deg, transparent, transparent 4px, #7059FF 4px, #7059FF 8px);
+ background-image: var(--motif-justi);
}
.etud_row .assiduites_bar .invalid_justified,
.demo.invalid_justified {
- background-image: repeating-linear-gradient(225deg, transparent, transparent 4px, #d61616 4px, #d61616 8px);
+ background-image: var(--motif-justi-invalide);
}
@@ -273,27 +307,35 @@
height: 35px;
background-position: center;
background-size: cover;
+ border-radius: 5px;
+ border: 1px solid var(--color-defaut-dark);
}
.rbtn.present::before {
background-image: url(../icons/present.svg);
+ background-color: var(--color-present);
+
}
.rbtn.absent::before {
+ background-color: var(--color-absent);
background-image: url(../icons/absent.svg);
}
.rbtn.aucun::before {
background-image: url(../icons/aucun.svg);
+ background-color: var(--color-defaut-dark);
+
}
.rbtn.retard::before {
+ background-color: var(--color-retard);
background-image: url(../icons/retard.svg);
}
.rbtn:checked:before {
- outline: 5px solid #7059FF;
+ outline: 5px solid var(--color-primary);
border-radius: 50%;
}
@@ -486,7 +528,7 @@
.loader {
border: 6px solid #f3f3f3;
border-radius: 50%;
- border-top: 6px solid #3498db;
+ border-top: 6px solid var(--color-primary);
width: 60px;
height: 60px;
position: absolute;
@@ -532,7 +574,7 @@
}
.rouge {
- color: crimson;
+ color: var(--color-error);
}
.legende {
@@ -588,7 +630,7 @@
#forcemodule {
border-radius: 8px;
- background: crimson;
+ background: var(--color-error);
max-width: fit-content;
padding: 5px;
color: white;
diff --git a/app/static/icons/absent.svg b/app/static/icons/absent.svg
old mode 100755
new mode 100644
index 697635cd96..5c6385bf52
--- a/app/static/icons/absent.svg
+++ b/app/static/icons/absent.svg
@@ -1,11 +1,9 @@
-
- - → présence de l'étudiant lors de la période
-
- - → retard de l'étudiant lors de la période
-
- - → absence de l'étudiant lors de la période
-
- - → l'assiduité est justifiée par un
- justificatif valide
- - → l'assiduité est
- justifiée par un justificatif non valide / en attente de validation
-
+ {% include "assiduites/widgets/legende_couleur.j2" %}
+
Vous pouvez justifier rapidement une assiduité en saisisant l'assiduité puis en appuyant sur "Justifier"
Explication de la saisie différée
diff --git a/app/templates/assiduites/pages/signal_assiduites_group.j2 b/app/templates/assiduites/pages/signal_assiduites_group.j2
index 9ce8182938..6e761c3a10 100644
--- a/app/templates/assiduites/pages/signal_assiduites_group.j2
+++ b/app/templates/assiduites/pages/signal_assiduites_group.j2
@@ -70,17 +70,7 @@
Correspondance des couleurs :
- - → présence de l'étudiant lors de la période
-
- - → retard de l'étudiant lors de la période
-
- - → absence de l'étudiant lors de la période
-
- - → l'assiduité est justifiée par un
- justificatif valide
- - → l'assiduité est
- justifiée par un justificatif non valide / en attente de validation
-
+ {% include "assiduites/widgets/legende_couleur.j2" %}
diff --git a/app/templates/assiduites/widgets/alert.j2 b/app/templates/assiduites/widgets/alert.j2
index 4da10c9eac..bf1f0bfec6 100644
--- a/app/templates/assiduites/widgets/alert.j2
+++ b/app/templates/assiduites/widgets/alert.j2
@@ -127,7 +127,7 @@