<tr id="LIGNE{{ newLine.NO_PO }}" class="{% if open %}entete_ligne_show{% endif %}">
    <td class="loupe {% if open %}actif{% endif %}" width="70px">
        {{ newLine.NO_PO }} 
        <input type="hidden" 
            class="idLigneCde" 
            id="idLigneModeModif" 
            value="{{ newLine.NO_PO }}" 
            name="LIGNE_NO_PO_MODIF"/>
    </td>
    <td>
        {{ inputAdvance('ZOOMADVANCE', {
            'name' : 'ligne_ACD',
            'pahtZoom' : path('Ajax.liste.accadre'),
            'paramZoom' : "{
                'CODE_STE': '"~ newLine.CODE_STE ~"', 
                'CENTRE_EMETTEUR': $('#input_DAENT_CENTRE_EMETTEUR').val(), 
                'CENTRE_LIVRAISON': $('#input_ligne_CTRLIVR').val(), 
                'FS_ACD_EXISTE' : '1',
                'valide' : '1'
            }",
            'entity' : 'Acccadre',
            'titleZoom' : 'Liste des accords-cadres' | trad,
            'pathConvert' : path('Ajax.outil.convertLibelle'),
            'convertLibelle' : 'convertLibelleGlobal',
            'pathValidator' : path('Ajax.validator.accordCadre'),
            'paramsValidator' : "{
                'nomChamp' : '"~ 'Accord-cadre' | trad ~"', 
                'null' : true, 
                'CODE_STE': '"~ newLine.CODE_STE ~"', 
                'CENTRE_EMETTEUR': $('#input_DAENT_CENTRE_EMETTEUR').val(), 
                'CENTRE_LIVRAISON': $('#input_ligne_CTRLIVR').val(), 
                'FS_ACD_EXISTE' : '1', 
                'PROSPECT' : '"~ (newLine.CHIF_EXEC == 'E' ? 'F' : '')  ~"'
            }",
            'value' : newLine.ACD,
            'myFunction' : 'changeAccordCadre',
            'myParams' : '[
                "'~path('DemandeAchat.AjaxModificationDemandeAchat.ajaxAccordCadre')~'", 
                this, 
                "'~ newLine.CHIF_EXEC ~'"
            ]',
        }) }}
    </td>
    <td id="fournisseurDiv">
        <input type="hidden" 
            name="ligne_ACD_FG" 
            id="ligne_ACD_FG" 
            value="{{ param.ACD_FG }}" />
        <input type="hidden" 
            name="ligne_FOU_OBLIG" 
            id="ligne_FOU_OBLIG" 
            value="{{ param.FOU_OBLIG ? 'false' : 'true' }}" />
        <input type="hidden" 
            name="ligne_messageCompl" 
            id="ligne_messageCompl" 
            value="{{ param.messageCompl ? 'false' : 'true' }}" />
        {{ inputAdvance('ZOOMADVANCE', {
            'name' : 'ligne_CODE_FOU',
            'pahtZoom' : path('Ajax.liste.fournisseur'),
            'paramZoom' : "{
                'filter_egal_PROSPECT' : '"~ (newLine.CHIF_EXEC == 'E' ? 'F' : '')  ~"', 
                'valide' : 1, 
                'ACD_FG' : $('#ligne_ACD_FG').val()
            }",
            'entity' : 'Fourniss',
            'titleZoom' : 'Liste des fournisseurs' | trad,
            'pathConvert' : path('Ajax.outil.convertLibelle'),
            'convertLibelle' : 'convertLibelleGlobal',
            'pathValidator' : path('Ajax.validator.fournisseur'),
            'paramsValidator' : "{
                'nomChamp' : '"~ 'Fournisseur' | trad ~"',
                'null' : $('#ligne_FOU_OBLIG').val(),
                post : {'filter_egal_PROSPECT' : '"~ (newLine.CHIF_EXEC == 'E' ? 'F' : '')  ~"',
                'valide' : 1,
                'ACD_FG' : $('#ligne_ACD_FG').val(),
                'messageCompl' : $('#ligne_messageCompl').val()}
            }",
            'value' : newLine.CODE_FOU,
            'option' : param.FOU_LOCK ? 'readOnly' : '',
            'myFunction' : 'changeFournisseur',
            'myParams' : '["'~path('DemandeAchat.AjaxModificationDemandeAchat.ajaxFournisseur')~'", this, "' ~ newLine.CODE_STE ~ '"]',
        }) }}
    </td>
    <td>
        <input type="hidden" 
            name="ligne_ID_CAT_ORI" 
            id="ligne_ID_CAT_ORI" 
            value="{{ newLine.ID_CAT_ORI }}" />
        {{ inputAdvance('zoom', {
            'name' : 'ligne_CODE_ART',
            'value' : newLine.CODE_ART,
            'pahtZoom' : path('Ajax.liste.articles'),
            'titleZoom' : 'Liste des articles' | trad,
            'Entity' : 'Articles',
            'pathValidator' : path('Ajax.validator.zoom'),
            'paramsValidator' : "{
                'entity' : 'Articles', 
                'nomChamp' : '"~ 'Article' | trad ~"', 
                'null' : true
            }",
            'idText' : 'input_DES_SOMM',
            'myFunction' : 'changeArticle',
            'myParams' : '["' ~ path('DemandeAchat.AjaxModificationDemandeAchat.ajaxArticlesDetail') ~ '", this]',
        }) }}
    </td>
    <td>
        {{ inputAdvance('text', {
            'name' : 'ligne_DES_SOMM',
            'value' : newLine.DES_SOMM,
            'pathValidator' : path('Ajax.validator.isStringAvecEspace'),
            'paramsValidator' : "{
                'nomChamp' : '"~ 'Désignation article' | trad ~"', 
                'sizeMin' : ($('#input_ligne_CODE_ART').val()==''? 1 : 0), 
                'sizeMax' : 60
            }",
            'option' : param.DES_SOMM_LOCK ? 'readOnly' : '',	
        }) }}
    </td>
    <td width="110px">
        <input type="hidden" 
            name="ligne_DEJA_COMM" 
            id="ligne_DEJA_COMM" 
            value="{{ qteByUnite(newLine.DEJA_COMM, newLine.UNITE) }}" />
        <input type="hidden" 
            name="ligne_recalculPlanning" 
            id="ligne_recalculPlanning" 
            value="" />
        {{ inputAdvance('text', {
            'name' : 'ligne_QTE_DEM',
            'value' : qteByUnite(newLine.QTE_DEM, newLine.UNITE),
            'pathValidator' : path('Ajax.validator.quantiteLigneDA'),
            'paramsValidator' : "{
                'nomChamp' : '"~ 'Quantité' | trad ~"', 
                'format' : '6.3', 
                'obligatoire' : '"~ param.QTE_CTRL_BLO ~"', 
                'DEJA_COMM' : $('#ligne_DEJA_COMM').val()
            }",
            'myFunction' : 'changeQuantite',
            'myParams' : '["'~path('GlobalApplication.CalculPrix.calculPrix', {MODULE : 'DA'})~'", this]',
            'addClass' : 'numeric',
        }) }}
    </td>
    <td width="100px">
        {{ inputAdvance('zoomAdvance', {
            'name' : 'ligne_UNITE',
            'value' : newLine.UNITE,
            'pahtZoom' : path('Ajax.liste.unites'),
            'titleZoom' : 'Liste des unités' | trad,
            'entity' : 'Unites',
            'pathConvert' : path('Ajax.outil.convertLibelle'),
            'convertLibelle' : 'convertLibelleGlobal',
            'pathValidator' : path('Ajax.validator.zoom'),
            'paramsValidator' : "{'entity' : 'Unites', 'nomChamp' : '"~ 'Unité' | trad ~"'}",
            'myFunction' : 'changeQuantite',
            'myParams' : '["'~path('GlobalApplication.CalculPrix.calculPrix', {MODULE : 'DA'})~'", this]',
        }) }}
    </td>
    <td width="115px">
        <input type="hidden" 
            name="ligne_TEMPINIT" 
            id="ligne_TEMPINIT" 
            value="{{ newLine.TEMPINIT }}" />
        {{ inputAdvance('text', {
            'name' : 'ligne_PU',
            'value' : newLine.PU|number_format(5, '.', ' '),
            'pathValidator' : path('Ajax.validator.float'),
            'paramsValidator' : "{
                'nomChamp' : '"~ 'Prix unitaire' | trad ~"', 
                'format' : "~getConst('formatPU')~", 
                'obligatoire' : '"~ param.PU_CTRL_BLO ~"'
            }",
            'myFunction' : 'changePU',
            'myParams' : "[this]",
            'addClass' : 'numeric',
        }) }}
    </td>
    <td width="60px">
        {{ inputAdvance('text', {
            'name' : 'ligne_TX_REMISE',
            'value' : newLine.TX_REMISE|number_format(2, '.', ' '),
            'pathValidator' : path('Ajax.validator.float'),
            'paramsValidator' : "{
                'nomChamp' : '"~ 'Remise' | trad ~"', 
                'format' : 2.2, 
                'max' : 99.99
            }",
            'addClass' : 'numeric',
        }) }}
            {# 'myFunction' : 'calculTotaux',
            'myParams' : "[]", #}
    </td>
    <td width="100px">
        {{ inputAdvance('text', {
            'name' : 'ligne_BUDGET',
            'value' : newLine.BUDGET|number_format(2, '.', ' '),
            'pathValidator' : path('Ajax.validator.float'),
            'paramsValidator' : "{
                'nomChamp' : '"~ 'Budget' | trad ~"', 
                'format' : "~getConst('formatMontant')~"
            }",
            'myFunction' : 'separateurMilier',
            'myParams' : "[this]",
            'addClass' : 'numeric',
        }) }}
    </td>	
    <td>
        {{ inputAdvance('date', {
            'name' : 'ligne_DTELIVSOU',
            'value' : newLine.DTELIVSOU | dateTrad,
            'pathValidator' : path('Ajax.validator.date'),
            'paramsValidator' : "{
                'nomChamp' : '"~ 'Date de livraison' | trad ~"', 
                'null' : '"~ (param.DTELIVSOU_CTRL_BLO ? false : true) ~"'
            }",
            'option' : ((ligne_RECEP_AUTO | boolSql) or planning | length > 1) ? 'readOnly' : '',
            'myFunction' : 'changeDateLiv',
            'myParams' : "['"~ path('GlobalApplication.Planning.getSinglePlanning') ~"', this]",
        }) }}
        <input type="hidden" 
            name="ligne_planning" 
            id="ligne_planning" 
            value=""/>
        {% if newLine.QTE_DEM != 0 %}		
            {% set pathAjaxPopup = path(
                'GlobalApplication.Planning.planning', 
                {
                    'MODULE' : 'DA', 
                    'id' : newLine.NO_DA, 
                    'noPo' : newLine.NO_PO, 
                    'action' : 'modif'
                }
                ) %}
            <a onclick="{{ 'ajaxPopup(\'' ~ pathAjaxPopup ~ '\', \'' 
                ~ 'Planning' | trad  ~ '\', \'\', \'\', {ligne_planning : $(\'#ligne_planning\').val()})' }}" 
                class="calendrier white-tooltip">
                <span class="infos_tooltip top-left">
                    {{ 'Modifier le planning' | trad }}
                </span>
            </a>
        {% endif %}
    </td>
    <td class="parametrage" colspan="2">
        
        
    </td>
