<?php
    $this->PageTitle = 'Solicitações de Cancelamento';

    function cssInativo($cliente, $situacao, $row) {
        $return = ($row%2 == 0?'even':'odd');
        if ($cliente->countTitulosPendentes() > 0 || $situacao == 'I') {
            $return .= ' row-red';
        }

        return $return;
    }
    $options = array();

    if ($model->canCreate()) {
        $options[] = array(
            'label' => FaHtml::iconNovo("Adicionar Nova"),
            'url' => array('create'),
            'linkOptions' => array(
                'target' => '_blank',
                'class' => 'novo'
            )
        );
    }
    $options[] = array(
        'label' => FaHtml::iconSetaClose(),
        'url' => '#',
        'linkOptions' => array('class' => 'search-button')
    );
    $options[] = array(
        'label' => FaHtml::iconRefresh(),
        'url' => 'javascript:void(0);',
        'linkOptions' => array(
            'onclick' => 'reloadFrame();',
            'class' => 'refresh-button'
        )
    );

    $this->menu = $options;
?>

<div class="search-form" style="display:<?php echo (isset($_GET['busca'])) ? 'none' : 'block'; ?>" >
    <?php $this->renderPartial('_search', array('model' => $model)); ?>
</div><!-- search-form -->

<?php
$exibirDatasCancelamento = in_array(User::getPrivilegio(), [16, 19]) || $model->CLC_STATUS == ClientesCancelamentos::STATUS_PROCESSADO;
$exibirTipoAssinatura = $model->podeVerTipoAssinatura();
$this->widget('ext.Utils.widgets.CrmGridView', array(
    'id' => 'admin-grid',
    'dataProvider' => $dataProvider,
    'afterAjaxUpdate'=>'updated',
    'selectableRows' => 1,
    'pager' => Util::getPagerDefaultConfig(),
    'rowCssClassExpression' => 'cssInativo($data->Cliente, $data->Cliente->CLI_SITUACAO, $row)',
    'columns' => array(
        array(
            'name' => 'Cliente',
            'value' => 'Util::getNomeImplantacao($data->Cliente->CLI_NOME, $data->Cliente->CLI_IMPLANTACAO) . Util::getPendencias($data->Cliente, true). Util::getInfoCliente($data->Cliente)',
            'type' => 'raw'
        ),
        array(
            'name' => 'Cliente.CLI_CNPJCPF',
            'value' => 'Util::formataCNPJCPF($data->Cliente->CLI_CNPJCPF)'
        ),
        'Motivo',
        array(
            'header' => 'Motivo Vendedor',
            'name' => 'MotivoVendedor',
            'value' => '$data->MotivoVendedor',
        ),
        array(
            'name' => 'CLC_OBS_CLIENTE',
            'value' => '$data->getObservacaoResumida(200)',
            'type' => 'raw',
            'visible' => !in_array(User::getPrivilegio(), [16, 19])
        ),
        array(
            'header' => 'Vendedor Responsável',
            'name' => 'Vendedor',
            'value' => '$data->Vendedor'
        ),
        array(
            'name' => 'CLC_RESULTADO',
            'value' => '$data->getResultado()',
        ),
        array(
            'name' => 'CLC_STATUS',
            'value' => '$data->getStatus()',
        ),
        'CLC_DATA',
        array(
            'name' => 'CLC_AVISO_PREVIO_FIM',
            'header' => 'Término do aviso prévio',
            'visible' => $exibirDatasCancelamento
        ),
        array(
            'name' => 'CLC_DT_ULTIMA_MENSALIDADE',
            'value' => '$data->CLC_DT_ULTIMA_MENSALIDADE ?? "-"',
            'visible' => $exibirDatasCancelamento,
        ),
        array(
            'name' => 'CLC_DT_ENCERRAMENTO',
            'visible' => $exibirDatasCancelamento
        ),
        array(
            'name' => 'CLC_TIPO_CANCELAMENTO',
            'value' => '$data->getTipoCancelamento()'
        ),
        array(
            'header' => 'Tipo de assinatura',
            'value' => '$data->Cliente->getTipoAssinatura()',
            'visible' => $exibirTipoAssinatura,
        ),
        array(
            'class' => 'CButtonColumn',
            'template' => '{view} {contato} {avaliar}',
            'viewButtonOptions' => array('target' => '_blank'),
            'updateButtonOptions' => array('target' => '_blank'),
            'buttons' => array(
                'view' => array(
                    'label' => 'Exibir',
                    'url' => 'Yii::app()->createUrl("clientesCancelamentos/view", array("id"=>$data->CLC_IDCANCELAMENTO))',
                ),
                'contato' => array(
                    'label' => 'Registro de Contato',
                    'imageUrl' => FaHtml::getImgUrl('ico-solciitacoes.png'),
                    'url' => 'Yii::app()->createUrl("clientesCancelamentos/createContato", array("id"=>$data->CLC_IDCANCELAMENTO))',
                    'options' => array('target' => '_blank'),
                    'visible' => '$data->podeAdicionarAtividade()'
                ),
                'avaliar' => array(
                    'label' => 'Avaliar cancelamento imediato',
                    'imageUrl' => FaHtml::getImgUrl('ico-accept.png'),
                    'url' => 'Yii::app()->createUrl("clientesCancelamentos/aprovarImediato", array("id"=>$data->CLC_IDCANCELAMENTO))',
                    'options' => array('target' => '_blank'),
                    'visible' => '$data->podeAprovarSolicitacao()'
                ),
            )
        )
    ),
));

$cs = Yii::app()->getClientScript();

$css = <<<CSS
    .tooltip {
        z-index: 9999;
    }
    .tooltip > .tooltip-inner {
        max-width: 400px;
    }
CSS;

$cs->registerCss(Util::uid(), $css);