forked from ScoDoc/ScoDoc
essai de masque colonne par javascript
This commit is contained in:
parent
c49aecaa2f
commit
24a4652543
|
@ -136,13 +136,15 @@ def formsemestre_recapcomplet(
|
|||
)
|
||||
if not parcours.UE_IS_MODULE:
|
||||
H.append(
|
||||
"""<input type="checkbox" name="hidemodules" value="1" onchange="document.f.submit()" """
|
||||
# """<input type="checkbox" name="hidemodules" value="1" onchange="document.f.submit()" """
|
||||
"""<input type="checkbox" name="hidebac" value="1" onchange="toggle_modules(! $(this).is(':checked'))" """
|
||||
)
|
||||
if hidemodules:
|
||||
H.append("checked")
|
||||
H.append(""" >cacher les modules</input>""")
|
||||
H.append(
|
||||
"""<input type="checkbox" name="hidebac" value="1" onchange="document.f.submit()" """
|
||||
# """<input type="checkbox" name="hidebac" value="1" onchange="document.f.submit()" """
|
||||
"""<input type="checkbox" name="hidebac" value="1" onchange="toggle_bac(! $(this).is(':checked'))" """
|
||||
)
|
||||
if hidebac:
|
||||
H.append("checked")
|
||||
|
@ -259,6 +261,8 @@ def make_formsemestre_recapcomplet(
|
|||
trié par moyenne générale décroissante.
|
||||
"""
|
||||
civ_nom_prenom = False # 3 colonnes différentes ou une seule avec prénom abrégé ?
|
||||
col_idx_modules = [] # liste des indices des colonnes modules (pour javascript)
|
||||
col_idx_bac = [] # liste des indices de colonne pour le bac
|
||||
if format == "xml":
|
||||
return _formsemestre_recapcomplet_xml(
|
||||
formsemestre_id,
|
||||
|
@ -347,6 +351,7 @@ def make_formsemestre_recapcomplet(
|
|||
# mais laisse col. vide si modules affichés (pour séparer les UE)
|
||||
if not hidemodules:
|
||||
h.append("")
|
||||
col_idx_modules.append(str(len(h)))
|
||||
pass
|
||||
|
||||
if not hidemodules and not ue["is_external"]:
|
||||
|
@ -354,6 +359,7 @@ def make_formsemestre_recapcomplet(
|
|||
if modimpl["module"]["ue_id"] == ue["ue_id"]:
|
||||
code = modimpl["module"]["code"]
|
||||
h.append(code)
|
||||
col_idx_modules.append(str(len(h)))
|
||||
cod2mod[code] = modimpl # pour fabriquer le lien
|
||||
if format == "xlsall":
|
||||
evals = nt.get_mod_evaluation_etat_list(
|
||||
|
@ -362,6 +368,9 @@ def make_formsemestre_recapcomplet(
|
|||
mod_evals[modimpl["moduleimpl_id"]] = evals
|
||||
h += _list_notes_evals_titles(code, evals)
|
||||
|
||||
col_idx_bac += [
|
||||
str(len(h) + 1 + i) for i, _ in enumerate(admission_extra_cols)
|
||||
] # computes col idx of admissions cols
|
||||
h += admission_extra_cols
|
||||
h += ["code_nip", "etudid"]
|
||||
F.append(h)
|
||||
|
@ -575,7 +584,17 @@ def make_formsemestre_recapcomplet(
|
|||
# Table format HTML
|
||||
H = [
|
||||
"""
|
||||
<script type="text/javascript">
|
||||
<script type="text/javascript">""",
|
||||
# """
|
||||
# $(document).ready(function() {
|
||||
# $('#recapcomplet').dataTable({
|
||||
# fixedHeader: {
|
||||
# header: true,
|
||||
# footer: true
|
||||
# });
|
||||
# });
|
||||
# """,
|
||||
"""
|
||||
function va_saisir(formsemestre_id, etudid) {
|
||||
loc = 'formsemestre_validation_etud_form?formsemestre_id='+formsemestre_id+'&etudid='+etudid;
|
||||
if (SORT_COLUMN_INDEX) {
|
||||
|
@ -584,36 +603,54 @@ def make_formsemestre_recapcomplet(
|
|||
loc += '#etudid' + etudid;
|
||||
document.location=loc;
|
||||
}
|
||||
</script>
|
||||
<table class="notes_recapcomplet sortable" id="recapcomplet">
|
||||
"""
|
||||
</script> """,
|
||||
"""<table class="notes_recapcomplet sortable display compact" id="recapcomplet">
|
||||
""",
|
||||
]
|
||||
if sortcol: # sort table using JS sorttable
|
||||
H.append(
|
||||
"""<script type="text/javascript">
|
||||
function resort_recap() {
|
||||
var clid = %d;
|
||||
// element <a place par sorttable (ligne de titre)
|
||||
lnk = document.getElementById("recap_trtit").childNodes[clid].childNodes[0];
|
||||
ts_resortTable(lnk,clid);
|
||||
// Scroll window:
|
||||
eid = document.location.hash;
|
||||
if (eid) {
|
||||
var eid = eid.substring(1); // remove #
|
||||
var e = document.getElementById(eid);
|
||||
if (e) {
|
||||
var y = e.offsetTop + e.offsetParent.offsetTop;
|
||||
window.scrollTo(0,y);
|
||||
}
|
||||
|
||||
var clid = %d;
|
||||
// element <a place par sorttable (ligne de titre)
|
||||
lnk = document.getElementById("recap_trtit").childNodes[clid].childNodes[0];
|
||||
ts_resortTable(lnk,clid);
|
||||
// Scroll window:
|
||||
eid = document.location.hash;
|
||||
if (eid) {
|
||||
var eid = eid.substring(1); // remove #
|
||||
var e = document.getElementById(eid);
|
||||
if (e) {
|
||||
var y = e.offsetTop + e.offsetParent.offsetTop;
|
||||
window.scrollTo(0,y);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
addEvent(window, "load", resort_recap);
|
||||
addEvent(window, "load", resort_recap);
|
||||
</script>
|
||||
"""
|
||||
% (int(sortcol))
|
||||
% int(sortcol),
|
||||
)
|
||||
cells = '<tr class="recap_row_tit sortbottom" id="recap_trtit">'
|
||||
H.append(
|
||||
"""<script type="text/javascript">
|
||||
function toggle_modules(show) {
|
||||
toggle_cols(%s, show);
|
||||
}
|
||||
function toggle_bac(show) {
|
||||
toggle_cols(%s, show);
|
||||
}
|
||||
function toggle_cols(columns, show) {
|
||||
style = show ? 'table-cell' :'none';
|
||||
columns.forEach(n => {
|
||||
$('#recapcomplet tr th:nth-child(' + n + ')').css('display', style);
|
||||
$('#recapcomplet tr td:nth-child(' + n + ')').css('display', style);
|
||||
})
|
||||
}
|
||||
</script>"""
|
||||
% ("[" + ",".join(col_idx_modules) + "]", "[" + ",".join(col_idx_bac) + "]")
|
||||
)
|
||||
|
||||
cells = '<thead><tr class="recap_row_tit sortbottom" id="recap_trtit">'
|
||||
for i in range(len(F[0]) - 2):
|
||||
if i in ue_index:
|
||||
cls = "recap_tit_ue"
|
||||
|
@ -636,14 +673,15 @@ def make_formsemestre_recapcomplet(
|
|||
cells += '<td class="%s">%s</td>' % (cls, F[0][i])
|
||||
if modejury:
|
||||
cells += '<td class="recap_tit">Décision</td>'
|
||||
ligne_titres = cells + "</tr>"
|
||||
H.append(ligne_titres) # titres
|
||||
ligne_titres = cells + "</tr></thead>"
|
||||
# H.append(ligne_titres) # titres
|
||||
if disable_etudlink:
|
||||
etudlink = "%(name)s"
|
||||
else:
|
||||
etudlink = '<a href="formsemestre_bulletinetud?formsemestre_id=%(formsemestre_id)s&etudid=%(etudid)s&version=selectedevals" id="%(etudid)s" class="etudinfo">%(name)s</a>'
|
||||
ir = 0
|
||||
nblines = len(F) - 1
|
||||
H.append("<tbody>")
|
||||
for l in F[1:]:
|
||||
etudid = l[-1]
|
||||
if ir >= nblines - 6:
|
||||
|
@ -744,7 +782,7 @@ def make_formsemestre_recapcomplet(
|
|||
)
|
||||
cells += "</td>"
|
||||
H.append(cells + "</tr>")
|
||||
|
||||
H.append("<tbody>")
|
||||
H.append(ligne_titres)
|
||||
H.append("</table>")
|
||||
|
||||
|
|
Loading…
Reference in New Issue