</tr>
<tr id="LIGNE{{ newLine.NO_PO }}detail" 
    class="detail_ligne {% if open %}detail_ligne_show{% else %}hide_detail{% endif %}">	
    <td colspan="13">
        <div class="single fullDiv {% if CSExist('DA_LIGNE') %}fullDiv3 {% else %}fullDiv2 {% endif %}">
            <ul class="nav nav-tabs sous_onglet">   
                <li class="active" id="lg_detail_onglet">
                    <a data-toggle="tab" href="#ligne_details">
                        {{ 'Détails' | trad }}
                    </a>
                </li>				
                <li id="lg_recep_onglet">
                    <a data-toggle="tab" href="#ligne_recep">
                        {{ 'Réception automatique' | trad }}
                    </a>
                </li>
                {% if CSExist('DA_LIGNE') %}
                    <li id="lg_cs_onglet">
                        <a data-toggle="tab" href="#ligne_supp">
                            {{ 'Supplémentaires' | trad }}
                        </a>
                    </li>
                {% endif %}
                <li>
                    <a data-toggle="tab" 
                        href="#planning" 
                        onClick="calculPlanning();"
                    >
                        {{ 'Planning' | trad }}
                    </a>
                </li>

            </ul>
            <div class="tab-content">
                <div id="ligne_details" class="tab-pane active in clearfix box-form">
                    <div class="colonne2">
                        <div class="row">
                            <input type="hidden" 
                                name="ligne_NM_DCOMP" 
                                value="{{ newLine.NM_DCOMP }}" />
                            {{ inputAdvance('textArea', {
                                'titre' : 'Désignation compl.' | trad,
                                'name' : 'ligne_DESIGNCOMP',
                                'value' : newLine.DESIGNCOMP,
                                'pathValidator' : path('Ajax.validator.isStringAvecEspace'),
                                'paramsValidator' : "{
                                    'nomChamp' : '"~ 'Désignation complémentaire' | trad ~"', 
                                    'sizeMin' : '0', 
                                    'sizeMax' : '3000'
                                }",
                            }) }}
                        </div>
                    </div>
                    <div class="colonne2">
                        <div class="row">
                            {{ inputAdvance('zoomAdvance', {
                                'titre' : 'Sous-famille' | trad,
                                'name' : 'ligne_SSFAM',
                                'value' : newLine.SSFAM,
                                'pahtZoom' : path('Ajax.liste.sousFamille'),
                                'titleZoom' : 'Liste des sous-familles' | trad,
                                'entity' : 'SousFamille',
                                'pathConvert' : path('Ajax.outil.convertLibelle'),
                                'convertLibelle' : 'convertLibelleGlobal',
                                'pathValidator' : path('Ajax.validator.zoom'),
                                'paramsValidator' : "{
                                    'entity' : 'SousFamille', 
                                    'nomChamp' : '"~ 'Sous Famille' | trad ~"'
                                }",
                                'option' : param.SSFAM_LOCK ? 'readOnly' : '',
                                'obligatoire' : true,	
                            }) }}
                        </div>
                        <div class="row">
                            {{ inputAdvance('zoomAdvance', {
                                'titre' : 'Contrôle qualité' | trad,
                                'name' : 'ligne_CTRL_BR',
                                'value' : newLine.CTRL_BR,
                                'pahtZoom' : path('Ajax.liste.cqualite'),
                                'titleZoom' : 'Liste des contrôles qualité' | trad,
                                'entity' : 'Cqualite',
                                'pathConvert' : path('Ajax.outil.convertLibelle'),
                                'convertLibelle' : 'convertLibelleGlobal',
                                'pathValidator' : path('Ajax.validator.zoom'),
                                'paramsValidator' : "{
                                    'entity' : 'Cqualite', 
                                    'nomChamp' : '"~ 'Contrôle qualité' | trad ~"', 
                                    'null' : true
                                }",
                            }) }}
                        </div>
                    </div>

                    <div class="clearfix border-top">
                        <div class="colonne2">
                            <div class="row">
                                {{ inputAdvance('text', {
                                    'titre' : 'Réf. Fournisseur' | trad,
                                    'name' : 'ligne_REF_FOUR',
                                    'value' : newLine.REF_FOUR,
                                    'pathValidator' : path('Ajax.validator.isStringAvecEspace'),
                                    'paramsValidator' : "{
                                        'nomChamp' : '"~ 'Référence fournisseur' | trad ~"', 
                                        'sizeMin' : '0', 
                                        'sizeMax' : '30'
                                    }",
                                }) }}
                            </div>
                        </div>
                        <div class="colonne2">
                            <div class="row">
                                {{ inputAdvance('ZOOMADVANCE', {
                                    'titre' : 'Fabricant' | trad,
                                    'name' : 'ligne_COD_FAB',
                                    'value' : newLine.COD_FAB,
                                    'pahtZoom' : path('Ajax.liste.fabricant'),
                                    'paramZoom' : "{}",
                                    'titleZoom' : 'Liste des fabricants' | trad,
                                    'entity' : 'Fabricant',
                                    'pathConvert' : path('Ajax.outil.convertLibelle'),
                                    'convertLibelle' : 'convertLibelleGlobal',
                                    'pathValidator' : path('Ajax.validator.zoom'),
                                    'paramsValidator' : "{
                                        'entity' : 'Fabricant', 
                                        'nomChamp' : '"~ 'Fabricant' | trad ~"', 
                                        'null' : true
                                    }",
                                    'option' : param.COD_FAB_LOCK ? 'readOnly' : '',	
                                }) }}
                            </div>
                        </div>
                        <div class="colonne2">
                            <div class="row">
                                {{ inputAdvance('ZOOMADVANCE', {
                                    'titre' : 'Code gamme' | trad,
                                    'name' : 'ligne_COD_GAM',
                                    'value' : newLine.COD_GAM,
                                    'pahtZoom' : path('Ajax.liste.gamme'),
                                    'paramZoom' : "{'filter_egal_CODEFABR' : $('#input_ligne_COD_FAB').val()}",
                                    'titleZoom' : 'Liste des gammes' | trad,
                                    'entity' : 'Gamme',
                                    'pathConvert' : path('Ajax.outil.convertLibelle'),
                                    'convertLibelle' : 'convertLibelleGlobal',
                                    'pathValidator' : path('Ajax.validator.zoom'),
                                    'paramsValidator' : "{
                                        'entity' : 'Gamme', 
                                        'nomChamp' : '"~ 'Gamme' | trad ~"', 
                                        'null' : true, 
                                        'filter_egal_CODEFABR' : $('#input_ligne_COD_FAB').val()
                                    }",
                                    'option' : param.COD_GAM_LOCK ? 'readOnly' : '',	
                                }) }}
                            </div>
                        </div>
                        <div class="colonne2">
                            <div class="row">
                                {{ inputAdvance('text', {
                                    'titre' : 'Réf. Fabricant' | trad,
                                    'name' : 'ligne_REF_FAB',
                                    'value' : newLine.REF_FAB,
                                    'pathValidator' : path('Ajax.validator.isStringAvecEspace'),
                                    'paramsValidator' : "{
                                        'nomChamp' : '"~ 'Référence fabricant' | trad ~"', 
                                        'sizeMin' : '0', 
                                        'sizeMax' : '30'
                                    }",
                                }) }}
                            </div>
                        </div>
                    </div>

                    {% if param.SI_ACTIF or param.CDC_ACTIF or param.SCA_ACTIF %}
                        <div class="clearfix border-top">
                            {% if param.SI_ACTIF %}
                                <div class="colonne2">
                                    <div class="row">
                                        {{ inputAdvance('ZOOMADVANCE', {
                                            'titre' : 'Section d\'imputation' | trad,
                                            'name' : 'ligne_SECTIMP',
                                            'value' : newLine.SECTIMP,
                                            'pahtZoom' : path('Ajax.liste.si'),
                                            'paramZoom' : "{
                                                'si_valide': 'on', 
                                                'CODE_STE' : '"~ newLine.CODE_STE ~"', 
                                                'showFiltreDate': '1'
                                            }",
                                            'titleZoom' : 'Liste des sections imputation' | trad,
                                            'entity' : 'Sectimpu',
                                            'codeSte' : newLine.CODE_STE,
                                            'convertLibelle' : 'convertLibelleGlobal',
                                            'pathConvert' : path('Ajax.outil.convertLibelle'),
                                            'pathValidator' : path('Ajax.validator.sectionImputation'),
                                            'paramsValidator' : "{
                                                'nomChamp' : '"~ 'Section imputation' | trad ~"', 
                                                'null' : true, 
                                                'filter_egal_CODE_STE' : '"~ newLine.CODE_STE ~"', 
                                                'min_bloquant' : '"~ param.MIN_SI_BLOQUANT ~"', 
                                                'max_bloquant' : '"~ param.MAX_SI_BLOQUANT ~"'
                                            }",
                                            'widthPopup' : 'modal_large',
                                            'codeSte' : newLine.CODE_STE,
                                        }) }}
                                    </div>
                                </div>
                                <div class="colonne2">
                                    <div class="row" id="ligne_CG">
                                        <input type="hidden" 
                                            name="ligne_null_CODGES" 
                                            id="ligne_null_CODGES" 
                                            value="{{ newLine.CODGES_OBLIG ? 'false' : 'true' }}" />
                                        {# TODO supprimer pathConvert et ajouter les lignes suivantes à adapter avec les valeurs de la page #}
                                            {# 'myFunction' : 'convertLibelleCodeGestion',
                                            'myParams' : '["'~path('Ajax.outil.convertLibelleCodeGestion')~'", this, "CODE_GES", "CODE_AFF", "input_ID_CG-'~cde.NO_LIGNE~'", "text_ID_CG-'~cde.NO_LIGNE~'", "'~ facture.CODE_STE ~'", "'~numLot~'", "", "input_CODE_SI-'~cde.NO_LIGNE~'", 0]', #}
                                        {{ inputAdvance('TREEVIEW', {
                                            'titre' : 'Code gestion' | trad,
                                            'name' : 'ligne_CODGES',
                                            'value' : param.CODE_GESTION_PAR_ID ? newLine.ID_CG : newLine.CODGES,
                                            'pathTreeview' : path('Ajax.Treeview.codeGestion'),
                                            'paramsTreeview' : "{
                                                'CODE_SI': $('#input_ligne_SECTIMP').val(), 
                                                'inputCG' : 'ligne_CODGES', 
                                                'CODE_STE' : '"~ newLine.CODE_STE ~"', 
                                                'valide_obligatoire': '1', 
                                                'AUTHACHAT' : '1',
                                                'affichageLibelle' : 1,
                                                'cg_valide': 'on'
                                            }",
                                            'titleTreeview' : 'Liste des codes gestion' | trad,
                                            'entity' : 'Codgest',
                                            'codeBDD' : 'CODE_GES',
                                            'libelleBDD' : 'CODE_AFF',
                                            'siLink': 'input_ligne_SECTIMP',
                                            'codeSte' : ""~ newLine.CODE_STE ~"",
                                            'sectimpu' : ligne.SECTIMP,
                                            'codeSteCG' : commande.CODE_STE,
                                            'codeAffCG' : ligne.CODGES,
                                            'myFunction' : 'convertLibelleCodeGestion',
                                            'myParams' : '["'~path('Ajax.outil.convertLibelleCodeGestion')~'", this, "CODE_GES", "CODE_AFF", "input_ligne_CODGES", "text_ligne_CODGES", "'~commande.CODE_STE~'", "1", "", "input_ligne_SECTIMP", 1, ]',
                                            'obligatoire' : true,
                                        }) }}
                                        {# {{ inputAdvance('TREEVIEW', {
                                            'titre' : 'Code gestion' | trad,
                                            'name' : 'ligne_CODGES',
                                            'value' : param.CODE_GESTION_PAR_ID ? newLine.ID_CG : newLine.CODGES,
                                            'pathTreeview' : path('Ajax.Treeview.codeGestion'),
                                            'paramsTreeview' : "{
                                                'CODE_SI': $('#input_ligne_SECTIMP').val(), 
                                                'inputCG' : 'ligne_CODGES', 
                                                'CODE_STE' : '"~ newLine.CODE_STE ~"', 
                                                'valide_obligatoire': '1', 
                                                'AUTHACHAT' : '1',
                                                'affichageLibelle' : 1,
                                                'cg_valide': 'on'
                                            }",
                                            'titleTreeview' : 'Liste des codes gestion' | trad,
                                            'valueTexteTreeview' : newLine.LIBGES,
                                            'entity' : 'Codgest',
                                            'pathConvert' : path('Ajax.outil.convertLibelle'),
                                            'paramConvertLibelle' : "{'filter_egal_CODE_STE' : '"~ newLine.CODE_STE ~"'}",
                                            'pathValidator' : path('Ajax.validator.codeGestion'),
                                            'paramsValidator' : "{
                                                'nomChamp' : '"~ 'Code gestion' | trad ~"', 
                                                'null' : $('#ligne_null_CODGES').val(), 
                                                'CODE_SI': $('#input_ligne_SECTIMP').val(), 
                                                'CODE_STE' : '"~ newLine.CODE_STE ~"', 
                                                'valide_obligatoire': '1', 
                                                'AUTHACHAT' : '1'
                                            }",
                                            'option' : param.CODGES_MODIF ? '' : 'readOnly',
                                            'obligatoire' : true,
                                        }) }} #}
                                        {# {{ inputAdvance('TREEVIEW', {
										'titre' : 'Code gestion' | trad,
										'name' : 'ligne_CODGES',
										'pathTreeview' : path('Ajax.Treeview.codeGestion'),
										'paramsTreeview' : "{'CODE_SI': $('#input_ligne_SECTIMP').val(), 'cg_valide': 'on', 'inputCG' : 'ligne_CODGES', 'CODE_STE': $('#CODE_STE').val(), 'affichageLibelle' : 1}",
										'titleTreeview' : 'Code gestion' | trad,
										'value' : param.CODE_GESTION_PAR_ID? ligne.ID_CG:ligne.CODGES,
										'convertLibelle' : 'cgTrad',
										'pathValidator' : path('Ajax.validator.codeGestion'),
										'paramsValidator' : "{'nomChamp' : '"~ ('Code gestion' | trad |e('js')|raw)~"', 'null' : true, 'CODE_SI': $('#input_ligne_SECTIMP').val(), 'CODE_STE':  $('#CODE_STE').val()}",
										'_pathConvert' : path('Ajax.outil.convertLibelle'),
										'entity' : 'Codgest',
										'codeBDD' : 'CODE_GES',
										'libelleBDD' : 'CODE_AFF',
										'option' : (
											(
												(ligne.NO_DA and param.LIMITACH_IMP) 
												and droit.HA_CA_MCPR == false
											) or param.MODIF_CODGES == false 
											or param.LOCK_SI
											or (isModification and not droit.HA_CA_MSI)
										) ? 'disabled' : '',
										'siLink': 'input_ligne_SECTIMP',
										'codeSte' : "$('#CODE_STE').val()",
										'sectimpu' : ligne.SECTIMP,
										'codeSteCG' : commande.CODE_STE,
										'codeAffCG' : ligne.CODGES,
										'myFunction' : 'convertLibelleCodeGestion',
										'myParams' : '["'~path('Ajax.outil.convertLibelleCodeGestion')~'", this, "CODE_GES", "CODE_AFF", "input_ligne_CODGES", "text_ligne_CODGES", "'~commande.CODE_STE~'", "1", "", "input_ligne_SECTIMP", 1, ]',
									}) }}  #}
                                    </div>
                                    <script>
                                        {% if param.CODGES_OBLIG | boolSql == 0 %}
                                        $('#ligne_CG .obligatoire').hide();
                                        {% endif %}
                                    </script>
                                </div>
                            {% endif %}
                            {% if param.CDC_ACTIF %}                                
                                <div class="colonne2">	
                                    <div class="row">
                                        {{ inputAdvance('ZOOMADVANCE', {
                                            'titre' : 'Code complémentaire' | trad,
                                            'name' : 'ligne_CODE_COMP',
                                            'value' : newLine.CODE_COMP,
                                            'pahtZoom' : path('Ajax.liste.cdc'),
                                            'paramZoom' : "{'cdc_valide': 'on', 'CODE_STE' : '"~ newLine.CODE_STE ~"', 'showFiltreDate': '1'}",
                                            'titleZoom' : 'Liste des codes complémentaires' | trad,
                                            'entity' : 'codeComp',
                                            'pathConvert' : path('Ajax.outil.convertLibelle'),
                                            'convertLibelle' : 'convertLibelleGlobal',
                                            'pathValidator' : path('Ajax.validator.zoom'),
                                            'paramsValidator' : "{
                                                'entity' : 'codeComp', 
                                                'nomChamp' : '"~ 'Code complémentaire' | trad ~"', 
                                                'null' : true, 
                                                'filter_egal_CODE_STE' : '"~ newLine.CODE_STE ~"', 
                                                'min_bloquant' : '"~ param.MIN_CDC_BLOQUANT ~"', 
                                                'max_bloquant' : '"~ param.MAX_CDC_BLOQUANT ~"'
                                            }",
                                            'widthPopup' : 'modal_large',
                                            'codeSte' : newLine.CODE_STE,
                                        }) }}
                                    </div>
                                </div>
                            {% endif %}
                            {% if param.SCA_ACTIF %}
                                <div class="colonne2">
                                    <div class="row">
                                        {{ inputAdvance('ZOOMADVANCE', {
                                            'titre' : 'Sous compte d\'analyse' | trad,
                                            'name' : 'ligne_SSCPTEANA',
                                            'value' : newLine.SSCPTEANA,
                                            'pahtZoom' : path('Ajax.liste.sca'),
                                            'paramZoom' : "{
                                                    'sca_valide': 'on', 
                                                    'CODE_STE' : '"~ newLine.CODE_STE ~"', 
                                                    'showFiltreDate': '1',
                                                    'contexte' : 'ligneDA', 
                                                    'SI' : $('#input_ligne_SECTIMP').val(),
                                                    'CDC' : $('#input_ligne_CODE_COMP').val(),
                                                }",
                                            'titleZoom' : 'Liste des sous comptes analyse' | trad,
                                            'entity' : 'Sscptana',
                                            'pathConvert' : path('Ajax.outil.convertLibelle'),
                                            'convertLibelle' : 'convertLibelleGlobal',
                                            'pathValidator' : path('Ajax.validator.zoom'),
                                            'paramsValidator' : "{
                                                'entity' : 'Sscptana', 
                                                'nomChamp' : '"~ 'Code sous compte analyse' | trad ~"', 
                                                'null' : true, 
                                                'filter_egal_CODE_STE' : '"~ newLine.CODE_STE ~"', 
                                                'min_bloquant' : '"~ param.MIN_SCA_BLOQUANT ~"', 
                                                'max_bloquant' : '"~ param.MAX_SCA_BLOQUANT ~"'
                                            }",
                                            'codeSte' : newLine.CODE_STE,
                                        }) }}
                                    </div>
                                </div>
                            {% endif %}
                        </div>
                    {% endif %}

                    <div class="clearfix border-top">
                        <div class="colonne2">
                            <div class="row">
                                {{ inputAdvance('zoomAdvance', {
                                    'titre' : 'TVA' | trad ~' (%)',
                                    'name' : 'ligne_TVA',
                                    'value' : newLine.TVA | tva,
                                    'pahtZoom' : path('Ajax.liste.TVA'),
                                    'titleZoom' : 'Liste des tva' | trad,
                                    'entity' : 'TVA',
                                    'pathConvert' : path('Ajax.outil.convertLibelle'),
                                    'convertLibelle' : 'convertLibelleGlobal',
                                    'pathValidator' : path('Ajax.validator.zoom'),
                                    'paramsValidator' : "{'entity' : 'TVA', 'nomChamp' : '"~ 'TVA' | trad ~"', 'null' : true}",
                                }) }}
                            </div>
                        </div>
                        <div class="colonne2">
                            <div class="row">
                                <input type="hidden" 
                                    name="TRS_INTER" 
                                    id="ligne_TRS_INTER" 
                                    value="{{ param.TRS_INTER }}" />
                                {{ inputAdvance('ZOOMADVANCE', {
                                    'titre' : 'Centre de livraison' | trad,
                                    'name' : 'ligne_CTRLIVR',
                                    'value' : newLine.CTRLIVR,
                                    'pahtZoom' : path('Ajax.liste.centreLivraison'),
                                    'paramZoom' : "{'code_ste' : '"~ newLine.CODE_STE ~"' }",
                                    'titleZoom' : 'Liste des centres de livraison' | trad,
                                    'entity' : 'Centre',
                                    'pathConvert' : path('Ajax.outil.convertLibelle'),
                                    'convertLibelle' : 'convertLibelleGlobal',
                                    'pathValidator' : path('Ajax.validator.zoom'),
                                    'paramsValidator' : "{
                                        'entity' : 'Centre', 
                                        'nomChamp' : '"~ 'Centre de livraison' | trad ~"', 
                                        'null' : false, 
                                        'post' : {
                                            'filter_LIVRAISON' : 'T', 
                                            'filter_egal_CODE_STE' : '"~ newLine.CODE_STE ~"'
                                        }
                                    }",
                                    'myFunction' : 'changeCentreLivraison',
                                    'myParams' : '["'~path('DemandeAchat.AjaxModificationDemandeAchat.ajaxCentreLivraison')~'", this]',
                                }) }}
                            </div>
                        </div>
                        {% if param.MOD_TRS_ACTIF %}
                        <div class="colonne2">
                            <div class="row" id="ligne_modeTransportDiv">
                                <input type="hidden" 
                                    name="ligne_null_MOD_TRS" 
                                    id="ligne_null_MOD_TRS" 
                                    value="{{ param.MOD_TRS_OBLIG ? 'false' : 'true' }}" />
                                {{ inputAdvance('SELECT', {
                                    'titre' : 'Mode de transport' | trad,
                                    'name' : 'ligne_MOD_TRS',
                                    'listeValue' : newLine.MOD_TRS ? tabTransport : {},
                                    'value' : newLine.MOD_TRS,
                                    'option' : newLine.MOD_TRS ? '' : 'disabled',																	
                                    'obligatoire' : true,
                                }) }}
                            </div>
                            <script>
                                {% if param.MOD_TRS_OBLIG | boolSql == 0 %}
                                $('#ligne_modeTransportDiv .obligatoire').hide();
                                {% endif %}
                            </script>
                        </div>
                        {% endif %}
                        {% if param.SITE_STK_ACTIF %}						
                        <div class="colonne2">
                            <div class="row">
                                {{ inputAdvance('zoomAdvance', {
                                    'titre' : 'Site' | trad,
                                    'name' : 'ligne_SITE_STK',
                                    'value' : newLine.SITE_STK,
                                    'pahtZoom' : path('Ajax.liste.ssItesto'),
                                    'paramZoom' : "{
                                        'filter_SIST_DTE_FERM' : '00000000', 
                                        'filter_egal_CODE_STE' : '"~ newLine.CODE_STE ~"', 
                                        'CODE_ART' : $('#input_ligne_CODE_ART').val(), 
                                        'date_art_ouvert' : $('#input_DTE_EMISS').val()
                                    }",
                                    'titleZoom' : 'Liste des sites de stock' | trad,
                                    'entity' : 'SsItesto',
                                    'pathConvert' : path('Ajax.outil.convertLibelle'),
                                    'convertLibelle' : 'convertLibelleGlobal',
                                    'pathValidator' : path('Ajax.validator.siteStock'),
                                    'paramsValidator' : "{
                                        'nomChamp' : '"~ 'Site de stock' | trad ~"',
                                        'null' : true, 
                                        'filter_SIST_DTE_FERM' : '00000000', 
                                        'filter_egal_CODE_STE' : '"~ newLine.CODE_STE ~"', 
                                        'CODE_ART' : $('#input_ligne_CODE_ART').val(), 
                                        'date_art_ouvert' : $('#input_DTE_EMISS').val()
                                    }",
                                    'option' : param.SITE_STK_LOCK ? 'readOnly':''
                                }) }}
                            </div>
                        </div>
                        {% endif %}
                        {% if param.TYPEACHAT_ACTIF %}									
                        <div class="colonne2">
                            <div class="row">
                                {{ inputAdvance('SELECT', {
                                    'titre' : 'Type d\'achat' | trad,
                                    'name' : 'ligne_TYPNMP',
                                    'listeValue' : tabTypeMarchePublic,
                                    'value' : newLine.TYPNMP,
                                    'obligatoire' : true,
                                }) }}
                            </div>
                        </div>
                        {% endif %}
                    </div>
                </div>    			
                
                <div id="ligne_recep" class="tab-pane fade clearfix box-form">        			
                    <div class="clearfix">
                        <div class="colonne2">
                            <div class="row">
                                <input type="hidden" 
                                    name="ligne_ART_RECEP_AUTO" 
                                    id="ligne_ART_RECEP_AUTO" 
                                    value="{{ newLine.ART_RECEP_AUTO }}" />
                                <input type="hidden" 
                                    name="ligne_FOU_RECEP_AUTO" 
                                    id="ligne_FOU_RECEP_AUTO" 
                                    value="{{ newLine.FOU_RECEP_AUTO }}" />
                                {{ inputAdvance('SWITCH', {
                                    'titre' : 'Réception automatique ?' | trad,
                                    'name' : 'ligne_RECEP_AUTO',
                                    'value' : newLine.RECEP_AUTO | boolSql,
                                    'option' : param.RECEP_AUTO_ACTIF ? '':'readOnly'
                                }) }}
                            </div>
                            <div class="row">
                                {{ inputAdvance('DATE', {
                                    'titre' : 'Début contrat' | trad,
                                    'name' : 'ligne_DATEDEBCONT',
                                    'value' : newLine.DATEDEBCONT |dateTrad,
                                    'pathValidator' : path('Ajax.validator.date'),
                                    'paramsValidator' : "{'nomChamp' : '"~ 'Date de début de contrat' | trad ~"'}",
                                    'option' : param.RECEP_AUTO | boolSql? '':'readOnly',
                                    'obligatoire' : true,
                                }) }}
                            </div>                           
                            <div class="row">
                                {{ inputAdvance('DATE', {
                                    'titre' : 'Fin contrat' | trad,
                                    'name' : 'ligne_DATEFINCONT',
                                    'value' : newLine.DATEFINCONT |dateTrad,
                                    'pathValidator' : path('Ajax.validator.date'),
                                    'paramsValidator' : "{'nomChamp' : '"~ 'Date de fin de contrat' | trad ~"'}",
                                    'option' : param.RECEP_AUTO| boolSql ? '':'readOnly',
                                    'obligatoire' : true,
                                }) }}
                            </div>
                        </div>
                        <div class="colonne2 last">
                            <div class="row">
                                <input type="hidden" 
                                    name="ligne_ART_PER_REC_AUTO" 
                                    id="ligne_ART_PER_REC_AUTO" 
                                    value="{{ newLine.ART_PER_REC_AUTO }}" />
                                <input type="hidden" 
                                    name="ligne_FOU_PER_REC_AUTO" 
                                    id="ligne_FOU_PER_REC_AUTO" 
                                    value="{{ newLine.FOU_PER_REC_AUTO }}" />
                                {{ inputAdvance('SELECT', {
                                    'titre' : 'Périodicité du contrat' | trad,
                                    'name' : 'ligne_CONTRAT_PERIOD',
                                    'value' : newLine.CONTRAT_PERIOD,
                                    'listeValue' : tabPeriodicite,
                                    'option' : param.RECEP_AUTO| boolSql ? '':'readOnly',
                                    'obligatoire' : true,
                                }) }}
                            </div> 
                            <div class="row">
                                {{ inputAdvance('SELECT', {
                                    'titre' : 'Type de période' | trad,
                                    'name' : 'ligne_FIN_DEB_PER',
                                    'value' : newLine.FIN_DEB_PER ?? 'F',
                                    'listeValue' : tabPeriode,
                                    'option' : param.RECEP_AUTO| boolSql ? '':'readOnly',
                                    'obligatoire' : true,
                                    'tooltip' : 'Fin de période' | trad ~ colon() 
                                        ~ "calcul d'un planning avec des dates en fin de mois / trimestre / semestre / année." | trad
                                        ~ 'Début de période' | trad ~ colon()
                                        ~ "calcul d'un planning avec des dates en début de mois / trimestre / semestre / année." | trad,
                                }) }}
                            </div>
                            <div class="row">
                                {{ inputAdvance('SELECT', {
                                    'titre' : 'Jour d\'application' | trad,
                                    'name' : 'ligne_DALI_RECEPAUTO_JOUR',
                                    'value' : newLine.DALI_RECEPAUTO_JOUR,
                                    'listeValue' : tabJoursAppli,
                                    'option' : param.RECEP_AUTO| boolSql ? '':'readOnly',
                                    'obligatoire' : true,
                                }) }}                       
                            </div>
                        </div>
                    </div>
                    <script>
                        $( "#input_ligne_RECEP_AUTO" ).change(function()
                        {
                            if($('#input_ligne_RECEP_AUTO').is(':checked')){							
                                var confirmationRecepAuto = confirm('{{ "Cette donnée modifiée entraine la suppression pour recalcul du planning. Le confirmez-vous ?" | trad }}');

                                if(confirmationRecepAuto)
                                {
                                    initRecepAuto();
                                    // TODO recalcul planning
                                }
                                else{
                                    $( "#ligne_RECEP_AUTO" ).trigger('click');
                                }
                            }
                            else
                            {
                                readonlyRecepAuto();
                            }
                        });
                        
                        $( "#input_ligne_FIN_DEB_PER" ).change(function()
                        {
                            var input = $(this).val();
                            if(input =='D')
                            {
                                $('#input_ligne_DALI_RECEPAUTO_JOUR').val(1).change();
                            }
                            else
                            {
                                $('#input_ligne_DALI_RECEPAUTO_JOUR').val(31).change();
                            }
                        });

                        $( "#input_ligne_DALI_RECEPAUTO_JOUR" ).change(function()
                        {
                            // TODO
                            var confirmationJourRecepAuto = confirm('{{ "Cette donnée modifiée entraine la suppression pour recalcul du planning. Le confirmez-vous ?" | trad }}');

                            if(confirmationJourRecepAuto)
                            {
                                
                            }
                            else{

                            }
                        });
                        {% if newLine.RECEP_AUTO | boolSql == 0 %}
                            $('#ligne_recep .obligatoire').hide();
                        {% endif %}
                        {% if param.RECEP_AUTO_ONGLET_ACTIF | boolSql == 0 %}
                            $('#lg_recep_onglet').hide();
                        {% endif %}
                    </script>
                </div>
                
                <div id="ligne_supp" class="tab-pane fade clearfix box-form">
                    {% if CSExist('DA_LIGNE') %}
                        {{ inputCSAdvance({
                            'codTab' : 'DA_LIGNE', 
                            'colonneActif' : true, 
                            'codeEnr' : autoCompletCodeEnr(idDA, newLine.NO_PO) 
                        }) }} 
                    {% endif %}
                </div>
                <div id="planning" class="tab-pane fade clearfix padding_form border_form">
					{% include '@Commande/Creation/Ligne/planning.twig' %}
				</div>
            </div>
        </div>
        <div class="button_right full validation_modal">
            <button type='button' 
                class="button principal button_right" 
                id="saveLigne" 
                onClick="validationLigne('{{ path('DemandeAchat.ModificationLigneDemandeAchat.validationLigne', {idDA : idDA}) }}', '{{ newLine.NO_PO }}');">
                    {{ 'Enregistrer' | trad }}
            </button>
            <button type='button' 
                class="button secondaire button_right" 
                id="cancelLigne" 
                onClick="annulationLigne('{{ path('DemandeAchat.ModificationLigneDemandeAchat.annulationLigne', {idDA : idDA}) }}');">
                    {{ 'Annuler' | trad }}
            </button>
        </div>
        <script>
            function annulationLigne(path)
            {
                var confirmation = confirm('{{ "Êtes-vous sûr de vouloir annuler votre saisie ?" | trad }}');

                if(confirmation)
                {
                    $.ajax({
                        dataType : 'html',
                        url: path,
                        data: $('#form_creationDA').serialize(),
                        type: "POST",
                        success: function(result){
    
                            $('#LIGNE{{ newLine.NO_PO }}JS').after(result);
                            
                            $('#LIGNE{{ newLine.NO_PO }}').remove();
                            $('#LIGNE{{ newLine.NO_PO }}detail').remove();
                            $('#LIGNE{{ newLine.NO_PO }}JS').remove();
                        }
                    });
                }
            }
            $(function() {
                $( ".datepicker" ).datepicker({
                    showOn: "button",
                    changeYear: true,
                    changeMonth: true,
                    buttonImage: "{{ baseUrl('IconeV2/Global/deadline-change.svg') }}",
                    buttonImageOnly: true,
            /* 		minDate: "-3M",
                    maxDate: "+1M", */
                    showAnim: "fade",
                    dateFormat: "{{ 'dd/mm/yy' | paramDateFormat }}"
                    
                });

                /* TODO */ 
                
                {{ tradDatePickers() }}
                $.datepicker.setDefaults($.datepicker.regional['fr']);
            });
        </script>	
    </td>
</tr>