{% extends 'layout.twig' %}

{% block body %}

    <div class="clearfix titre_div contenu"  id="Commande">
		<h1>{{ 'Commandes' | trad }}</h1>
		{{ ariane() }}

        <h2>
            {{ 'Modification commande' | trad  }} {{ idCommande }} {% if commande.AVENANT %} - {{ commande.AVENANT }}{% endif %}:
        </h2>
    	<div class="tab-content">
            {% include '@Commande/Creation/blockEntete.twig' %}

            <form action="" method="post" name="editImput" id="editImput">

                <div class="clearfix" style="margin-top:10px; margin-bottom:10px;">
                    <button type="button" onclick="updateMass();" style="margin-right:0px;" class="button principal btn_right">{{ 'Modifier' | trad }}</button>
                    <a href="{{ path('Commande.ModificationCommande.index', {idCommande:idCommande}) }}" class="button secondaire btn_right">{{ 'Retour' | trad }}</a>
                </div>

<script>
    function updateMass(confirm)
    {
        let form = document.getElementById('editImput');
        let formData = new FormData(form);
        if ( confirm ) {
            formData.append('confirm','1');
        }

        activeLoader();
        $.ajax({
            url: {{ path('Commande.ModificationCommande.ajaxEditMassImputation', {idCommande: idCommande}) | json }},
            type: 'POST',
            data: formData,
            contentType: false,
            processData: false,
            success: function (data) {
                location.reload();
            },
            error: function (xhr){
                desactiveLoader();

                // Case: require confirmation
                if (xhr.getResponseHeader('Content-Type') == 'application/json') {
                    let response = JSON.parse(xhr.responseText);

                    if (response.type != 'confirm') throw 'Invalid type';

                    activePopup(
                        {{ 'Confirmez-vous la mise à jour de la commande ?' | trad | json }},
                        response.popupHtml,
                        'modal_small'
                    );
                    document.querySelector('[data-popupwarning-cancel]')
                        .addEventListener('click', function () {
                            desactivePopup();
                        });
                    document.querySelector('[data-popupwarning-continue]')
                        .addEventListener('click', function () {
                            // Resend form with confirm
                            updateMass(true);
                            desactivePopup();
                        });
                    return;
                }

                // Simple error
                activePopupError(
                    {{ 'Erreur lors de la validation du formulaire' | trad | json }},
                    xhr.responseText,
                    "modal_small"
                );
            }
        });
    };
