Skip to content
Snippets Groups Projects
Commit 14085404 authored by Emmanuel Viennet's avatar Emmanuel Viennet
Browse files

Commentaires code et restreint compte ScolarNews / département

parent 8286a87c
No related branches found
No related tags found
No related merge requests found
......@@ -94,16 +94,17 @@ class ScolarNews(ScoDocModel):
date = db.Column(
db.DateTime(timezone=True), server_default=db.func.now(), index=True
)
authenticated_user = db.Column(
db.Text, index=True
) # user_name login, sans contrainte
# type in 'INSCR', 'NOTES', 'FORM', 'SEM', 'MISC'
"date de l'opération"
authenticated_user = db.Column(db.Text, index=True)
"user_name login, sans contrainte car peut avoir été supprimé depuis"
type = db.Column(db.String(SHORT_STR_LEN), index=True)
object = db.Column(
db.Integer, index=True
) # moduleimpl_id, formation_id, formsemestre_id
"type d'opération: 'ETUD', 'INSCR', 'NOTES', 'FORM', 'SEM', 'MISC'"
object = db.Column(db.Integer, index=True)
"oid de l'objet concerné, dépend du type: etudid, moduleimpl_id, formation_id, formsemestre_id"
text = db.Column(db.Text)
"texte, html possible, pour affichage"
url = db.Column(db.Text)
"url vers la description de l'objet concerné (pas forcément encore valide!)"
def __repr__(self):
return (
......@@ -116,7 +117,8 @@ class ScolarNews(ScoDocModel):
user = User.query.filter_by(user_name=self.authenticated_user).first()
sem_text = (
f"""(<a href="{url_for('notes.formsemestre_status', scodoc_dept=g.scodoc_dept, formsemestre_id=formsemestre.id)
f"""(<a href="{url_for('notes.formsemestre_status',
scodoc_dept=g.scodoc_dept, formsemestre_id=formsemestre.id)
}">{formsemestre.sem_modalite()}</a>)"""
if formsemestre
else ""
......@@ -195,6 +197,14 @@ class ScolarNews(ScoDocModel):
log(f"news: {news}")
news.notify_by_mail()
# WIP
# @classmethod
# def log_action(cls, typ, obj=None, text="", dept_id=None):
# "Log interne, sans envoi de mail"
# return cls.add(
# typ, obj, text, url=None, max_frequency=0, dept_id=dept_id, internal=True
# )
def get_news_formsemestre(self) -> "FormSemestre":
"""formsemestre concerné par la nouvelle
None si inexistant
......@@ -276,7 +286,8 @@ class ScolarNews(ScoDocModel):
return ""
dept_news_url = url_for("scolar.dept_news", scodoc_dept=g.scodoc_dept)
H = [
f"""<div class="scobox news" desktop="true"><div class="scobox-title" desktop="true"><a href="{
f"""<div class="scobox news" desktop="true">
<div class="scobox-title" desktop="true"><a href="{
dept_news_url
}">Dernières opérations</a>
</div><ul class="newslist">"""
......
......@@ -385,12 +385,12 @@ def dept_news():
@scodoc
@permission_required(Permission.ScoView)
def dept_news_json():
"Table des news du département"
"Table des news du département: requête pour pagination de la DataTable"
start = request.args.get("start", type=int)
length = request.args.get("length", type=int)
log(f"dept_news_json( start={start}, length={length})")
query = ScolarNews.query.filter_by(dept_id=g.scodoc_dept_id)
query = query_dept = ScolarNews.query.filter_by(dept_id=g.scodoc_dept_id)
# search
search = request.args.get("search[value]")
if search:
......@@ -427,7 +427,7 @@ def dept_news_json():
return {
"data": data,
"recordsFiltered": total_filtered,
"recordsTotal": ScolarNews.query.count(),
"recordsTotal": query_dept.count(), # nb d'events dans le dept
"draw": request.args.get("draw", type=int),
}
......
......@@ -3,7 +3,7 @@
"Infos sur version ScoDoc"
SCOVERSION = "9.7.68"
SCOVERSION = "9.7.69"
SCONAME = "ScoDoc"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment