
{% extends 'layout.twig' %}

{% block body %}
    
{% if erreur!='' %}
<script>activePopupErreur('{{ path('Ajax.Erreur.popupErreurValid') }}', '',  {{erreur|slice(6)|raw}});</script>
{% endif %}

   <div class="contenu clearfix"  id="factures">
        <h1>{{ 'Factures et avoirs' | trad }}</h1>  
        {{ ariane() }}
        
     <div class = "tab-content" id = "modificationFacture">
     <div id    = "entete" class   = "tab-pane fade in active">
            	{% if facture.TYPE=='F' %}
                <h2>{{ 'Modification de la facture' | trad~ ' ' ~ facture.NUM_FACT }}</h2>
                {% else %}
                <h2>{{ 'Modification de l\'avoir' | trad~ ' ' ~ facture.NUM_FACT }}</h2>
                {% endif %}
            	<form action="" method="post" name="form1_facture" id="form1_facture" class="box-form clearfix" >
				    <input type="hidden" id="submitForce" name="submitForce" value="0" />
            		<input type="hidden" name="NUM_FACT" id="NUM_FACT" value="{{ facture.NUM_FACT }}" />
            		<input type="hidden" name="TYPE" id="TYPE" value="{{ facture.TYPE }}" />
                    <input type="hidden" name="deviseSociete" id="deviseSociete" value="{{ deviseSociete }}" />
                    <input type="hidden" name="deviseBDD" id="deviseBDD" value="{{ deviseBDD }}" />
            		<div class="infos_societe">
                        <div class="societe">
                            {{ inputAdvance('ZOOMADVANCE', {
                                titre: 'Société' | trad,
                                name: 'societe',
                                pahtZoom: path('Ajax.liste.societe'),
                                entity: 'Societe',
                                titleZoom: 'Liste des sociétés' | trad,
                                pathValidator: path('Ajax.validator.zoom'),
                                paramsValidator: {
                                    entity: 'Societe',
                                    nomChamp: 'Société' | trad,
                                    null: false
                                } | json,
                                obligatoire: true,
                                value: facture.CODE_STE,
                                pathConvert: path('Ajax.outil.convertLibelle'),
                                convertLibelle: 'convertLibelleGlobal',
                                option: (facture.hasAffectations ? 'readonly' : ''),
                            }) }}
                        </div>
                        <div class="num_enregistrement">
                            {{ inputAdvance('TEXT', {
                                'titre': 'Numéro d\'enregistrement' | trad,
                                'name' : 'numEnregistrement',
                                'value' : facture.NUM_FACT,
								'option' : 'readOnly',
                                'obligatoire' : true,
                            }) }}
                        </div>
                        <div class="libelle_societe last">
                            {{ inputAdvance('TEXT', {
                                'titre': 'Libellé' | trad,
                                'name' : 'LIB_COMPT',
                                'value' : facture.LIB_COMPT,
                                'pathValidator' : path('Ajax.validator.isStringAvecEspace'),
                                'paramsValidator' : "{'nomChamp' : '"~ 'Libellé' | trad ~"', 'sizeMin' : "~ (roles.ORDONANCE == true ? '1' : '0') ~", 'sizeMax' : '120'}",
                                'obligatoire' : roles.ORDONANCE ?? false,
                            }) }}
                        </div>
                    </div>
                    <div class="fournisseur">
                        <div class="infos_fournisseur colonne3" >
                            <div class="row">
                                {{ inputAdvance('ZOOMADVANCE', {
                                    titre: 'Fournisseur'|trad,
                                    name: 'CODE_FOUR',
                                    value: facture.CODE_FOUR,
                                    pahtZoom: path('Ajax.liste.fournisseur'),
                                    entity: 'Fourniss',
                                    titleZoom: 'Liste des fournisseurs'|trad,
                                    pathConvert: path('Ajax.outil.convertLibelle'),
                                    convertLibelle: 'convertLibelleGlobal',
                                    pathValidator: path('Ajax.validator.zoom'),
                                    paramsValidator: {
                                        entity: 'Fourniss', 
                                        nomChamp: 'Fournisseur'|trad|e('js')|raw, 
                                        null: false
                                    } | json,
                                    obligatoire: true,
                                    myFunction: 'changeFournisseur',
                                    myParams: [path('Facture.ajax.factureEnteteFournisseur'), this.value]|json,	
                                    option: (facture.hasAffectations ? 'readonly' : ''),	                   
                                }) }}
                            </div>
                            <div class="row">
                            	<input type="hidden" name="FACT_FOU_ORIGIN" id="FACT_FOU_ORIGIN" value="{{ facture.FACT_FOU }}"/>
                                {{ inputAdvance('TEXT', {
                                    'titre': facture.TYPE == 'F'
                                        ? 'Référence Facture Fournisseur' | trad
                                        : 'Référence Avoir Fournisseur' | trad,
                                    'name' : 'FACT_FOU',
                                    'value' : facture.FACT_FOU,
                                    'pathValidator' : path('Ajax.validator.factureFournisseur'),
                                    'paramsValidator' : "{'nomChamp' : '"~ 'Référence fournisseur' | trad ~"', 'codeFournisseur' : $('\#input_CODE_FOUR').val(), 'sizeMin' : "~ (roles.factFou == true ? '1' : '0') ~", 'sizeMax' : '60', 'FACT_FOU_ORIGIN' : $('\#FACT_FOU_ORIGIN').val()}",
                                    'obligatoire' : roles.factFou ?? false,
                                }) }}
                            </div>
                        </div>
                        <div class="date colonne3">
                        	<div class="row">                                
                                {{ inputAdvance('ZOOM', {
                                    'titre': 'N° de commande' | trad,
                                    'name' : 'NUM_CDE',
                                    'value' : (post.input_NUM_CDE==''? (facture.NUM_CDE!=0 ? facture.NUM_CDE : '') : post.input_NUM_CDE),
                                    'pahtZoom' : path('Ajax.liste.caEntet'),
                                    'paramZoom' : "{'CODE_STE' : document.getElementById('input_societe').value, 'CODE_FOU' : document.getElementById('input_CODE_FOUR').value}",
                                    'titleZoom' : 'Liste des numéros de commande' | trad,
                                    'valueTextZoom' : 'NUM_CDE',
                                    'pathValidator' : path('Ajax.validator.numeroCde'),
                                    'paramsValidator' : "{'entity' : 'CaEntet', 'nomChamp' : '"~ 'Numéro de commande' | trad ~"', 'CODE_STE' : document.getElementById('input_societe').value, 'CODE_FOU' : document.getElementById('input_CODE_FOUR').value}",
                                    'myFunction' : 'changeCde',
                                    'myParams' : '["'~path('Facture.ajax.factureEnteteNumCde')~'" , this.value, "'~path('Facture.ajax.calculDatePeriode')~'", "form1_facture", "modification"]',
                                    'widthPopup' : 'modal_large',
                                }) }}
                            </div>
                            <div class="row">
                                {{ inputAdvance('DATE', { 
									'titre': 'Date d\'émission' | trad,
									'name'  : 'DATE_FAFO',
                                    'value' : facture.DATE_FAFO | dateTrad,  
									'pathValidator' : path('Ajax.validator.date'),
									'paramsValidator' : "{'nomChamp' : '"~ 'Date d\'émission' | trad |e('js')|raw ~"', 'null': '"~ (roles.DATE_FAFO == true ? false : true) ~"', 'dateMax' : '"~ dateJour ~"'}",
                                    'myFunction' : 'calculDateFacturefournisseur',
                                    'myParams' : '["'~path('Facture.ajax.calculDatePeriode')~'", "form1_facture"]',							
									'obligatoire' : roles.DATE_FAFO ?? false,
								}) }}
                            </div>
                        </div>
                        <div class="montant colonne3 last" >
                            <div class="row montant_fact">
                                {{ inputAdvance('DEVISE', {
                        		    'titre': 'Montant HT' | trad,
                        		    'name' : 'TOTAL_HT',
                                    'value' : facture.TOTAL_HT|number_format(2, '.', ' '),  
                        		    'pathValidator' : path('Ajax.validator.float'),
                        		    'paramsValidator' : "{'nomChamp' : '"~ 'Montant HT' | trad ~"', 'format' : "~getConst('formatMontant')~"}",
                                    'myFunction' : 'calculTTC',
                                    'myParams' : '["input_TOTAL_HT", "input_TAUX_TVA","input_TOTAL_TTC","input_MNT_TVA"]',
								    'option' : (facture.AFF_ENREG|boolSql == '1' ? 'readonly' : ''),
                                    'DEVISE' : (post.input_DEVISE==''? facture.DEVISE : post.input_DEVISE),	
                        		}) }}
                            </div>
                            <div class="row montant_fact">
                                {{ inputAdvance('DEVISE', {
                        		    'titre': 'Montant TTC' | trad,
                        		    'name' : 'TOTAL_TTC',
                                    'value' : facture.TOTAL_TTC|number_format(2, '.', ' '), 
                        		    'pathValidator' : path('Ajax.validator.float'),
                        		    'paramsValidator' : "{'nomChamp' : '"~ 'Montant TTC' | trad ~"', 'format' : "~getConst('formatMontant')~"}",
                                    'myFunction' : 'calculTVA',
                                    'myParams' : '[this, "input_TOTAL_HT", "input_MNT_TVA"]',	
								    'option' : (facture.AFF_ENREG|boolSql == '1' ? 'readonly' : ''),
                                    'DEVISE' : (post.input_DEVISE==''? facture.DEVISE : post.input_DEVISE),
                        		}) }}
                            </div>
                        </div>
                    </div>
                    <div class="reglement">
                        <div class="paiement colonne3" >
                            <div class="row">
                                {{ inputAdvance('ZOOMADVANCE', {
                                    titre: 'Conditions de paiement' | trad,
                                    name: 'COND_PAIE',
                                    value: facture.COND_PAIE,
                                    entity: 'Condpaie',
                                    pathConvert: path('Ajax.outil.convertLibelle'),
                                    convertLibelle: 'convertLibelleGlobal',
                                    titleZoom: 'Liste des conditions de paiement' | trad,
                                    pahtZoom: path('Ajax.liste.conditionPaiement'),
                                    pathValidator: path('Ajax.validator.zoom'),
                                    paramsValidator: {entity: 'Condpaie', nomChamp : 'Condition de paiement' | trad, null: false}|json,
                                    option: 'readonly'
                                }) }}
                            </div>
                            <div class="row">
                                {{ inputAdvance('ZOOMADVANCE', {
                                    'titre': 'Mode de paiement' | trad,
                                    'name' : 'modepaie',
                                    'value' : facture.MODE_REG, 
									'entity' : 'Modepaie',
									'pathConvert' : path('Ajax.outil.convertLibelle'),
									'convertLibelle' : 'convertLibelleGlobal',
                                    'pahtZoom' : path('Ajax.liste.modePaiement'),
                                    'titleZoom' : 'Liste des modes de paiement' | trad,
                                    'pathValidator' : path('Ajax.validator.zoom'),
                                    'paramsValidator' : "{'entity' : 'Modepaie', 'nomChamp' : '"~ 'Mode de paiement' | trad ~"', 'null' : true}",
                                }) }}
							</div>  
                            {%  if roles.ORDONANCE != false %}
                            <div class="row">
                                {{ inputAdvance('ZOOM', {
                                    'titre': 'Ordonnance' | trad,
                                    'name' : 'ORDO',
                                    'value' : facture.ORDO,
                                    'pahtZoom' : path('Ajax.liste.ordonance'),
                                    'titleZoom' : 'Liste des ordonnances' | trad,
                                    'pathValidator' : path('Ajax.validator.zoom'),
                                    'paramsValidator' : "{'entity' : 'Ordonanc', 'nomChamp' : '"~ 'Ordonance' | trad ~"', 'null' : true}",
                                }) }}
                            </div>                          
                            {% endif %}
                            {% if facture.DATESCAN != '00000000' %}
                            <div class="row">
                                {{ inputAdvance('DATE', { 
                                    'titre': 'Date numérisation' | trad,
                                    'name'  : 'DATESCAN',
                                    'value'  : facture.DATESCAN | dateTrad,
                                    'option' : 'readOnly',
                                }) }}
							</div> 
                            {% endif %}
                        </div>
                        <div class="date colonne3">
                            <div class="row">
                                {{ inputAdvance('DATE', { 
                                    'titre': 'Date enregistrement facture' | trad,
                                    'name'  : 'DATE_ENR',
                                    'value'  : facture.DATE_ENR | dateTrad,
                                    'pathValidator' : path('Ajax.validator.date'),
                                    'paramsValidator' : "{'nomChamp' : '"~ 'Date enregistrement facture' | trad ~"', 'dateMax' : '"~ dateJour ~"'}",
                                    'option' : (roles.DATE_ENR_MODIF or droits.HA_FA_DENR ? '' : 'readOnly'),			
                                    'obligatoire' : true,
                                }) }}
                            </div>
                            <div class="row">
                                {{ inputAdvance('DATE', { 
                                    'titre': 'Date d\'effet' | trad,
                                    'name'  : 'DATE_PER',
                                    'value'  : facture.DATE_PER | dateTrad,
                                    'pathValidator' : path('Ajax.validator.datePer'),
                                    'paramsValidator' : "{'nomChamp' : '"~ 'Date effet' | trad ~"'}",			
                                    'obligatoire' : true,
                                }) }}
                            </div>
                            <div class="row">
                                {{ inputAdvance('DATE', { 
                                    'titre' : 'Date d\'échéance' | trad,
                                    'name'  : 'DTAE_ECH',
                                    'value'  : facture.DTAE_ECH | dateTrad,
                                    'pathValidator' : path('Ajax.validator.date'),
                                    'paramsValidator' : "{'nomChamp' : '"~ 'Date d\'échéance' | trad |e('js')|raw ~"'}",                            
                                    'option' : (roles.DTAE_ECH_MODIF ? '' : 'readOnly'),			
                                }) }}
                            </div>
                        </div>
                        <div class="montant colonne3 last" >
                            <div class="row montant_fact">
                                <input type="hidden" name="TAUX_TVA" id="input_TAUX_TVA" value="{{ TAUX_TVA }}" />
                                {{ inputAdvance('DEVISE', {
                        		    'titre': 'Montant TVA' | trad,
                        		    'name' : 'MNT_TVA',
                                    'value'  : (facture.TOTAL_TTC-facture.TOTAL_HT)|number_format(2, '.', ' '),
                        		    'pathValidator' : path('Ajax.validator.float'),
                        		    'paramsValidator' : "{'nomChamp' : '"~ 'Montant TVA' | trad ~"', 'format' : "~getConst('formatMontant')~"}",
                                    'myFunction' : 'calculTTCByTVA',
                                    'myParams' : '[this, "input_TOTAL_TTC", "input_TOTAL_HT"]',	
                                    'option' : (facture.AFF_ENREG|boolSql == '1' ? 'readonly' : ''),
                                    'DEVISE' : (post.input_DEVISE==''? facture.DEVISE : post.input_DEVISE),
                        		}) }}
                            </div>
                            <div class="row">
                                {{ inputAdvance('ZOOMADVANCE', {
                                    'titre': 'Devise' | trad,
                                    'name' : 'DEVISE',
                                    'value'  : (post.input_DEVISE==''? facture.DEVISE : post.input_DEVISE),
                                    'pahtZoom' : path('Ajax.liste.devise'),
                                	'paramZoom' : "{'not_INEURO' : 1, 'ouvert' : 1}",
                                    'entity' : 'Devise',
                                    'titleZoom' : 'Liste des devises' | trad,
                                    'pathConvert' : path('Ajax.outil.convertLibelle'),
                                    'convertLibelle' : 'convertLibelleGlobal',
                                    'pathValidator' : path('Ajax.validator.devise'),
                                    'paramsValidator' : "{'entity' : 'Devise', 'nomChamp' : '"~ 'Devise' | trad ~"'}",
                                    'myFunction' : 'changeDevise',
                                    'myParams' : '["'~path('Facture.ajax.devise')~'" , this.value]',	
                                    'obligatoire' : true,
                                    'option' : (facture.AFF_ENREG|boolSql == '1' ? 'readonly' : ''),
                                }) }}
                            </div>
                            <div class="row">
                                {% if deviseBDD == contenaire.devise %} {% set tx_devise_hidden = 1 %} {% endif %}
                                 {% if deviseBDD != deviseSociete and deviseSociete != contenaire.devise %} {% else %} {% set tx_devSte_hidden = 1 %} {% endif %}
                                <label id="labelValeurDevise" {% if tx_devise_hidden and tx_devSte_hidden %}style="display:none;"{% endif %}>{{ 'Valeur devise :' | trad }}</label>
                                <div id="txDevise" {% if tx_devise_hidden %}style="display:none;"{% endif %}>
                                    {{ inputAdvance('DEVISE', {
                                        'name' : 'TX_DEVISE',
                                        'value' : facture.TX_DEVISE | number_format(7, '.', ' '),		
                                        'pathValidator' : path('Ajax.validator.float'),
                                        'paramsValidator' : "{'nomChamp' : '"~ 'Valeur devise' | trad ~"', 'format' : 9.7}",
                                        'obligatoire' : true,
                                        'DEVISE' : deviseBDD,
                                        'option' : (facture.AFF_ENREG|boolSql == '1' ? 'readonly' : ''),
                                    }) }}
                                </div>
                                <div class="row" id="txDeviseSTE" {% if tx_devSte_hidden %}style="display:none;"{% endif %}>
                                    {{ inputAdvance('DEVISE', {
                                        'name' : 'TX_DEVSTE',	
                                        'value' : facture.TX_DEVSTE | number_format(7, '.', ' '),		
                                        'pathValidator' : path('Ajax.validator.float'),
                                        'paramsValidator' : "{'nomChamp' : '"~ 'Valeur devise' | trad ~"', 'format' : 9.7}",
                                        'obligatoire' : true,
                                        'DEVISE' : deviseSociete,
                                        'option' : (facture.AFF_ENREG|boolSql == '1' ? 'readonly' : ''),
                                    }) }}
                                </div>
                            </div>
                        </div>
                    </div>
                    <div class="champs_supplementaires">
						{% for champSupp in listeCS %}
						<div class="colonne3{% if loop.index is divisible by(3) %} last{% endif %}">
                            {{ inputChampSupplementaire('FAC_ENT', codEnr, champSupp.NUM_FIX, attribute(post,'CS_EXTENTION##FAC_ENTdebut-----fin'~codEnr~'debut-----fin'~champSupp.NUM_FIX), false, false, '', false, '', true, null, '', document.getElementById('input_societe').value, document.getElementById('input_DATE_PER').value) }}
                        </div>
						{% endfor %}
                    </div>
                    
                    <div class="reglementBanque">
                    	<div class="titre_partie">{{ 'Règlement :' | trad }}</div>
						<div class="colonne2" >
                            <div class="row">
                                {{ inputAdvance('TEXT', {
                                    'titre' : 'Raison sociale' | trad,
                                    'name' : 'RS_REGLMT',
                                    'value' : (post.RS_REGLMT==''? facture.RS_REGLMT|trim : post.RS_REGLMT), 
                                    'pathValidator' : path('Ajax.validator.isStringAvecEspace'),
                                    'paramsValidator' : "{'nomChamp' : '"~ 'Raison sociale' | trad ~"', 'sizeMin' : '0', 'sizeMax' : '45'}",
                                }) }}
                            </div>
                            <div class="row">
                                {{ inputAdvance('TEXTAREA', {
                                    'titre': 'Adresse' | trad,
                                    'name'  : 'AD_REGLMT',
                                    'value' : (post.AD_REGLMT==''? facture.AD_REGLMT : post.AD_REGLMT),
                                    'pathValidator' : path('Ajax.validator.isStringAvecEspace'),
                                    'paramsValidator' : "{'nomChamp' : '"~ 'Adresse' | trad ~"', 'sizeMin' : '0', 'sizeMax' : '90'}",
                                }) }}
							</div>
                            <div class="row">
                                <input type="hidden" name="LONGCP" id="LONGCP" value="{{ country.LONGCP }}" />
                                {{ inputAdvance('TEXT', {
                                    'titre': 'Code Postal' | trad,
                                    'name' : 'CPREGLMT',
                                    'value' : (post.CPREGLMT==''? facture.CPREGLMT|trim : post.CPREGLMT), 
                                    'pathValidator' : path('Ajax.validator.isStringAvecEspace'),
                                    'paramsValidator' : "{'nomChamp' : '"~ 'Code Postal' | trad ~"', 'sizeMin' : '0', 'sizeMax' : document.getElementById('LONGCP').value}",
                                }) }}
                            </div>
                            <div class="row">
                                {{ inputAdvance('TEXT', {
                                    'titre': 'Ville' | trad,
                                    'name' : 'VILREGLMT',
                                    'value' : (post.VILREGLMT==''? facture.VILREGLMT|trim : post.VILREGLMT), 
                                    'pathValidator' : path('Ajax.validator.isStringAvecEspace'),
                                    'paramsValidator' : "{'nomChamp' : '"~ 'Ville' | trad ~"', 'sizeMin' : '0', 'sizeMax' : '35'}",
                                }) }}
                            </div>
                            <div class="row">
                                {{ inputAdvance('SELECT', {
                                    'titre': 'Pays' | trad,
                                    'name' : 'PY_REGLMT',
                                    'listeValue' : pays,
                                    'value' : (post.PY_REGLMT==''? facture.PY_REGLMT|trim : post.PY_REGLMT),
                                    'optionVide' : false,
                                    'myFunction' : 'getLONGCP',
                                    'myParams' : '["'~path('Facture.ajax.getLONGCP')~'" ,this.value]',
                                }) }}
                            </div>
                        </div>
                        <div class="colonne2 last">
                            <div class="row">
                                {{ inputAdvance('TEXT', {
                                    'titre': 'Domiciliation' | trad,
                                    'name' : 'DOM_BANQ',
                                    'value' : (post.DOM_BANQ==''? facture.DOM_BANQ|trim : post.DOM_BANQ), 
                                    'pathValidator' : path('Ajax.validator.isStringAvecEspace'),
                                    'paramsValidator' : "{'nomChamp' : '"~ 'Domiciliation' | trad ~"', 'sizeMin' : '0', 'sizeMax' : '26'}",
                                }) }}
                            </div>
                            <div class="row" id="compte">
                            	<div id="div_CODE_BANQ">
                                    {{ inputAdvance('TEXT', {
                        		        'titre': 'Banque' | trad,
                                        'name' : 'CODE_BANQ',
                                        'value' : (post.CODE_BANQ==''? facture.CODE_BANQ|trim : post.CODE_BANQ), 
                                        'pathValidator' : path('Ajax.validator.isStringAvecEspace'),
                                        'paramsValidator' : "{'nomChamp' : '"~ 'Banque' | trad ~"', 'sizeMin' : '0', 'sizeMax' : '5'}",
                                    }) }}
                                </div>
                                <div id="div_CODE_GUIC">
                                    {{ inputAdvance('TEXT', {
                        		        'titre' : 'Guichet' | trad,
                                        'name' : 'CODE_GUIC',
                                        'value' : (post.CODE_GUIC==''? facture.CODE_GUIC|trim : post.CODE_GUIC), 
                                        'pathValidator' : path('Ajax.validator.isStringAvecEspace'),
                                        'paramsValidator' : "{'nomChamp' : '"~ 'Guichet' | trad ~"', 'sizeMin' : '0', 'sizeMax' : '5'}",
                                    }) }}
                                </div>
                                <div id="div_NUM_COMPT">
                                    {{ inputAdvance('TEXT', {
                        		        'titre' : 'N° Compte' | trad,
                                        'name' : 'NUM_COMPT',
                                        'value' : (post.NUM_COMPT==''? facture.NUM_COMPT|trim : post.NUM_COMPT), 
                                        'pathValidator' : path('Ajax.validator.isStringSansEspace'),
                                        'paramsValidator' : "{'nomChamp' : '"~ 'N° Compte' | trad ~"', 'sizeMin' : '0', 'sizeMax' : '11'}",
                                    }) }}
                                </div>
                                <div class="last" id="div_CLE_RIB">
                                    {{ inputAdvance('TEXT', {
                        		        'titre' : 'Clé RIB' | trad,
                                        'name' : 'CLE_RIB',
                                        'value' : (post.CLE_RIB==''? facture.CLE_RIB|trim : post.CLE_RIB), 
                                        'pathValidator' : path('Ajax.validator.isStringSansEspace'),
                                        'paramsValidator' : "{'nomChamp' : '"~ 'Clé RIB' | trad ~"', 'sizeMin' : '0', 'sizeMax' : '2'}",
                                    }) }}
                                </div>
                            </div>
                            <div class="row" id="ibanLabel">
                                <label>{{ 'N° de compte bancaire internationnal (IBAN)' | trad }}</label>
                            </div>
                            <div class="row" id="iban">
								<div id="div_IBANPAYS">
                                    {{ inputAdvance('SELECT', {
                                        'name' : 'IBANPAYS',
                                        'listeValue' : codePays,
                                        'value' : (post.IBANPAYS==''? facture.IBANPAYS|trim : post.IBANPAYS),
                                        'affichageId' : false,
                                    }) }}
                                </div>
                                <div id="div_IBANCLE">
                                    {{ inputAdvance('TEXT', {
                                        'name' : 'IBANCLE',
                                        'value' : (post.IBANCLE==''? (facture.IBANCLE==0?'':facture.IBANCLE|trim) : post.IBANCLE), 
                                        'pathValidator' : path('Ajax.validator.integer'),
                                        'paramsValidator' : "{'sizeMin' : '0', 'sizeMax' : '2'}",
                                        'option' : 	'maxlength="2" onkeyup="pressCleIban($(this), $(\'#input_IBANCPT\'))"',
                                    }) }}
                                </div>
                                <div class="last" id="div_IBANCPT">                                                                   
                                    {{ inputAdvance('TEXT', {
                                        'name' : 'IBANCPT',
                                        'value' : (post.IBANCPT==''? facture.IBANCPT|trim : post.IBANCPT), 
                                        'pathValidator' : path('Ajax.validator.iban'),
                                        'paramsValidator' : "{'IBANPAYS' : document.getElementById('input_IBANPAYS').value, 'IBANCLE' : document.getElementById('input_IBANCLE').value}",
                                        'focusOut' : true,		
                                    }) }}
                                </div>
                            </div>
                            <div class="row">                                
                                {{ inputAdvance('TEXT', {
                                    'titre': 'Code BIC' | trad,
                                    'name' : 'CODEBIC',
                                    'value' : (post.CODEBIC==''? (facture.CODEBIC==''? '' : facture.CODEBIC|trim) : post.CODEBIC|trim), 
                        		    'pathValidator' : path('Ajax.validator.bic'),
                        		    'paramsValidator' : "{'nomChamp' : '"~ 'Code BIC' | trad ~"', 'sizeMin' : '0', 'sizeMax' : '11'}",		
                                }) }}
                            </div>
                        </div>
                    </div>
                    <div class="champs_btn">   
                    	<div class="row">
                			<button type="button" class="button principal button_right" id="terminer">{{ 'Terminer' | trad }}</button>
                            {% if facture.AFF_VALID | boolSql == false %}
                			    <button type="button" class="button secondaire button_right" id="saisieAffectations">{{ 'Saisie affectations' | trad }}</button>
                            {% endif %}
                			<div style="float: right;">{{ arianeAnnuler() }}</div>
                        </div>
                    </div>
                </form>
            </div>
        </div>
    </div>
