<div class="colonne2">
    <div class="row">
        {{ inputAdvance('TEXT', {
            'titre': 'Délai d\'Appro. (Jours)' | trad,
            'name': 'SSTOCKLO[DELAI_APP]',
            'value': stockLocal.DELAI_APP ? stockLocal.DELAI_APP: 0,
            'pathValidator' : path('Ajax.validator.integer'),
            'paramsValidator': "{'sizeMin' : '0', 'controleByValue': true }",
            'addClass': 'text-right'
        }) }}
    </div>
    <div class="row">
        {{ inputAdvance('TEXT', {
            'titre': strBuild('Stock de protection (@1@)' | trad, [stockArticle.UNITE_STK ?? 'U']),
            'name': 'SSTOCKLO[STK_PRO]',
            'value': stockLocal.STK_PRO ? stockLocal.STK_PRO | qte: 0,
            'pathValidator': path('Ajax.validator.float'),
            'paramsValidator': "{'min' : '0', 'format': " ~ format_qte() ~ "}",
            'addClass': 'text-right',
            'option': stockLocal is defined and stockLocal.TYPE_REA != 'Q' ? 'readonly': ''
        }) }}
    </div>
    <div class="row">
        {{ inputAdvance('TEXT', {
            'titre': strBuild('Conso. Prévue par an (@1@)' | trad, [stockArticle.UNITE_STK ?? 'U']),
            'name': 'SSTOCKLO[CONSO_ANU]',
            'value': stockLocal.CONSO_ANU ? stockLocal.CONSO_ANU | qte: 0,
            'pathValidator': path('Ajax.validator.float'),
            'paramsValidator': "{'min' : '0', 'format': " ~ format_qte() ~ "}",
            'addClass': 'text-right'
        }) }}
    </div>
    <div class="row">
        {{ inputAdvance('SELECT', {
            'titre': 'Type de réappro' | trad,
            'listeValue' : listeTypeReappro,
            'name': 'SSTOCKLO[TYPE_REA]',
            'value': stockLocal.TYPE_REA ?? 'Q',
        }) }}
    </div>
</div>
<div class="colonne2 last">
    <div class="row">
        {{ inputAdvance('TEXT', {
            'titre': strBuild('Quantité Maxi stockable (@1@)' | trad, [stockArticle.UNITE_STK ?? 'U']),
            'name': 'SSTOCKLO[QTE_MAX]',
            'value': stockLocal.QTE_MAX ? stockLocal.QTE_MAX | qte: 0,
            'pathValidator': path('Ajax.validator.float'),
            'paramsValidator': "{'min' : '0', 'format': " ~ format_qte() ~ "}",
            'addClass': 'text-right'
        }) }}
    </div>
    <div class="row">
        {{ inputAdvance('TEXT', {
            'titre': strBuild('Quantité Economique (@1@)' | trad, [stockArticle.UNITE_STK ?? 'U']),
            'name': 'SSTOCKLO[QTE_ECO]',
            'value': stockLocal.QTE_ECO ? stockLocal.QTE_ECO | qte: 0,
            'pathValidator': path('Ajax.validator.float'),
            'paramsValidator': "{'min' : '0', 'format': " ~ format_qte() ~ "}",
            'addClass': 'text-right',
            'option': stockLocal is defined and stockLocal.TYPE_REA != 'Q' ? 'readonly': ''
        }) }}
    </div>
    <div class="row">
        {{ inputAdvance('TEXT', {
            'titre': strBuild('Seuil de commande (@1@)' | trad, [stockArticle.UNITE_STK ?? 'U']),
            'name': 'SEUIL',
            'option': 'disabled',
            'addClass': 'text-right'
        }) }}
    </div>
</div>
<script type="application/javascript">
    $('#' + CSS.escape('input_SSTOCKLO[TYPE_REA]')).on('change', (event) => {
        const seuilCmdInput = $('#input_SEUIL');
        const stkProInput = $('#' + CSS.escape('input_SSTOCKLO[STK_PRO]'));
        const qteEcoInput = $('#' + CSS.escape('input_SSTOCKLO[QTE_ECO]'));

        if ($(event.target).val() === 'Q') {
            seuilCmdInput.prop('readonly', false);
            stkProInput.prop('readonly', false);
            qteEcoInput.prop('readonly', false);
        } else {
            seuilCmdInput.prop('readonly', true);
            stkProInput.prop('readonly', true);
            qteEcoInput.prop('readonly', true);
        }
    });

    $(window).on('load', () => {
        $('#input_SEUIL').val(getSeuilValue());
    })

    $('#' + CSS.escape('input_SSTOCKLO[DELAI_APP]')).on('change', () => {
        $('#input_SEUIL').val(getSeuilValue());
    });

    $('#' + CSS.escape('input_SSTOCKLO[STK_PRO]')).on('change', () => {
        $('#input_SEUIL').val(getSeuilValue());
    });

    $('#' + CSS.escape('input_SSTOCKLO[CONSO_ANU]')).on('change', () => {
        $('#input_SEUIL').val(getSeuilValue());
    });

    function getSeuilValue () {
        return (
            parseFloat($('#' + CSS.escape('input_SSTOCKLO[STK_PRO]')).val().replace(' ', '')) +
            parseFloat(
                (parseFloat($('#' + CSS.escape('input_SSTOCKLO[CONSO_ANU]')).val().replace(' ', '')) / 365) *
                parseFloat($('#' + CSS.escape('input_SSTOCKLO[DELAI_APP]')).val().replace(' ', ''))
            )
        ).toFixed(3)
    }
</script>
