Assiduités : Légendes des pages

This commit is contained in:
iziram 2023-06-30 14:38:56 +02:00
parent 07acadd595
commit cb7ec89484
11 changed files with 152 additions and 18 deletions

View File

@ -836,9 +836,9 @@ def _make_listes_sem(formsemestre: FormSemestre, with_absences=True):
formsemestre.date_debut.strftime("%d/%m/%Y") formsemestre.date_debut.strftime("%d/%m/%Y")
).prev_monday() ).prev_monday()
form_abs_tmpl = """ form_abs_tmpl = """
<td> <!-- <td>
<a class="btn" href="%(url_etat)s"><button>Voir l'assiduité</button></a> <a class="btn" href="%(url_etat)s"><button>Voir l'assiduité</button></a>
</td> </td> -->
<td> <td>
""" """
form_abs_tmpl += f""" form_abs_tmpl += f"""

View File

@ -1,7 +1,7 @@
{% block pageContent %} {% block pageContent %}
<div class="pageContent"> <div class="pageContent">
<h3>Justifier</h3> <h3>Justifier des assiduités</h3>
{% include "assiduites/widgets/tableau_base.j2" %} {% include "assiduites/widgets/tableau_base.j2" %}
<section class="liste"> <section class="liste">
<a class="icon filter" onclick="filter(false)"></a> <a class="icon filter" onclick="filter(false)"></a>
@ -60,8 +60,23 @@
</section> </section>
<section class="legende"> <div class="legende">
</section>
<h3>Gestion des justificatifs</h3>
<p>
Faites
<span style="font-style: italic;">clic droit</span> sur une ligne du tableau pour afficher le menu
contextuel :
<ul>
<li>Détails : Affiche les détails du justificatif sélectionné</li>
<li>Editer : Permet de modifier le justificatif (dates, etat, ajouter/supprimer fichier etc)</li>
<li>Supprimer : Permet de supprimer le justificatif (Action Irréversible)</li>
</ul>
</p>
<p>Cliquer sur l'icone d'entonoir afin de filtrer le tableau des justificatifs</p>
</div>
</div> </div>

View File

@ -16,7 +16,16 @@
</div> </div>
<div class="legende"> <div class="legende">
<h3>Gestion des justificatifs</h3>
<p>
Faites
<span style="font-style: italic;">clic droit</span> sur une ligne du tableau pour afficher le menu contextuel :
<ul>
<li>Détails : Affiche les détails du justificatif sélectionné</li>
<li>Editer : Permet de modifier le justificatif (dates, etat, ajouter/supprimer fichier etc)</li>
<li>Supprimer : Permet de supprimer le justificatif (Action Irréversible)</li>
</ul>
</p>
</div> </div>
<script> <script>

View File

@ -41,7 +41,34 @@
</section> </section>
<div class="legende"> <div class="legende">
<h3>Statistiques</h3>
<p>Un message d'alerte apparait si le nombre d'absence dépasse le seuil (indiqué dans les préférences du
département)</p>
<p>Les statistiques sont effectuées entre les deux dates séléctionnées. Si vous modifier les dates il faudra
appuyer sur le bouton "Actualiser"</p>
<h3>Gestion des justificatifs</h3>
<p>
Faites
<span style="font-style: italic;">clic droit</span> sur une ligne du tableau pour afficher le menu
contextuel :
</p>
<ul>
<li>Détails : Affiche les détails du justificatif sélectionné</li>
<li>Editer : Permet de modifier le justificatif (dates, etat, ajouter/supprimer fichier etc)</li>
<li>Supprimer : Permet de supprimer le justificatif (Action Irréversible)</li>
</ul>
<h3>Gestion des Assiduités</h3>
<p>
Faites
<span style="font-style: italic;">clic droit</span> sur une ligne du tableau pour afficher le menu
contextuel :
</p>
<ul>
<li>Détails : Affiche les détails de l'assiduité sélectionnée</li>
<li>Editer : Permet de modifier l'assiduité (moduleimpl, etat)</li>
<li>Supprimer : Permet de supprimer l'assiduité (Action Irréversible)</li>
</ul>
</div> </div>
</div> </div>

