<form method="POST" id="formulaireGeneral" enctype="multipart/form-data" class="box-form clearfix">
   <input type="hidden" name="ajout-ordre" id="ajout-ordre" value="{{ docAtt.NO_ORDRE }}" />
    <input type="hidden" name="NO_DA" id="NO_DA" value="{{ NO_DA }}" />
    
    {% if NO_DA == 'AO_ENTET' %}
        <input type="hidden" name="postAo" id="postAo" value="{{ post.postAo }}" />
    {% endif %}

    {% if NO_DA == 'BR_RECEP' and idDoc != '' %}
        <input type="hidden" name="idDocBr" id="idDocBr" value="{{ docAtt.NO_ORDRE }}" />
        <input type="hidden" name="nameDocBr" id="nameDocBr" value="{{ docAtt.NEW_NAME }}" />
    {% endif %}

    {% if typeAccCadre == 'ACC_CONF' %}
        <div class="colonne2">
            <div class="row">
                {{ inputAdvance('TEXT', {
                    'titre': 'Titre' | trad,
                    'name': 'ajout-titre',
                    'value': docAtt.TITRE,
                    'pathValidator': path('Ajax.validator.isStringAvecEspace'),
                    'paramsValidator': "{'sizeMin': '1', 'sizeMax': '60'}",
                    'option': 'readOnly',
                    'obligatoire': true
                }) }}
            </div>
        </div>
        <div class="clearfix row single">
            {{ inputAdvance('FILE', {
                'name': 'docGlobal',
                'value': docAtt.NOM_ORI | convert_encoding('UTF-8', 'ISO-8859-1')
            }) }}
        </div>
    <input type="hidden" name="ajout-pj" value="{{ docAtt.TYPE_PJ | e('html_attr') }}" />
    <input type="hidden" name="ajout-dt_paru" value="{{ docAtt.DT_PARUT | dateTrad | e('html_attr') }}" />
    <input type="hidden" name="AUTEUR" value="{{ docAtt.AUTEUR | e('html_attr') }}" />
    <input type="hidden" name="ajout-dt_vali" value="{{ docAtt.DT_VALID | e('html_attr') }}" />
    <input type="hidden" name="CENTRE" value="{{ docAtt.CENTRE | e('html_attr') }}" />
    <input type="hidden" name="ajout-com" value="{{ docAtt.CONTMEMO | e('html_attr') }}" />

    {% else %}
        <div class="colonne2" {{ NO_DA == 'AO_ENTET' ? 'style="display: none"' : '' }}>
            <div class="row">
                {{ inputSelect('Type' | trad, 'ajout-pj', tableau_pj, docAtt.TYPE_PJ) }}
            </div>
        </div>
        <div class="colonne2">
            <div class="row">
                {{ inputAdvance('TEXT', {
                    'titre': 'Titre' | trad,
                    'name': 'ajout-titre',
                    'value': docAtt.TITRE,
                    'pathValidator': path('Ajax.validator.isStringAvecEspace'),
                    'paramsValidator': "{'sizeMin': '1', 'sizeMax': '60'}",
                    'option': (NO_DA == 'PANIER' and modifDoc) ? 'readonly' : '',
                    'obligatoire': true
                }) }}
            </div>
        </div>
        <div class="colonne2 last">
            {% if NO_DA in ['SOCIETE', 'CENTRE', 'FOURNISS', 'GRPFOU'] %}
                <div class="row">
                    {{ inputSwitch('Ajouté en PJ des commandes' | trad, 'ajout-pj_commande', docAtt.PJ_CDE) }}
                </div>
            {% endif %}
        </div>
        <div class="clearfix row single">
            {% if NO_DA == 'PANIER' and modifDoc %}
                <script>
                    if (typeof jForm === 'undefined') {
                        var jForm = new FormData();
                    }
                </script>
            {% else %}
                {{ inputAdvance('FILE', {
                    'name': 'docGlobal',
                    'value': docAtt.NOM_ORI | convert_encoding('UTF-8', 'ISO-8859-1')
                }) }}
            {% endif %}
        </div>
        <div class="colonne2">
            <div class="row">
                {{ inputDate('Date de parution' | trad, "ajout-dt_paru", docAtt.DT_PARUT | dateTrad, '') }}
            </div>
            <div class="row">
                {{ inputAdvance('ZOOMADVANCE', {
                    'titre': 'Auteur' | trad,
                    'name': 'AUTEUR',
                    'obligatoire': true,
                    'pahtZoom': path('Ajax.liste.utilisateur'),
                    'entity': 'HASTUTIL',
                    'titleZoom': 'Liste des utilisateurs' | trad,
                    'pathConvert': path('Ajax.outil.convertLibelle'),
                    'convertLibelle': 'convertLibelleGlobal',
                    'pathValidator': path('Ajax.validator.zoom'),
                    'paramsValidator': "{'entity': 'HASTUTIL', 'nomChamp': 'Auteur'}",
                    'value': docAtt.AUTEUR
                }) }}
            </div>
        </div>
        <div class="colonne2 last">
            <div class="row">
                {{ inputAdvance('DATE', {
                    'titre': 'Date fin de validité' | trad,
                    'name': "ajout-dt_vali",
                    'value': (docAtt.DT_VALID != '00000000' ? docAtt.DT_VALID | dateTrad : ''),
                    'pathValidator': path('Ajax.validator.date')
                }) }}
            </div>
            <div class="row" {{ NO_DA == 'AO_ENTET' ? 'style="display: none"' : '' }}>
                {{ inputAdvance('ZOOMADVANCE', {
                    'titre': 'Centre' | trad,
                    'name': 'CENTRE',
                    'pahtZoom': path('Ajax.liste.centre'),
                    'paramZoom': filterSociete is not empty ? {'filter_CODE_STE': filterSociete} : null,
                    'entity': 'Centre',
                    'titleZoom': 'Liste des centres' | trad,
                    'pathConvert': path('Ajax.outil.convertLibelle'),
                    'convertLibelle': 'convertLibelleGlobal',
                    'pathValidator': path('Ajax.validator.zoom'),
                    'paramsValidator': {
                        'entity': 'Centre',
                        'nomChamp': 'Centre',
                        'null': 'true'
                    } | merge(filterSociete is not empty ? {'filter_CODE_STE': filterSociete} : {}),
                    'value': docAtt.CENTRE,
                    'obligatoire': false
                }) }}
            </div>
        </div>
        <div class="clearfix row single">
            <label>{{ 'Commentaire' | trad }}</label>
            <textarea name="ajout-com" rows="10" cols="50" class="form-control form-control-sm" id="ajout-com">{{ docAtt.CONTMEMO }}</textarea>
        </div>
    {% endif %}
    <div class="row" {% if NO_DA=='DOA' or NO_DA=='DOAAction' %}style="position: absolute;width: 200px;top: -15px;right: 25px;"{% endif %}>
        <button type="button" class="principal button button_right" id="btnEnvoyer">{{ 'Enregistrer'|trad }}</button>
        {% if NO_DA=='FAC_ENT' %}
            {{ Button('Annuler' | trad, false, path('Facture.DocumentsRattaches.docRattache', {numFact: id}) , '', {}, false, 'button_right') }}
        {% elseif NO_DA=='BR_RECEP' and id %}
            {{ Button('Annuler' | trad, false, path('GlobalApplication.DocumentRattaches.document', {MODULE:'suiviBR', id: id}) , '', {}, false, 'button_right') }}
        {% elseif NO_DA=='ACD' %}
            {{ Button('Annuler' | trad, false, path('Contrat.accord-cadre.docRattache', {id: id, type: typeAccCadre}) , '', {}, false, 'button_right') }}
        {% elseif NO_DA=='MARCHES' %}
            {{ Button('Annuler' | trad, false, path('Contrat.marche.docRattache', {id: id}) , '', {}, false, 'button_right') }}
        {% elseif NO_DA=='ARTFOURN' %}
            {{ Button('Annuler' | trad, false, path('Fournisseur.DocumentArticles.documentArticlesFournisseur', {MODULE:MODULE, id: id}) , '', {}, false, 'button_right') }}
        {% elseif NO_DA=='DOA' %}
            <a class="secondaire button button_right" onClick="triggerTab('document');">{{ 'Annuler' | trad }}</a>
        {% elseif NO_DA=='DOAAction' %}
            <a class="secondaire button button_right" onClick="triggerTab('divModulable2');">{{ 'Annuler' | trad }}</a>
        {% elseif NO_DA == 'AO_ENTET' and typeAccCadre == 'ACC_CONF' %}
            <a class="secondaire button button_right" onClick="backToAoEntete();">{{ 'Annuler' | trad }}</a>
        {% elseif NO_DA == 'AO_ENTET' or NO_DA == 'BR_RECEP' %}
            {{ Button('Annuler' | trad, false, pathBack , '', {}, false, 'button_right') }}
        {% elseif NO_DA=='PANIER' %}
            <button class="button secondaire button_right" type="button" onClick="document.querySelector('#ongletdoc{{id}} a').click();">{{ 'Annuler' | trad }}</button>
        {% elseif id %}
            {{ Button('Annuler' | trad, false, path('GlobalApplication.DocumentRattaches.document', {MODULE:MODULE, id: id}) , '', {}, false, 'button_right') }}
        {% endif %}
    </div>