<script type="text/javascript" src="{{ baseUrl('js/Modules/Facture/CreationFactureEntete.js') }}"></script>
<script>
{% if facture.DEVISE==deviseSociete %}
$('#txDevise').hide();
{% endif %}

$("#input_DATE_FAFO, #input_DATE_ENR").datepicker({
	showOn: "button",
	buttonImage: "{{ baseUrl('IconeV2/Global/deadline-change.svg') }}",
	buttonImageOnly: true,
	showAnim: "fade",
	dateFormat: "{{ "dd/mm/yy" | paramDateFormat }}",
	maxDate: 0
});

$('#terminer').click(
    function sendFord(id)
    {
    	activeLoader();
    	$.ajax({
        	url : '{{ path('Facture.ModificationFacture.creationAffectation', {'action': action}) }}',
            type: 'POST',
		  	dataType : 'JSON',
            data: $('#form1_facture').serialize(),
            success: function (data) {                
                if(data.droit_validation && data.AFF_ENREG){
                    ajaxPopup (data.pathValidation, '{{ 'Validation de la facture N°' | trad }}'+' '+{{facture.NUM_FACT}}, '', '', {'redirectGestion': 1, 'confirmationModification' : '{{ confirmationModification }}' });
                }
                else{
                    document.location.href = '{{ path('Facture.GestionFacture.index') }}';
                }
                
            }, 
            error: function (data){
                desactiveLoader();
                $("#modal-content").addClass("modal_small");
                $("#modal-body").html(data.responseText);
                activePopup();
            } 
        });
        return false;
	}
);

  // On Societe change OR Fournisseur change -> clear NUM_CDE
