diff --git a/app/comp/res_common.py b/app/comp/res_common.py index bbb14ca342..fbd12ae587 100644 --- a/app/comp/res_common.py +++ b/app/comp/res_common.py @@ -749,13 +749,22 @@ class ResultatsSemestre(ResultatsCache): val = "" col_id = f"moy_{modimpl.module.type_abbrv()}_{modimpl.id}_{ue.id}" - val_fmt = val_fmt_html = table.fmt_note(val) + + val_fmt_html = val_fmt = table.fmt_note(val) if modimpl.module.module_type == scu.ModuleType.MALUS: - val_fmt_html = ( - (scu.EMO_RED_TRIANGLE_DOWN + val_fmt) - if val and not np.isnan(val) - else "" - ) + if val and not isinstance(val, str) and not np.isnan(val): + if val >= 0: + val_fmt_html = f"""+{ + val_fmt + }""" + else: + # val_fmt_html = (scu.EMO_RED_TRIANGLE_DOWN + val_fmt) + val_fmt_html = f"""-{ + table.fmt_note(-val) + }""" + else: + val_fmt = val_fmt_html = "" # inscrit à ce malus, mais sans note + cell = row.add_cell( col_id, modimpl.module.code, diff --git a/app/static/css/scodoc.css b/app/static/css/scodoc.css index cb5e0344ef..808031f406 100644 --- a/app/static/css/scodoc.css +++ b/app/static/css/scodoc.css @@ -4143,6 +4143,15 @@ table.table_recap td.col_ues_validables { border-bottom: 8px solid rgb(48, 239, 0); } +.red-arrow-down { + display: inline-block; + width: 0; + height: 0; + border-left: 8px solid transparent; + border-right: 8px solid transparent; + border-top: 8px solid red; +} + table.table_recap td.col_ue_bonus, table.table_recap th.col_ue_bonus { font-size: 80%; @@ -4150,10 +4159,14 @@ table.table_recap th.col_ue_bonus { color: rgb(0, 128, 11); } -table.table_recap td.col_ue_bonus>span.sp2l { +table.table_recap span.sp2l { margin-left: 2px; } +table.table_recap .malus_negatif { + color: green; +} + table.table_recap td.col_ue_bonus { white-space: nowrap; } diff --git a/app/static/js/table_recap.js b/app/static/js/table_recap.js index 62080b4b32..4b45961df8 100644 --- a/app/static/js/table_recap.js +++ b/app/static/js/table_recap.js @@ -201,10 +201,10 @@ $(function () { } }, { - // Elimine les décorations (fleches bonus/malus) pour les exports + // Elimine les "+"" pour les exports targets: ["col_ue_bonus", "col_malus"], render: function (data, type, row) { - return type === 'export' ? data.replace(/.*(\d\d\.\d\d)/, '$1').replace(/0(\d\..*)/, '$1') : data; + return type === 'export' ? data.replace(/.*\+(\d?\d?\.\d\d).*/m, '$1').replace(/0(\d\..*)/, '$1') : data; } }, {