</form>

<script>

    $('#btnEnvoyer').click(function() {

        if ($('#text_docGlobal .error').is(':visible')) {
            alert($('#text_docGlobal .error').html());
            return;
        }

        activeLoader();
        //var jForm = new FormData();
        jForm.append("MODULE", '{{ MODULE }}');
        jForm.append("ajout-ordre", $('[name="ajout-ordre"]').val());
        jForm.append("NO_DA", $('[name="NO_DA"]').val());
        jForm.append("ajout-pj", $('[name="ajout-pj"]').val());
        jForm.append("ajout-titre", $('[name="ajout-titre"]').val());
        if($('[name="ajout-pj_commande"]').is(':checked'))
        {
            jForm.append("ajout-pj_commande", 'On');
        }
        jForm.append("file_name", $('[name="file_name"]').val());
        jForm.append("NOM_FIC", $('[name="NOM_FIC"]').val());
        jForm.append("ajout-dt_paru", $('[name="ajout-dt_paru"]').val());
        jForm.append("ajout-auteur", $('[name="AUTEUR"]').val());
        jForm.append("ajout-dt_vali", $('[name="ajout-dt_vali"]').val());
        jForm.append("ajout-centre", $('[name="CENTRE"]').val());
        jForm.append("ajout-com", $('[name="ajout-com"]').val());
        {% if NO_DA == 'AO_ENTET' and typeAccCadre == 'ACC_CONF' %}
            jForm.append("postAo", $('[name="postAo"]').val());
        {% endif %}
        {% if NO_DA == 'AO_ENTET' and typeAccCadre == 'JUSTIF' %}
            jForm.append("pathBackAnalyse", true);
        {% endif %}
        {% if NO_DA == 'BR_RECEP' and idDoc != '' %}
            jForm.append("idDocBr", $('[name="idDocBr"]').val());
            jForm.append("nameDocBr", $('[name="nameDocBr"]').val());
        {% endif %}


        $.ajax({
            url : '{{ pathEnregistrement }}',
            type: 'POST',
            dataType : 'JSON',
            data: jForm,
            mimeType: "multipart/form-data",
            contentType: false,
            cache: false,
            processData: false,
            success: function (data) {
                if(data.statut == 'O') {
                    {% if NO_DA == 'DOAAction' %}
                        $('#input_ID_DATA_{{ typeAccCadre }}').val(JSON.stringify(data.arrayDoc));
                        $('#label_ID_DATA_{{ typeAccCadre }}').html('<a href="{{ path('GlobalApplication.ChargeDocument.chargeDocument') }}EmplacementFichier/tmp/'+data.arrayDoc.new_name+'" target="_blank">'+data.arrayDoc.file_name+'</a>');
                        triggerTab('divModulable2');
                    {% elseif NO_DA == 'PANIER' %}
                        document.querySelector('#ongletdoc{{id}} a').click();
                    {% elseif typeAccCadre == 'JUSTIF' %} // si on ajoute un justif de choix de fournisseur, à validation on revient sur le choix fournisseur
                        redirectJSWithPost('{{ pathBack }}', data.post);
                    {% else %}
                        redirectJSWithPost(data.path, data.post);
                    {% endif %}
                }
                else {
                    activePopupErreur("{{ path('Ajax.Erreur.popupErreurValid') }}", "{{'Erreur lors de la validation !' | trad }} ", data.erreur);
                }
                desactiveLoader();
            }
        });
    });

</script>