{% extends 'base.j2' %}

{% block styles %}
    {{super()}}
    <link href="{{scu.STATIC_DIR}}/css/jury_delete_manual.css" rel="stylesheet" type="text/css" />
{% endblock %}

{% block app_content %}


<h2>Décisions de jury enregistrées pour {{etud.html_link_fiche()|safe}}</h2>

<p class="help">
Cette page liste toutes les décisions de jury connus de ScoDoc concernant cet étudiant
et permet de les effacer une par une.
</p>
<p class="help">
<b>Attention</b>, il vous appartient de vérifier la cohérence du résultat !
En principe, <b>l'usage de cette page devrait rester exceptionnel</b>.
Aucune annulation n'est ici possible (vous devrez re-saisir les décisions via les 
pages de saisie de jury habituelles). 
</p>
{% if sem_vals.first() %}
<div class="jury_decisions_list jury_decisions_sems">
    <div>Décisions de semestres</div>
    <ul>
        {% for v in sem_vals %}
            <li>{{v.html()|safe}}
            <form>
            <button 
                data-v_id="{{v.id}}" data-type="validation_formsemestre" data-etudid="{{etud.id}}"
            >effacer</button></form>
            </li>
        {% endfor %}
    </ul>
</div>
{% endif %}

{% if ue_vals.first() %}
<div class="jury_decisions_list jury_decisions_ues">
    <div>Décisions d'UEs</div>
    <ul>
        {% for v in ue_vals %}
            <li>{{v.html(detail=True)|safe}}
                <form class="inline-form">
                    <button data-v_id="{{v.id}}" data-type="validation_ue" data-etudid="{{etud.id}}"
                    >effacer</button>
                </form>
            </li>
        {% endfor %}
    </ul>
</div>
{% endif %}

{% if rcue_vals.first() %}
<div class="jury_decisions_list jury_decisions_rcues">
    <div>Décisions de RCUE (niveaux de compétences)</div>
    <ul>
        {% for v in rcue_vals %}
            <li>{{v.html()|safe}}
            <form>
            <button data-v_id="{{v.id}}" data-type="validation_rcue" data-etudid="{{etud.id}}"
            >effacer</button>
            </form>
            </li>
        {% endfor %}
    </ul>
</div>
{% endif %}

{% if annee_but_vals.first() %}
<div class="jury_decisions_list jury_decisions_annees_but">
    <div>Décisions d'années BUT</div>
    <ul>
        {% for v in annee_but_vals %}
            <li>{{v.html()|safe}}
            <form>
            <button data-v_id="{{v.id}}" data-type="validation_annee_but" data-etudid="{{etud.id}}"
            >effacer</button>
            </form>
            </li>
        {% endfor %}
    </ul>
</div>
{% endif %}

{% if autorisations.first() %}
<div class="jury_decisions_list jury_decisions_autorisation_inscription">
    <div>Autorisations d'inscriptions (passages)</div>
    <ul>
        {% for v in autorisations %}
            <li>{{v.html()|safe}}
            <form>
            <button data-v_id="{{v.id}}" data-type="autorisation_inscription" data-etudid="{{etud.id}}"
            >effacer</button>
            </form>
            </li>
        {% endfor %}
    </ul>
</div>
{% endif %}

{% if not(
    sem_vals.first() or ue_vals.first() or rcue_vals.first() 
    or annee_but_vals.first() or autorisations.first()) 
%}
<div>
    <p class="fontred">aucune décision enregistrée</p>
</div>
{% endif %}

<div>
    <p>retour à la fiche de {{etud.html_link_fiche()|safe}}
    </p>
</div>

{% endblock %}


{% block scripts %}
{{super()}}

<script>
document.addEventListener('DOMContentLoaded', () => {
  const buttons = document.querySelectorAll('.jury_decisions_list button');
  
  buttons.forEach(button => {
    button.addEventListener('click', (event) => {
        // Handle button click event here
        event.preventDefault();
        const etudid = event.target.dataset.etudid;
        const v_id = event.target.dataset.v_id;
        const validation_type = event.target.dataset.type;
        if (confirm("Supprimer cette validation ?")) {
            fetch(`${SCO_URL}/../api/etudiant/${etudid}/jury/${validation_type}/${v_id}/delete`,
                {
                    method: "POST",
                }).then(response => {                    
                    // Handle the response
                    if (response.ok) {
                        location.reload();
                    } else {
                        throw new Error('Request failed');
                    }
                });
        }
    });
  });
});
</script>
{% endblock %}