Update opolka/ScoDoc from ScoDoc/ScoDoc #2

Merged
opolka merged 1272 commits from ScoDoc/ScoDoc:master into master 2024-05-27 09:11:04 +02:00
3 changed files with 10 additions and 7 deletions
Showing only changes of commit fc69bcf70a - Show all commits

View File

@ -385,7 +385,7 @@
let dayAssiduities = assiduities.filter((assiduity) => { let dayAssiduities = assiduities.filter((assiduity) => {
return new Date(date).isBetween( return new Date(date).isBetween(
new Date(assiduity.date_debut).startOf("day"), new Date(assiduity.date_debut).startOf("day"),
new Date(assiduity.date_fin).startOf("day"), new Date(assiduity.date_fin).endOf("day"),
"[]" "[]"
) )
}); });
@ -393,7 +393,7 @@
let dayJustificatifs = justificatifs.filter((justif) => { let dayJustificatifs = justificatifs.filter((justif) => {
return new Date(date).isBetween( return new Date(date).isBetween(
new Date(justif.date_debut).startOf("day"), new Date(justif.date_debut).startOf("day"),
new Date(justif.date_fin).startOf("day"), new Date(justif.date_fin).endOf("day"),
"[]" "[]"
) )
}); });
@ -409,6 +409,7 @@
} }
function generateCalendar(assiduitiesByDay, nonWorkdays = []) { function generateCalendar(assiduitiesByDay, nonWorkdays = []) {
// assiduitiesByDay[month][date] avec date au format m/d/y !!!
const calendar = document.querySelector('.calendrier') const calendar = document.querySelector('.calendrier')
const options = getOptions(); const options = getOptions();
calendar.innerHTML = "" calendar.innerHTML = ""
@ -422,7 +423,9 @@
6: "Sam", 6: "Sam",
0: "Dim", 0: "Dim",
}; };
// XXX formats de données très exotiques !
// XXX assiduitiesByDay["oct."]["10/12/2023"]
// XXX Object { assiduites: [], justificatifs: [] }
Object.keys(assiduitiesByDay).forEach((month) => { Object.keys(assiduitiesByDay).forEach((month) => {
const monthEl = document.createElement('div') const monthEl = document.createElement('div')
monthEl.classList.add("month") monthEl.classList.add("month")

View File

@ -1063,10 +1063,10 @@ def etat_abs_date():
# On récupère l'état de la première assiduité sur la période # On récupère l'état de la première assiduité sur la période
assi = assiduites.filter_by(etudid=etud["etudid"]).first() assi = assiduites.filter_by(etudid=etud["etudid"]).first()
etat = "" etat = ""
if assi is not None and assi.etat != 0: if assi is not None and assi.etat != scu.EtatAssiduite.PRESENT:
etat = scu.EtatAssiduite.inverse().get(assi.etat).name etat = scu.EtatAssiduite.inverse().get(assi.etat).name
# On génère l'objet simplifié # On génère l'objet simplifié (un dict)
etudiant = { etudiant = {
"nom": f"""<a href="{url_for( "nom": f"""<a href="{url_for(
"assiduites.calendrier_etud", "assiduites.calendrier_etud",
@ -1090,7 +1090,7 @@ def etat_abs_date():
return HTMLBuilder( return HTMLBuilder(
header, header,
render_template( render_template(
"assiduites/pages/etat_absence_date.j2", "assiduites/pages/etat_abs_date.j2",
etudiants=etudiants, etudiants=etudiants,
group_title=groups_infos.groups_titles, group_title=groups_infos.groups_titles,
date_debut=date_debut, date_debut=date_debut,