forked from ScoDoc/ScoDoc
Update opolka/ScoDoc from ScoDoc/ScoDoc #2
@ -2,8 +2,10 @@
|
||||
"""Gestion de l'assiduité (assiduités + justificatifs)
|
||||
"""
|
||||
from datetime import datetime
|
||||
|
||||
from flask_login import current_user
|
||||
from flask_sqlalchemy.query import Query
|
||||
from psycopg2.errors import InvalidTextRepresentation # c'est ok
|
||||
from sqlalchemy.exc import DataError
|
||||
|
||||
from app import db, log, g, set_sco_dept
|
||||
@ -285,11 +287,11 @@ class Assiduite(ScoDocModel):
|
||||
else:
|
||||
raise ScoValueError("L'étudiant n'est pas inscrit au module")
|
||||
|
||||
except DataError:
|
||||
except (DataError, InvalidTextRepresentation) as exc:
|
||||
# On arrive ici si moduleimpl_id == "autre" ou moduleimpl_id == <str> non parsé
|
||||
|
||||
if moduleimpl_id != "autre":
|
||||
raise ScoValueError("Module non reconnu")
|
||||
raise ScoValueError("Module non reconnu") from exc
|
||||
|
||||
# Configuration de external_data pour Module Autre
|
||||
# Si self.external_data None alors on créé un dictionnaire {"module": "autre"}
|
||||
|
@ -47,7 +47,8 @@ div.submit > input {
|
||||
|
||||
{% if justif %}
|
||||
<div class="info-saisie">
|
||||
Saisie par {{justif.user.get_prenomnom()}} le {{justif.entry_date.strftime("%d/%m/%Y à %H:%M")}}
|
||||
Saisie par {{justif.user.get_prenomnom() if justif.user else "inconnu"}}
|
||||
le {{justif.entry_date.strftime("%d/%m/%Y à %H:%M") if justif.entry_date else "?"}}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
|
@ -1247,11 +1247,12 @@ def etat_abs_date():
|
||||
# On récupère l'état de la première assiduité sur la période
|
||||
assi = assiduites.filter_by(etudid=etud.id).first()
|
||||
etat = ""
|
||||
if assi is not None and assi.etat != scu.EtatAssiduite.PRESENT:
|
||||
etat = scu.EtatAssiduite.inverse().get(assi.etat).name
|
||||
row = table.row_class(table, etud, etat, assi.est_just)
|
||||
row.add_etud_cols()
|
||||
table.add_row(row)
|
||||
if assi is not None:
|
||||
if assi.etat != scu.EtatAssiduite.PRESENT:
|
||||
etat = scu.EtatAssiduite.inverse().get(assi.etat).name
|
||||
row = table.row_class(table, etud, etat, assi.est_just)
|
||||
row.add_etud_cols()
|
||||
table.add_row(row)
|
||||
|
||||
if fmt.startswith("xls"):
|
||||
return scu.send_file(
|
||||
|
Loading…
Reference in New Issue
Block a user