
{% extends '@ajax-layout/layout.twig' %}

{% block body %}
<script>
function affichageBtn(){
    if($('#selection').val()!=''){
        $('#btnAppliquer').show();
    }
}
function sendForm(mode)
{
	activeLoader();
    var url = {{ path(
        'Facture.popup.differenceCondPaie', 
        {'numFact' : numFact, 'action' : action }
    ) | json }};

    var payload = {};
    (new FormData(document.getElementById('form_cond_paiement'))).forEach((value, key) => (payload[key] = value));
    payload.MODE = mode;
    window.action.diffCondPaie_onSuccess = function (data) {
        if (data.status == 'confirmRequired') {
            return popupConfirmSimple(
                data.title,
                data.message,
                url,
                Object.assign(payload,{confirm: 1}),
                window.action.diffCondPaie_onSuccess
            );
        }
        if(data.statut == 'validEnCours'){
            return asyncBackground(validEnCours, data);
        }
        if(data.statut == 'ErreurXml'){
            activePopupErreur(
                {{ path('Ajax.Erreur.popupErreurXml') | json }},
                window.oxaproc.trad['Erreur'],
                data.ErreurXml,
                data.path_next_etat,
                {
                    type: 'facture',
                    numFact: {{ numFact | json }},
                    pathAsync: data.pathAsync
                },
                '',
                {{ path('Facture.GestionFacture.index') | json }}
            );
        }
        if(data.statut == 'O'){
            return redirectJSWithPost(data.path);
        }
        
        $('#message_erreur_popup').show().html(data.erreur);
        desactiveLoader();
    };
	$.ajax({
    	url: url,
        type: 'POST',
	  	dataType: 'JSON',
        data: payload,
        success: window.action.diffCondPaie_onSuccess,
        error: function (data){
            $("#modal-body").html(data.responseText);
        }
    });

}

function validEnCours(requestData, dataRetourWsdl) {
		$.ajax({
			dataType : 'JSON',
			url: '{{ path('Facture.CreationFacture.validationViaAffectation', {'numFact' : numFact }) }}',
			data: {
                dataRetourWsdl: dataRetourWsdl,
            },
			type: 'POST', // la méthode indiquée dans le formulaire (get ou post)
			success: function(data) { // je récupère la réponse du fichier PHP
				if(data.statut == 'redirect'){
					redirectJSWithPost('{{ path('Facture.GestionFacture.index') }}');
				}
				else if(data.statut == 'signataire'){
					activePopupErreur('{{ path('Facture.CreationFacture.choixSignataireFacture', {'numFact' : numFact }) }}', '','');
				}
				else if(data.statut == 'ErreurXml'){
					activePopupErreur(
                        {{ path('Ajax.Erreur.popupErreurXml') | json }},
                        window.oxaproc.trad['Erreur'],
                        data.ErreurXml,
                        data.path_next_etat,
                        {
                            type: 'facture',
                            numFact: {{numFact}},
                            pathAsync: data.pathAsync 
                        },
                        '',
                        {{ path('Facture.GestionFacture.index') | json }}
                    );
				}
			}, 
			error: function (data){
				desactiveLoader();
				$("#modal-content").addClass("modal_small");
				$("#modal-body").html(data.responseText);
				activePopup();
			} 
		}); 
	}
</script>

  <div class="modal-body">
    <div id="message_erreur_popup" class="error displayNone clearfix" ></div>
    <form method="post" name="form_cond_paiement" id="form_cond_paiement" class="form">
    	<input type="hidden" name="numFact" value="{{ numFact }}" />
    	<input type="hidden" name="action" value="{{ action }}" />
        <h4>
            {{- entete.TYPE == 'F' ? 
                "Le système a détecté des conditions et modes de paiement différents de ceux pris en compte sur la facture dans les commandes affectées." | trad :
                "Le système a détecté des conditions et modes de paiement différents de ceux pris en compte sur l'avoir dans les commandes affectées." | trad
            -}}
        </h4>
    	
        <fieldset class="scheduler-border">
            <legend class="scheduler-border">{{ 'Conditions actuelles de la facture' | trad }}</legend>
            <div class="colonne2">
                <div class="informations">
                    <p>
                        <span class="champs_label">{{ 'Condition de paiement' | trad }}</span>
                        <span class="resultat"> 
                            {{ entete.COND_PAIE }} {% if entete.COND_PAIE | trim %}({{ entete.COND_PAIE }}){% endif %}
                        </span>
                    </p>
                    <p>
                        <span class="champs_label">{{ 'Echéance' | trad }}</span>
                        <span class="resultat"> 
                            {{ entete.DTAE_ECH | dateTrad }}
                        </span>
                    </p>
                </div>
            </div>
            <div class="colonne2 last">
                <div class="informations">
                    <p>
                        <span class="champs_label">{{ 'Mode de paiement' | trad }}</span>
                        <span class="resultat"> 
                            {{ entete.MODE_REG }} {% if entete.MODE_REG | trim %}({{ entete.MODE_REG }}){% endif %}
                        </span>
                    </p>
                </div>
            </div>
        </fieldset>
        
        <fieldset class="scheduler-border">
            <legend class="scheduler-border">{{ 'Conditions détectées des commandes' | trad }}</legend>
            <table class="table table-hover">
                <thead>
                    <tr>
                        <th scope="col">{{ 'Condition' | trad }}</th>
                        <th scope="col">{{ 'Mode' | trad }}</th>
                        <th scope="col">{{ 'Echéance' | trad }}</th>
                        <th scope="col" class="align-center" width="40px">{{ 'Sélection' | trad }}</th>
                    </tr>
                </thead>
                <tbody>
                    {% for ligne in lignes %}
                        <tr>
                            <td>{{ ligne.libelleCDP }} {% if ligne.COND_PAIE | trim %}({{ ligne.COND_PAIE }}){% endif %}</td>
                            <td>{{ ligne.libelleMDP }} {% if ligne.MODE_PAIE | trim %}({{ ligne.MODE_PAIE }}){% endif %}</td>
                            <td>{{ ligne.DTAE_ECH | dateTrad }}</td>
                            <td class="align-center">
                                {{ inputAdvance('RADIO', {
                                    'name' : 'selection',
                                    'value' : ligne.MODE_PAIE ~'_'~ ligne.DTAE_ECH,
                        		    'myFunction' : 'affichageBtn',
                        		    'myParams' : '[]',
                        		    'addStyle' : 'margin-left: -20px; margin-top: 4px;',
                                }) }}
                            </td>
                        </tr>
                    {% endfor %}
                </tbody>
            </table>
        </fieldset>

        <div class="modal-footer">
            <button type="button" class="button secondaire" onclick="sendForm('none');">{{ 'Ne rien faire' | trad }}</button>
            <button type="button" class="button principal" id="btnAppliquer" style="display:none;" onclick="sendForm('appliquer');">{{ 'Appliquer' | trad }}</button>
        </div>
    </form>
  </div>
{% endblock %}