forked from ScoDoc/ScoDoc
180 lines
5.7 KiB
Django/Jinja
180 lines
5.7 KiB
Django/Jinja
{# Ajout d'une "assiduité" sur un étudiant #}
|
|
|
|
{% extends "sco_page.j2" %}
|
|
{% import 'wtf.j2' as wtf %}
|
|
|
|
|
|
{% block styles %}
|
|
{{super()}}
|
|
<link rel="stylesheet" href="{{scu.STATIC_DIR}}/css/assiduites.css">
|
|
|
|
<style>
|
|
.info-row {
|
|
margin-top: 12px;
|
|
}
|
|
|
|
.info-label {
|
|
font-weight: bold;
|
|
}
|
|
#assi_etat{
|
|
list-style: none;
|
|
}
|
|
|
|
.info-etat {
|
|
font-size: 110%;
|
|
font-weight: bold;
|
|
background-color: rgb(253, 234, 210);
|
|
border: 1px solid grey;
|
|
border-radius: 4px;
|
|
padding: 4px;
|
|
}
|
|
|
|
.info-saisie {
|
|
margin-top: 12px;
|
|
margin-bottom: 12px;
|
|
font-style: italic;
|
|
}
|
|
</style>
|
|
{% endblock %}
|
|
|
|
{% block app_content %}
|
|
<div class="tab-content">
|
|
<h2>Détails Assiduité concernant {{etud.html_link_fiche()|safe}}</h2>
|
|
|
|
<div id="informations">
|
|
<div class="info-saisie">
|
|
<span>Saisie par {{objet.saisie_par}} le {{objet.entry_date}}</span>
|
|
</div>
|
|
<div class="info-row">
|
|
<span class="info-label">Période :</span> du <b>{{objet.date_debut}}</b> au <b>{{objet.date_fin}}</b>
|
|
</div>
|
|
<div class="info-row">
|
|
<span class="info-label">Module :</span> {{objet.module}}
|
|
</div>
|
|
<div class="info-row">
|
|
<span class="info-label">État de l'assiduité :</span><span class="info-etat">{{objet.etat}}</span>
|
|
</div>
|
|
<div class="info-row">
|
|
<span class="info-label">Description:</span>
|
|
{% if objet.description != "" and objet.description is not None %}
|
|
<span class="text">{{objet.description}}</span>
|
|
{% else %}
|
|
<span class="text fontred">Pas de description</span>
|
|
{% endif %}
|
|
</span>
|
|
</div>
|
|
{# Affichage des justificatifs si assiduité justifiée #}
|
|
{% if objet.etat != "Présence" %}
|
|
<div class="info-row">
|
|
<span class="info-label">Justifiée: </span>
|
|
{% if objet.justification.est_just %}
|
|
<span class="text">Oui</span>
|
|
{% else %}
|
|
<span class="text fontred">Non</span>
|
|
{% if not objet.justification.justificatifs %}
|
|
<a
|
|
href="{{url_for(
|
|
'assiduites.tableau_assiduite_actions',
|
|
type='assiduite',
|
|
action='justifier',
|
|
obj_id=objet.assiduite_id,
|
|
scodoc_dept=g.scodoc_dept,
|
|
)}}"
|
|
>Justifier l'assiduité</a>
|
|
{% endif %}
|
|
{% endif %}
|
|
</div>
|
|
<div class="info-row">
|
|
{% if not objet.justification.justificatifs %}
|
|
<span class="text info-label">Pas de justificatif associé</span>
|
|
{% else %}
|
|
<span class="text info-label">Justificatifs associés:</span>
|
|
<ul>
|
|
{% for justi in objet.justification.justificatifs %}
|
|
<li>
|
|
<a href="{{url_for('assiduites.edit_justificatif_etud',
|
|
justif_id=justi.justif_id,scodoc_dept=g.scodoc_dept)}}"
|
|
target="_blank" rel="noopener noreferrer" style="{{'color:red;' if justi.etat != 'Valide'}}">Justificatif {{justi.etat}} du {{justi.date_debut}} au
|
|
{{justi.date_fin}}</a>
|
|
</li>
|
|
{% endfor %}
|
|
</ul>
|
|
{% endif %}
|
|
</div>
|
|
{% endif %}
|
|
</div>
|
|
|
|
{% if readonly != True %}
|
|
<h2 style="margin-top: 24px;">Modification de l'assiduité</h2>
|
|
{% for err_msg in form.error_messages %}
|
|
<div class="wtf-error-messages">
|
|
{{ err_msg }}
|
|
</div>
|
|
{% endfor %}
|
|
|
|
<form id="edit-assiduite-form" method="post">
|
|
{{ form.hidden_tag() }}
|
|
{# Type d'évènement #}
|
|
<div class="radio-assi_etat">
|
|
{{ form.assi_etat.label }}
|
|
{{ form.assi_etat() }}
|
|
</div>
|
|
<div class="dates-heures">
|
|
{{ form.date_debut.label }} : {{ form.date_debut }}
|
|
à {{ form.heure_debut }}
|
|
{{ render_field_errors(form, 'date_debut') }}
|
|
{{ render_field_errors(form, 'heure_debut') }}
|
|
<br>
|
|
{{ form.date_fin.label }} : {{ form.date_fin }}
|
|
à {{ form.heure_fin }}
|
|
{{ render_field_errors(form, 'date_fin') }}
|
|
{{ render_field_errors(form, 'heure_fin') }}
|
|
<br>
|
|
{{ form.entry_date.label }} : {{ form.entry_date }} à {{ form.entry_time }}
|
|
|
|
</div>
|
|
<br>
|
|
{# Menu module #}
|
|
<div class="select-module">
|
|
{{ form.modimpl.label }} :
|
|
{{ form.modimpl }}
|
|
{{ render_field_errors(form, 'modimpl') }}
|
|
</div>
|
|
{# Description #}
|
|
<div>
|
|
<div>{{ form.description.label }}</div>
|
|
{{ form.description() }}
|
|
{{ render_field_errors(form, 'description') }}
|
|
</div>
|
|
{# Submit #}
|
|
<div class="submit info-row">
|
|
{{ form.submit }} {{ form.cancel }}
|
|
</div>
|
|
|
|
|
|
</form>
|
|
<div class="info-row">
|
|
<a
|
|
style="color:red;"
|
|
href="{{url_for(
|
|
'assiduites.tableau_assiduite_actions',
|
|
type='assiduite',
|
|
action='supprimer',
|
|
obj_id=objet.assiduite_id,
|
|
scodoc_dept=g.scodoc_dept,
|
|
)}}"
|
|
>Supprimer l'assiduité</a>
|
|
</div>
|
|
{% else %}
|
|
<h3 class="rouge">Vous n'avez pas la permission de modifier cette assiduité</h3>
|
|
{% endif %}
|
|
|
|
</div>
|
|
|
|
{% endblock app_content %}
|
|
|
|
{% block scripts %}
|
|
{{ super() }}
|
|
<script src="{{scu.STATIC_DIR}}/js/etud_info.js"></script>
|
|
{% include "sco_timepicker.j2" %}
|
|
{% endblock scripts %} |