<?php
Yii::app()->clientScript->registerScript('search', "
$('.search-button').click(function(){
    $('.search-form').toggle();
    return false;
});
$('.search-form form').submit(function(){
    $('#parametros-unidades-grid').yiiGridView('update', {
        data: $(this).serialize()
    });
    return false;
});
");

Yii::app()->getClientScript()->registerCssFile(Yii::app()->baseUrl.'/css/jquery-ui.css');
Yii::app()->getClientScript()->registerScriptFile(Yii::app()->baseUrl.'/js/jquery-ui.min.js');
?>

<h3 class="text-center">Parámetros</h3>

<?php $form = $this->beginWidget('bootstrap.widgets.TbActiveForm', [
    'id' => 'parametros-unidades-form',
    'enableAjaxValidation' => false,
]); ?>
    <p class="help-block">Campos con <span class="required">*</span> son requeridos.</p>
    <?= $form->errorSummary($model); ?>
    <?= $form->error($model, 'idpadre'); ?>

    <div class="row">
        <div class="span4">
            <?= $form->dropDownListRow($model, 'id_tipo_parametro', TipoParametro::getAll(), [
                'id' => 'tipo_parametro',
                'prompt' => 'Seleccione',
                'class' => 'span4',
                'ajax' => [
                    'type' => 'POST',
                    'url' => CHtml::normalizeUrl(['/Comun/busquedaProceso']), //url to call.
                    // 'update' => '#proceso', //selector to update
                    'beforeSend' => 'function(xkr) {'
                        .' $("#proceso").empty();'
                        .' $("#proceso").append(\'<option value="">Seleccione</option>\');'
                    .' }',
                    'success' => "function (res) {
                        let data = JSON.parse(res);
                        $('#proceso').empty()
                        $('#proceso').append(data.procesos)

                        $('#escenario').empty()
                        $('#escenario').append(data.escenarios)
                    }",
                    'data' => [
                       'tipo_proceso' => 'js:$("#tipo_parametro").val()',
                    ],
                ],
            ]); ?>
        </div>
        <div class="span4">
            <?= $form->dropDownListRow($model, 'id_escenario', CHtml::listData(ParamEscenarios::model()->findAll(['order' => 'descripcion']), 'id_escenario', 'descripcion'), [
                'prompt' => 'Seleccione',
                'id' => 'escenario',
                'class' => 'span4',
                'onChange' => 'getEscenario()',
            ]); ?>
        </div>
        <div class="span4">
            <?= $form->dropDownListRow($model, 'id_proceso', CHtml::listData(Unidad::model()->findAll(['condition' => 'blnborrado=false']), 'idunidad', 'descripcion'), [
                'prompt' => 'Seleccione',
                'id' => 'proceso',
                'class' => 'span4',
                'onChange' => 'getEscenario()',
            ]); ?>
        </div>
    </div>
<?php $this->endWidget(); ?>

<div id="mensajes" class="alert" style="display: none;"></div>
<div id="claves"></div>

<script type="text/javascript">
    function mensaje(text) {
        $('#mensajes').hide('fast')
        $('#mensajes').html('')
        $('#mensajes').html(text)
        $('#mensajes').addClass('alert-danger')
        $('#mensajes').show('fast')
    }

    function getEscenario() {
        let data = {
            id_tipo_parametro: $('#tipo_parametro').val(),
            id_proceso: $('#proceso').val(),
            id_escenario: $('#escenario').val(),
        }
        let urlGetEscenario = "<?= CHtml::normalizeUrl(['EscenarioClaves']) ?>"

        $.post(urlGetEscenario, data, function (res) {
            if ($('#mensajes').is(':visible')) {
                $('#mensajes').hide('fast')
            }

            if (res.error) {
                mensaje(res.mensaje);
                $('#claves').html('');
                return;
            }

            $('#claves').html('');
            $('#claves').html(res.form);
        }, 'json')
    }
</script>