for( selector of [
    '[name="societe"]',
    '[name="CODE_FOUR"]'
]) {
    document
        .querySelector(selector)
        .addEventListener('change', function(event) {
            document
                .querySelector('[name="NUM_CDE"]')
                .value = '';
            document
                .querySelector('[name="NUM_CDE"]')
                .dispatchEvent(new Event('change'));
        })
}

$('#input_CODE_FOUR').change(function(){
	initCs('{{ path('Ajax.outil.initialisationCS') }}', 'FAC_ENT','FOURNISS', $('#input_CODE_FOUR').val(), '{{ codEnr }}');
});

$('#saisieAffectations').click(
    function sendFord(id)
    {
    	activeLoader();
    	$.ajax({
        	url : '{{ path('Facture.ModificationFacture.creationAffectation', {'action': action}) }}',
            type: 'POST',
		  	dataType : 'JSON',
            data: $('#form1_facture').serialize(),
            success: function (data) {
                if(data.statut=='O')
                {
                	document.location.href = data.path;
                }
                else
                {
                	desactiveLoader();
                    activePopupErreur('{{ path('Ajax.Erreur.popupErreurAlerteEtAvertissement') }}', '', '', '', {'alerte': data.alerte, 'avertissement': data.avertissement, 'action': 'saisieAffectations', 'titrePopup' : data.titrePopup});
                }
            }, 
            error: function (data){
                desactiveLoader();
                $("#modal-content").addClass("modal_small");
                $("#modal-body").html(data.responseText);
                activePopup();
            } 
        });
        return false;
	}
);
</script>
{% endblock %}