</script>

                <div class="clearfix bg_form padding_form border_form">
                    <div class="clearfix">
                        <div class="colonne2">
                            {% if param.SI_ACTIF and canUpdateSectImp %}
                                <div class="row">
                                    <input type="hidden" name="MODIF_SECTIMP" id="MODIF_SECTIMP" value='0' />
                                    {{ inputAdvance('ZOOMADVANCE', {
                                        'titre' : 'Section d\'imputation' | trad,
                                        'name' : 'SECTIMP_ENTETE',
                                        'pahtZoom' : path('Ajax.liste.si'),
                                        'paramZoom' : "{'si_valide': 'on', 'CODE_STE' : '"~ commande.CODE_STE ~"'}",
                                        'entity' : 'Sectimpu',
                                        'widthPopup' : 'modal_large',
                                        'titleZoom' : 'Liste des sections d\'imputation' | trad,
                                        'pathConvert' : path('Ajax.outil.convertLibelle'),
                                        'convertLibelle' : 'convertLibelleGlobal',
                                        'pathValidator' : path('Ajax.validator.sectionImputation'),
                                        'paramsValidator' : "{'nomChamp' : '"~ 'Section d\'imputation' | trad |e('js')|raw ~"', 'null' : true, 'filter_egal_CODE_STE' : '"~ commande.CODE_STE ~"'}",
                                        'value' : commande.SECTIMP,
                                        'iconeLabel' : 'Inactif2.png',
                                        'idIconeLabel' : 'icone_SECTIMP'
                                    }) }}								
                                </div>
                            {% endif %}
                            {% if param.CDC_ACTIF and canUpdateCodeComp %}
                                <div class="row">
                                    <input type="hidden" name="MODIF_CODE_COMP" id="MODIF_CODE_COMP" value='0' />
                                    {{ inputAdvance('ZOOMADVANCE', {
                                        'titre' : 'Code complémentaire' | trad,
                                        'name' : 'CODE_COMP_ENTETE',
                                        'pahtZoom' : path('Ajax.liste.cdc'),
                                        'paramZoom': {
                                            filter_egal_CODE_STE: commande.CODE_STE,
                                            cdc_valide: 1
                                        } | json_encode,
                                        'entity' : 'Codecomp',
                                        'widthPopup' : 'modal_large',
                                        'titleZoom' : 'Liste des codes complémentaires' | trad,
                                        'pathConvert' : path('Ajax.outil.convertLibelle'),
                                        'convertLibelle' : 'convertLibelleGlobal',
                                        'pathValidator' : path('Ajax.validator.codeComplementaire'),
                                        'paramsValidator' : "{'nomChamp' : '"~ 'Code complémentaire' | trad |e('js')|raw ~"', 'null' : true, 'filter_egal_CODE_STE' : '"~ commande.CODE_STE ~"'}",
                                        'value' : commande.CODECOMP,
                                        'option' : param.LOCK_CDC? 'readOnly':'',
                                        'iconeLabel' : 'Inactif2.png',
                                        'idIconeLabel' : 'icone_CODE_COMP'
                                    }) }}
                                </div>
                            {% endif %}
                        </div>
                        <div class="colonne2 last">
                            {% if param.SI_ACTIF and canUpdateSectImp %}
                                <div class="row">
                                    {{ inputAdvance('TREEVIEW', {
                                        'titre' : 'Code gestion' | trad,
                                        'name' : 'CODGES_ENTETE',
                                        'pathTreeview' : path('Ajax.Treeview.codeGestion'),
                                        'paramsTreeview' : "{'CODE_SI': $('#input_SECTIMP_ENTETE').val(), 'inputCG' : 'CODGES_ENTETE', 'CODE_STE': '"~ commande.CODE_STE ~"', 'affichageLibelle' : 1}",
                                        'titleTreeview' : 'Code gestion' | trad,
                                        'value' : commande.CODGES,
                                        'convertLibelle' : 'cgTrad',
                                        'pathValidator' : path('Ajax.validator.codeGestion'),
                                        'paramsValidator' : "{'nomChamp' : '"~ 'Code gestion' | trad |e('js')|raw ~"', 'null' : true, 'CODE_SI': $('#input_SECTIMP_ENTETE').val(), 'CODE_STE': '"~ commande.CODE_STE ~"'}",
                                        '_pathConvert' : path('Ajax.outil.convertLibelle'),
                                        'entity' : 'Codgest',
                                        'codeBDD' : 'CODE_GES',
                                        'libelleBDD' : 'CODE_AFF',
                                        'option' : param.MODIF_CODGES ? '' : 'readOnly',
                                        'siLink': 'input_SECTIMP_ENTETE',
                                        'codeSte' : commande.CODE_STE,

                                        'myFunction' : 'convertLibelleCodeGestion',
                                        'myParams' : '["'~path('Ajax.outil.convertLibelleCodeGestion')~'", this, "CODE_GES", "CODE_AFF", "input_CODGES_ENTETE", "text_CODGES_ENTETE", null, "1", "", "input_si", 1, ]',
                                    }) }}   
                                </div>
                            {% endif %}
                            {% if param.SCA_ACTIF and canUpdateSousComptAna %}
                                <div class="row">
                                    <input type="hidden" name="MODIF_SSCPTEANA" id="MODIF_SSCPTEANA" value='0' />
                                    {{ inputAdvance('ZOOMADVANCE', {
                                        'titre' : 'Sous compte d\'analyse' | trad,
                                        'name' : 'SSCPTEANA_ENTETE',
                                        'pahtZoom' : path('Ajax.liste.sca'),
                                        'paramZoom' : "{'CODE_STE' : '"~ commande.CODE_STE ~"','sca_valide' :1 }",
                                        'entity' : 'Sscptana',
                                        'titleZoom' : 'Liste des sous comptes d\'analyse' | trad,
                                        'pathConvert' : path('Ajax.outil.convertLibelle'),
                                        'convertLibelle' : 'convertLibelleGlobal',
                                        'pathValidator' : path('Ajax.validator.sousCompteAnalyse'),
                                        'paramsValidator' : "{'nomChamp' : '"~ 'Sous compte d\'analyse' | trad |e('js')|raw ~"', 'null' : true, 'CODE_STE' : '"~ commande.CODE_STE ~"'}",
                                        'value' : commande.SSCPTEANA,
                                        'iconeLabel' : 'Inactif2.png',
                                        'idIconeLabel' : 'icone_SSCPTEANA'
                                    }) }}
                                </div>	
                            {% endif %}		
                        </div>
                    </div>
                    <div class="clearfix">
                        <div class="colonne2">
                            <div class="row">
                                <input type="hidden" name="MODIF_ACC_CADRE" id="MODIF_ACC_CADRE" value='0' />
                                {{ inputAdvance('ZOOMADVANCE', {
                                    'titre' : 'Accord-cadre' | trad,
                                    'name' : 'ACC_CADRE_ENTETE',
                                    'pahtZoom' : path('Ajax.liste.accadre'),
                                    'paramZoom' : "{ }",
                                    'entity' : 'acccadre',
                                    'titleZoom' : 'Liste des accords-cadres' | trad,
                                    'pathConvert' : path('Ajax.outil.convertLibelle'),
                                    'convertLibelle' : 'convertLibelleGlobal',
                                    'pathValidator' : path('Ajax.validator.zoom'),
                                    'paramsValidator' : "{'entity' : 'Acccadre', 'nomChamp' : '"~ 'Accord-cadre' | trad |e('js')|raw ~"', 'null' : true}",
                                    'value' : commande.ACC_CADRE,
                                    'iconeLabel' : 'Inactif2.png',
                                    'idIconeLabel' : 'icone_ACC_CADRE'
                                }) }}
                            </div>	
                            <div class="row">
                                <input type="hidden" name="MODIF_DTELIVCON" id="MODIF_DTELIVCON" value='0' />
                                {{ inputAdvance('DATE', {
                                    titre: 'Date de livraison' | trad,
                                    name: 'DTELIVCON_ENTETE',
                                    value: commande.DTE_PERIO |dateTrad,
                                    iconeLabel: 'Inactif2.png',
                                    idIconeLabel: 'icone_DTELIVCON'
                                }) }}
                            </div>
                            <div class="row">
                                <input type="hidden" name="MODIF_MASQ_DS" id="MODIF_MASQ_DS" value='0' />
                                {{ inputAdvance('SWITCH', {
                                    'titre' : 'Masquer désign. sommaire' | trad,
                                    'name' : 'MASQ_DS_ENTETE',
                                    'iconeLabel' : 'Inactif2.png',
                                    'idIconeLabel' : 'icone_MASQ_DS'
                                }) }}
                            </div>
                            <div class="row">
                                <input type="hidden" name="MODIF_MASQ_QTE" id="MODIF_MASQ_QTE" value='0' />
                                {{ inputAdvance('SWITCH', {
                                    'titre' : 'Masquer quantité' | trad,
                                    'name' : 'MASQ_QTE_ENTETE',
                                    'iconeLabel' : 'Inactif2.png',
                                    'idIconeLabel' : 'icone_MASQ_QTE'
                                }) }}
                            </div>
                        </div>
                        <div class="colonne2 last">
                            <div class="row">
                                <input type="hidden" name="MODIF_SITE_STK" id="MODIF_SITE_STK" value='0' />
                                {{ inputAdvance('ZOOMADVANCE', {
                                    'titre' : 'Site de stock' | trad,
                                    'name' : 'SITE_STK_ENTETE',
                                    'pahtZoom' : path('Ajax.liste.sitesto'),
                                    'paramZoom' : "{ }",
                                    'entity' : 'SsItesto',
                                    'titleZoom' : 'Liste des sites de stock' | trad,
                                    'pathConvert' : path('Ajax.outil.convertLibelle'),
                                    'convertLibelle' : 'convertLibelleGlobal',
                                    'pathValidator' : path('Ajax.validator.zoom'),
                                    'paramsValidator' : "{'entity' : 'SsItesto ', 'nomChamp' : '"~ 'Site de stock' | trad |e('js')|raw ~"', 'null' : true}",
                                    'value' : commande.SITE_STK,
                                    'iconeLabel' : 'Inactif2.png',
                                    'idIconeLabel' : 'icone_SITE_STK'
                                }) }}
                            </div>	
                            <div class="row">
                                <input type="hidden" name="MODIF_TYPDATE" id="MODIF_TYPDATE" value='0' />
                                {{ inputAdvance('SELECT', {
                                    'titre' : 'Type date' | trad,
                                    'name' : 'TYPDATE_ENTETE',
                                    'listeValue' : tabTypeDate,
                                    'value' : commande.TYPDATE,
                                    'iconeLabel' : 'Inactif2.png',
                                    'idIconeLabel' : 'icone_TYPDATE'
                                }) }}
                            </div>
                            <div class="row">
                                <input type="hidden" name="MODIF_MASQ_UNI" id="MODIF_MASQ_UNI" value='0' />
                                {{ inputAdvance('SWITCH', {
                                    'titre' : 'Masquer unité' | trad,
                                    'name' : 'MASQ_UNI_ENTETE',
                                    'iconeLabel' : 'Inactif2.png',
                                    'idIconeLabel' : 'icone_MASQ_UNI'
                                }) }}
                            </div>
                            <div class="row">
                                <input type="hidden" name="MODIF_MASQ_PU" id="MODIF_MASQ_PU" value='0' />
                                {{ inputAdvance('SWITCH', {
                                    'titre' : 'Masquer Prix unitaire' | trad,
                                    'name' : 'MASQ_PU_ENTETE',
                                    'iconeLabel' : 'Inactif2.png',
                                    'idIconeLabel' : 'icone_MASQ_PU'
                                }) }}
                            </div>	
                        </div>
                    </div>
                </div>
                <script>
                    $('[id^=icone_]').click(function(){
                        id = $(this).attr('id').replace("icone_", "");
                        if($('#MODIF_'+id).val()==0){
                            $(this).find('img').attr({'src' : '{{ baseUrl('IconeV2/Misc/Actif2.png') }}'})
                            $('#MODIF_'+id).val(1)
                        }
                        else{
                            $(this).find('img').attr({'src' : '{{ baseUrl('IconeV2/Misc/Inactif2.png') }}'})
                            $('#MODIF_'+id).val(0)
                        }
                    });
                </script>

                <div class="clearfix" style="margin-top:15px;">

                    <table class="table table-hover tableForm">
                        <thead class="thead-dark">
                            <tr>
                                <th scope="col" >{{ 'Ligne' | trad }}</th>
                                <th scope="col">{{ 'Article' | trad }}</th>
                                {% if param.SI_ACTIF %}
                                    <th scope="col">{{ 'Section d\'imputation' | trad }}</th>
                                    <th scope="col">{{ 'Code gestion' | trad }}</th>
                                {% endif %}
                                {% if param.CDC_ACTIF %}
                                    <th scope="col">{{ 'Code complémentaire' | trad }}</th>
                                {% endif %}
                                {% if param.SCA_ACTIF %}
                                    <th scope="col">{{ 'Sous compte d\'analyse' | trad }}</th>
                                {% endif %}
                                <th scope="col">{{ 'Accord-cadre' | trad }}</th>
                                <th scope="col">{{ 'Date de livraison' | trad }}</th>

                                <th scope="col">{{ 'Pré.' | trad }}</th>
                                <th scope="col">{{ 'Site stock' | trad }}</th>

                                <th scope="col" class="align-center white-tooltip" width="4%">
                                    <span class="infos_tooltip left">
                                        {{ 'Tout sélectionner' | trad }}
                                    </span>
                                    <input type="checkbox"
                                        class="form-control checkbox"
                                        data-checkall-input="chackAll"
                                    />
                                </th>
                            </tr>
                        </thead>
                        <tbody>
                            {% for ligne in ligneCde %}
                                <tr id="ligne{{ligne.NO_PO}}">
                                    <td class="loupe">{{ ligne.NO_PO }}</td>
                                    <td>{{ ligne.DES_SOMM }} {% if ligne.CODE_ART %}{{ ligne.CODE_ART }}{% endif %}</td>
                                    {% if param.SI_ACTIF %}
                                        <td>{% if ligne.SECTIMP |trim %} {{ ligne.LIB_SI }} ({{ ligne.SECTIMP }}){% endif %}</td>
                                        <td>{% if ligne.CODGES |trim %} {{ ligne.LIBGES }} ({{ ligne.CODGES }}){% endif %}</td>
                                    {% endif %}
                                    {% if param.CDC_ACTIF %}
                                        <td>{% if ligne.CODE_COMP |trim %} {{ ligne.LIB_CC }} ({{ ligne.CODE_COMP }}){% endif %}</td>
                                    {% endif %}
                                    {% if param.SCA_ACTIF %}
                                        <td>{% if ligne.SSCPTEANA |trim %} {{ ligne.LIB_SCA }} ({{ ligne.SSCPTEANA }}){% endif %}</td>
                                    {% endif %}
                                    <td>{{ ligne.ACCORCA }}</td>
                                    <td>{{ ligne.DTELIVCON |dateTrad }}</td>
                                    <td>{{ tabTypeDate[ligne.TYPDATE] }}</td>
                                    <td>{{ ligne.SITE_STK }}</td>
                                    <td class="align-center">
                                        <input type="checkbox" name="ligne_{{ ligne.NO_PO }}" 
                                            class="form-control checkbox"
                                            data-checkall="chackAll" 
                                        />
                                    </td>
                                </tr>
                                {# <tr id="ligne{{ligne.NO_PO}}detail" class="detail_ligne hide_detail">
                                    <td colspan="11">
                                        <div class="colonne4">
                                            <div class="informations">
                                                <p>
                                                    <span class="champs_label">{{  'Masquer désign. sommaire' | trad }}</span>
                                                    <span class="resultat">{{ ligne.MASQ_DS | boolTrad }}</span>
                                                </p>
                                            </div>
                                        </div>
                                        <div class="colonne4">
                                            <div class="informations">
                                                <p>
                                                    <span class="champs_label">{{ 'Masquer unité' | trad }}</span>
                                                    <span class="resultat">{{ ligne.MASQ_UNI | boolTrad }}</span>
                                                </p>
                                            </div>
                                        </div>
                                        <div class="colonne4">
                                            <div class="informations">
                                                <p>
                                                    <span class="champs_label">{{ 'Masquer quantité' | trad }}</span>
                                                    <span class="resultat">{{ ligne.MASQ_QTE | boolTrad }}</span>
                                                </p>
                                            </div>
                                        </div>
                                        <div class="colonne4">
                                            <div class="informations">
                                                <p>
                                                    <span class="champs_label">{{ 'Masquer prix unitaire' | trad }}</span>
                                                    <span class="resultat">{{ ligne.MASQ_PU | boolTrad }}</span>
                                                </p>
                                            </div>
                                        </div>
                                    </td>
                                </tr> #}
                            {% endfor %}
                        </tbody>
                    </table>

                </div>

            </form>
        </div>
    </div>

{% endblock %}