View File

@ -12,6 +12,25 @@
<select name="" id="annee" onchange="setterAnnee(this.value)"> <select name="" id="annee" onchange="setterAnnee(this.value)">
</select> </select>
</div> </div>
<div class="legende">
<h3>Calendrier</h3>
<p>Les jours non travaillés sont affiché en violet</p>
<p>Les jours possèdant une bordure "bleu" sont des jours où des assiduités ont été justifiées par un
justificatif valide</p>
<p>Les jours possèdant une bordure "rouge" sont des jours où des assiduités ont été justifiées par un
justificatif non valide</p>
<p>Le jour sera affiché en : </p>
<ul>
<li>Rouge : S'il y a une assiduité "Absent"</li>
<li>Orange : S'il y a une assiduité "Retard" et pas d'assiduité "Absent"</li>
<li>Vert : S'il y a une assiduité "Present" et pas d'assiduité "Absent" ni "Retard"</li>
<li>Blanc : S'il n'y a pas d'assiduité</li>
</ul>
<p>Vous pouvez passer votre curseur sur les jours colorés afin de voir les assiduités de cette journée.</p>
</div>
</div> </div>

View File

@ -14,7 +14,35 @@
<li id="editOption">Editer</li> <li id="editOption">Editer</li>
<li id="deleteOption">Supprimer</li> <li id="deleteOption">Supprimer</li>
</ul> </ul>
<div class="legende">
<h3>Gestion des justificatifs</h3>
<p>
Faites
<span style="font-style: italic;">clic droit</span> sur une ligne du tableau pour afficher le menu
contextuel :
</p>
<ul>
<li>Détails : Affiche les détails du justificatif sélectionné</li>
<li>Editer : Permet de modifier le justificatif (dates, etat, ajouter/supprimer fichier etc)</li>
<li>Supprimer : Permet de supprimer le justificatif (Action Irréversible)</li>
</ul>
<p>Vous pouvez filtrer le tableau en cliquant sur l'icone d'entonoir sous le titre du tableau.</p>
<h3>Gestion des Assiduités</h3>
<p>
Faites
<span style="font-style: italic;">clic droit</span> sur une ligne du tableau pour afficher le menu
contextuel :
</p>
<ul>
<li>Détails : Affiche les détails de l'assiduité sélectionnée</li>
<li>Editer : Permet de modifier l'assiduité (moduleimpl, etat)</li>
<li>Supprimer : Permet de supprimer l'assiduité (Action Irréversible)</li>
</ul>
<p>Vous pouvez filtrer le tableau en cliquant sur l'icone d'entonoir sous le titre du tableau.</p>
</div>
</div> </div>
{% endblock app_content %} {% endblock app_content %}

View File

@ -1,8 +1,24 @@
<h2>Signalement différé des assiduités {{gr |safe}}</h2> <h2>Signalement différé des assiduités {{gr |safe}}</h2>
<div class="legende">
<h3>Explication de la saisie différée</h3>
<p>Si la colonne n'est pas valide elle sera affichée en rouge, passez votre curseur sur la colonne pour afficher
le message d'erreur</p>
<p>Sélectionner la date de début de la colonne mettra automatiquement la date de fin à la durée d'une séance
(préférence de département)</p>
<p>Modifier le moduleimpl alors que des assiduités sont déjà enregistrées pour la période changera leur
moduleimpl.</p>
<p>Il y a 4 boutons d'assiduités sur la colonne permettant de mettre l'assiduités à tous les étudiants</p>
<p>Le dernier des boutons retire l'assiduité.</p>
<p>Vous pouvez ajouter des colonnes en appuyant sur le bouton + </p>
<p>Vous pouvez supprimer une colonne en appuyant sur la croix qui se situe dans le coin haut droit de la colonne
</p>
</div>
<h3>{{sem | safe }}</h3> <h3>{{sem | safe }}</h3>
{{diff | safe}} {{diff | safe}}
{% include "assiduites/widgets/alert.j2" %} {% include "assiduites/widgets/alert.j2" %}
{% include "assiduites/widgets/prompt.j2" %} {% include "assiduites/widgets/prompt.j2" %}
{% include "assiduites/widgets/conflict.j2" %} {% include "assiduites/widgets/conflict.j2" %}

View File

@ -35,7 +35,7 @@
{{diff | safe}} {{diff | safe}}
<div class="legende"> <div class="legende">
<h3>Explication diverses</h3> <h3>Explication de la timeline</h3>
<p> <p>
Si la période indiquée par la timeline provoque un conflit d'assiduité pour un étudiant sa ligne deviendra Si la période indiquée par la timeline provoque un conflit d'assiduité pour un étudiant sa ligne deviendra
rouge. rouge.
@ -54,6 +54,20 @@
<li>Hachure Rouge -> l'assiduité est justifiée par un justificatif non valide / en attente de validation <li>Hachure Rouge -> l'assiduité est justifiée par un justificatif non valide / en attente de validation
</li> </li>
</ul> </ul>
<p>Vous pouvez justifier rapidement une assiduité en saisisant l'assiduité puis en appuyant sur "Justifier"</p>
<h3>Explication de la saisie différée</h3>
<p>Si la colonne n'est pas valide elle sera affichée en rouge, passez votre curseur sur la colonne pour afficher
le message d'erreur</p>
<p>Sélectionner la date de début de la colonne mettra automatiquement la date de fin à la durée d'une séance
(préférence de département)</p>
<p>Modifier le moduleimpl alors que des assiduités sont déjà enregistrées pour la période changera leur
moduleimpl.</p>
<p>Il y a 4 boutons d'assiduités sur la colonne permettant de mettre l'assiduités à tous les étudiants</p>
<p>Le dernier des boutons retire l'assiduité.</p>
<p>Vous pouvez ajouter des colonnes en appuyant sur le bouton + </p>
<p>Vous pouvez supprimer une colonne en appuyant sur la croix qui se situe dans le coin haut droit de la colonne
</p>
</div> </div>

View File

@ -139,6 +139,14 @@
banners.forEach((ban) => { banners.forEach((ban) => {
ban.style.backgroundColor = color; ban.style.backgroundColor = color;
}) })
alertmodal.addEventListener('click', (e) => {
if (e.target.id == alertmodal.id) {
alertmodal.classList.remove('is-active');
alertmodal.removeEventListener('click', this)
}
})
} }
function closeAlertModal() { function closeAlertModal() {
alertmodal.classList.remove("is-active") alertmodal.classList.remove("is-active")
@ -147,10 +155,6 @@
alertClose.onclick = function () { alertClose.onclick = function () {
closeAlertModal() closeAlertModal()
} }
window.onclick = function (event) {
if (event.target == alertmodal) {
alertmodal.classList.remove('is-active');
}
}
</script> </script>
{% endblock alertmodal %} {% endblock alertmodal %}

View File

@ -174,6 +174,13 @@
banners.forEach((ban) => { banners.forEach((ban) => {
ban.style.backgroundColor = color; ban.style.backgroundColor = color;
}) })
promptModal.addEventListener('click', (e) => {
if (e.target.id == promptModal.id) {
promptModal.classList.remove('is-active');
promptModal.removeEventListener('click', this)
}
})
} }
function promptModalButtonAction(success, cancel) { function promptModalButtonAction(success, cancel) {
@ -204,10 +211,6 @@
promptClose.onclick = function () { promptClose.onclick = function () {
closePromptModal() closePromptModal()
} }
window.onclick = function (event) {
if (event.target == promptModal) {
promptModal.classList.remove('is-active');
}
}
</script> </script>
{% endblock promptModal %} {% endblock promptModal %}

View File

@ -539,7 +539,6 @@ def signal_assiduites_group():
+ [ + [
"css/assiduites.css", "css/assiduites.css",
], ],
no_side_bar=1,
) )
return HTMLBuilder( return HTMLBuilder(