<style>
    .admin-grid-pendencias > a:hover {
        text-decoration: none !important;
    }
</style>

<?php
    $this->PageTitle = 'Pend&ecirc;ncias';

    $Projetos = FuncionariosProjetos::model()->getProjetos(User::getId());
    if (count($Projetos) == 0) {
        echo 'Voc&ecirc; n&atilde;o tem permiss&atilde;o para ver pend&ecirc;ncias de nenhum projeto';

        return;
    }

    // $botoes = ($model->canUpdate()) ? '{view} {update}' : '{view}';
    $botoes = '{view} {update}';

    if (User::isAdmin()) {
        $botoes .= ' {delete}';
    }

    if (in_array(User::getPrivilegio(), array(1, 2, 3, 12))) {
        $botoes = '{pdf} '.$botoes;
    }

    $imagem = (User::getUser()->FUN_TBL_CADASTRO_SOLICITACOES == 1)?FaHtml::iconNovo():FaHtml::iconBlank();

    $menu = array(
        array('label' => $imagem, 'url' => array('create'), 'linkOptions' => array('target' => '_blank', 'class' => 'novo')),
        array('label' => FaHtml::iconSetaClose(), 'url' => '#', 'linkOptions' => array('class' => 'search-button')),
        array('label' => FaHtml::iconRefresh(), 'url' => 'javascript:void(0);',
              'linkOptions' => array('onclick' => 'reloadFrame();', 'class' => 'refresh-button')),
        );

    $items = array();

    if (User::getPrivilegio() == 4) {
        $items[] =  getItemParams('Teste', "solicitacoes/admin&Solicitacoes[SOL_IDLOCAL][]=4&busca=1");
        $items[] =  getItemParams('Espera Revenda', "solicitacoes/admin&Solicitacoes[SOL_IDLOCAL][]=15&busca=1");
        $items[] =  getItemParams('Orientação Técnica', "solicitacoes/admin&Solicitacoes[SOL_IDLOCAL][]=24&busca=1");

    } else if(User::getPrivilegio() == 14) {
        $items[] =  getItemParams('Teste', "solicitacoes/admin&Solicitacoes[SOL_IDLOCAL][]=4&busca=1");
        $items[] =  getItemParams('Espera Revenda', "solicitacoes/admin&Solicitacoes[SOL_IDLOCAL][]=15&busca=1");
    }

    if (!empty(User::getUser()->FUN_QUALIFICAR_PENDENCIAS)) {
        $usuario_revisor = array(527, 528);
        if(in_array(User::getId(), $usuario_revisor)) {
            $items[] =  getItemParams('Qualificar', "solicitacoes/admin&Solicitacoes[SOL_IDLOCAL][]=23&busca=1&Solicitacoes[SOL_IDREVENDA]=1");
        } else {
            $items[] =  getItemParams('Qualificar', "solicitacoes/admin&Solicitacoes[SOL_IDLOCAL][]=23&busca=1");
        }
        $items[] =  getItemParams('Rascunho', "solicitacoes/admin&Solicitacoes[SOL_IDLOCAL][]=28&busca=1");
    }

    if (User::isRevenda()) {
        $items[] =  getItemParams('Outras Unidades', "solicitacoes/admin&Solicitacoes[OUTRAS_UNIDADES][]=1");
    }

    $menu[] = array(
        'label' => false,
        'url' => 'javascript:void(0);',
        'linkOptions' => array('class' => 'has-sub-item'),
        'itemOptions' => array('class' => 'has-sub-item'),
        'items' => $items
    );

    function getItemParams($label, $url) {

        return array(
                'label' => FaHtml::iconFilters($label),
                'url' => Yii::app()->createUrl($url),
                'itemOptions' => array('class' => 'has-sub-item'),
        );
    }

    $this->menu = $menu;
    Yii::import('ext.qTip2.qTip2');
    qTip2::apply('.tool_tip');

    $dataProvider = $model->search();
?>
<div class="search-form" style="display:<?= ($dataProvider->totalItemCount < 0)?'block':'none';?>" >
    <?php
        $this->renderPartial('_search', array(
            'model'    => $model,
            'Projetos' => $Projetos,
        ));
    ?>
</div><!-- search-form -->
    <?php
if (User::getPrivilegio() == 3 || User::isAdmin()) {// Analista de Negócios / Administrador

    $this->widget('ext.Utils.widgets.CrmGridView', array(
        'id'              => 'admin-grid',
        'htmlOptions'    => array(
            'class'           => 'admin-grid-pendencias grid-view',
        ),
        'dataProvider'    => $dataProvider,
        'afterAjaxUpdate' => 'updated',
        'selectableRows'  => 1,
        'pager' => Util::getPagerDefaultConfig(),
        'rowCssClassExpression' => 'getRowClass($this, $row, $data, true)',
        'columns' => array(
            array(
                'name'  => 'SOL_DATACADASTRO',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_DATACADASTRO. ($data->getAtrasoFases() ? " <i class=\"fa fa-exclamation-triangle atrasado\"></i>" : ""), true)'
                ),
            array(
                'name'  => 'SOL_IDPENDENCIA',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_IDPENDENCIA)'
                ),
            array(
                'name'  => 'Revenda',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->Revenda)'
                ),
            array(
                'name'  => 'Autor',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, Util::shortenName((string)$data->Autor))'
                ),
            array(
                'name'  => 'Analista',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, Util::ShortenName($data->Analista))'
                ),
            array(
                'name'  => 'Cliente',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, getNomeCliente($data), true)'
                ),
            array(
                'name'  => 'Prioridade',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->Prioridade)'
                ),
            array(
                'name'  => 'Formulario',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->getFormulario())'
                ),
            array(
                'name'  => 'Motivo',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data,  FaHtml::spanMotivoPendencia($data->SOL_IDMOTIVO, $data->Motivo), true)'
                ),
            array(
                'name'  => 'Local',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, FaHtml::spanMovimentacaoPendencias(($data->Local . ($data->SOL_IDLOCAL == 1 && !empty($data->Desenvolvedor) ? " / " . $data->Desenvolvedor : "")), $data->getNumeroVezesLocal()), true)'
                ),
            array(
                'name'  => 'SOL_SITUACAO',
                'header' => 'Status',
                'type'  => 'raw',
                'value' => 'FaHtml::getSituacaoPendencias($data->SOL_SITUACAO)'
                ),
            array(
                'class'               => 'CButtonColumn',
                'template'            => $botoes,
                'viewButtonOptions'   => array('target'   => '_blank'),
                'updateButtonOptions' => array('target' => '_blank'),
                'buttons'             => array
                (
                    'pdf' => array
                    (
                        'label'    => 'Gerar PDF',
                        'imageUrl' => FaHtml::getImgUrl('ico-pdf.png'),
                        'url'      => 'Yii::app()->createUrl("especificacaoFuncional/gerarpdf", array("id"=>$data->EspecificacaoFuncional->ESP_IDESPECIFICACAO))',
                        'options'  => array('target'  => '_blank'),
                        'visible'  => 'isset($data->EspecificacaoFuncional->ESP_IDESPECIFICACAO)'
                        ),
                    'view' => array
                    (
                        'label' => 'Exibir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/view", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    'update' => array
                    (
                        'label' => 'Editar',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/update", array("id"=>$data->SOL_IDPENDENCIA))',
                        'visible' => '$data->canUpdate()'
                        ),
                    'delete' => array
                    (
                        'label' => 'Excluir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/delete", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    ),
                ),
            ),
));
} elseif (User::getPrivilegio() == 12) {// Analista de Sistemas
    $this->widget('ext.Utils.widgets.CrmGridView', array(
        'id'              => 'admin-grid',
        'htmlOptions'    => array(
            'class'           => 'admin-grid-pendencias grid-view',
        ),
        'dataProvider'    => $dataProvider,
        'selectableRows'  => 1,
        'afterAjaxUpdate' => 'updated',
        'pager' => Util::getPagerDefaultConfig(),
        'rowCssClassExpression' => 'getRowClass($this, $row, $data, true)',
        'columns' => array(
            array(
                'name'  => 'SOL_DATACADASTRO',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_DATACADASTRO. ($data->getAtrasoFases() ? " <i class=\"fa fa-exclamation-triangle atrasado\"></i>" : ""), true)'
                ),
            array(
                'name'  => 'SOL_IDPENDENCIA',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_IDPENDENCIA)'
                ),
            array(
                'name'  => 'Revenda',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->Revenda)'
                ),
            array(
                'name'  => 'Cliente',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, getNomeCliente($data), true)'
                ),
            array(
                'name'  => 'Prioridade',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->Prioridade)'
                ),
            array(
                'name'  => 'Motivo',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data,  FaHtml::spanMotivoPendencia($data->SOL_IDMOTIVO, $data->Motivo), true)'
                ),
            array(
                'name'  => 'Local',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, FaHtml::spanMovimentacaoPendencias(($data->Local . ($data->SOL_IDLOCAL == 1 && !empty($data->Desenvolvedor) ? " / " . $data->Desenvolvedor : "")), $data->getNumeroVezesLocal()), true)'
                ),
            array(
                'name'  => 'Versao',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->Versao)'
                ),
            array(
                'name' => 'previsao',
                'header' => 'Previsão de Desenvolvimento',
                'value' => '$data->getPrevisaoDesenvolvimento()',
                'visible' => is_array($model->SOL_IDLOCAL) && in_array(1, $model->SOL_IDLOCAL)
                ),
            array(
                'name'  => 'SOL_DATAPREVISAO',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_DATAPREVISAO. ($data->getAtrasoFases() ? " <i class=\"fa fa-exclamation-triangle atrasado\"></i>" : ""), true)',
                'visible' => !(is_array($model->SOL_IDLOCAL) && in_array(1, $model->SOL_IDLOCAL))
                ),
            array(
                'name'  => 'PrevisaoVersao',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->PrevisaoVersao)'
                ),
            array(
                'name'  => 'Analista',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, Util::ShortenName($data->Analista))'
                ),
            array(
                'name'  => 'SOL_SITUACAO',
                'header' => 'Status',
                'type'  => 'raw',
                'value' => 'FaHtml::getSituacaoPendencias($data->SOL_SITUACAO)'
                ),
            array(
                'class'               => 'CButtonColumn',
                'template'            => $botoes,
                'viewButtonOptions'   => array('target'   => '_blank'),
                'updateButtonOptions' => array('target' => '_blank'),
                'buttons'             => array
                (
                    'pdf' => array
                    (
                        'label'    => 'Gerar PDF',
                        'imageUrl' => FaHtml::getImgUrl('ico-pdf.png'),
                        'url'      => 'Yii::app()->createUrl("especificacaoFuncional/gerarpdf", array("id"=>$data->EspecificacaoFuncional->ESP_IDESPECIFICACAO))',
                        'options'  => array('target'  => '_blank'),
                        'visible'  => 'isset($data->EspecificacaoFuncional->ESP_IDESPECIFICACAO)'
                        ),
                    'view' => array
                    (
                        'label' => 'Exibir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/view", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    'update' => array
                    (
                        'label' => 'Editar',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/update", array("id"=>$data->SOL_IDPENDENCIA))',
                        'visible' => '$data->canUpdate()'
                        ),
                    'delete' => array
                    (
                        'label' => 'Excluir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/delete", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    ),
                ),
            ),
));
} elseif (User::getPrivilegio() == 5 or User::getPrivilegio() == 20) {// Suporte Revenda ou Gerente Suporte Revenda

    $this->widget('ext.Utils.widgets.CrmGridView', array(
        'id'              => 'admin-grid',
        'htmlOptions'    => array(
            'class'           => 'admin-grid-pendencias grid-view',
        ),
        'dataProvider'    => $dataProvider,
        'selectableRows'  => 1,
        'afterAjaxUpdate' => 'updated',
        'pager' => Util::getPagerDefaultConfig(),
        'rowCssClassExpression' => 'getRowClass($this, $row, $data)',
        'columns' => array(
            array(
                'name'  => 'SOL_DATACADASTRO',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_DATACADASTRO. ($data->getAtrasoFases() ? " <i class=\"fa fa-exclamation-triangle atrasado\"></i>" : ""), true)'
                ),
            array(
                'name'  => 'SOL_IDPENDENCIA',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_IDPENDENCIA)'
                ),
            array(
                'name'  => 'Revenda',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->Revenda)'
                ),
            array(
                'name'  => 'Autor',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, Util::shortenName((string)$data->Autor))'
                ),
            array(
                'name'  => 'Atendente',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->Atendente)'
                ),
            array(
                'name'  => 'Cliente',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, getNomeCliente($data), true)'
                ),
            array(
                'name'  => 'Prioridade',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->Prioridade)'
                ),
            array(
                'name'  => 'Formulario',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->getFormulario())'
                ),
            array(
                'name'  => 'Motivo',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data,  FaHtml::spanMotivoPendencia($data->SOL_IDMOTIVO, $data->Motivo), true)'
                ),
            array(
                'name'  => 'Local',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, FaHtml::spanMovimentacaoPendencias(($data->Local . ($data->SOL_IDLOCAL == 1 && !empty($data->Desenvolvedor) ? " / " . $data->Desenvolvedor : "")), $data->getNumeroVezesLocal()), true)'
                ),
            array(
                'name' => 'previsao',
                'header' => 'Previsão de Desenvolvimento',
                'value' => '$data->getPrevisaoDesenvolvimento()',
                'visible' => is_array($model->SOL_IDLOCAL) && in_array(1, $model->SOL_IDLOCAL)
                ),
            array(
                'name'  => 'SOL_SITUACAO',
                'header' => 'Status',
                'type'  => 'raw',
                'value' => 'FaHtml::getSituacaoPendencias($data->SOL_SITUACAO)'
                ),
            array(
                'class'               => 'CButtonColumn',
                'template'            => $botoes,
                'viewButtonOptions'   => array('target'   => '_blank'),
                'updateButtonOptions' => array('target' => '_blank'),
                'buttons'             => array
                (
                    'pdf' => array
                    (
                        'label'    => 'Gerar PDF',
                        'imageUrl' => FaHtml::getImgUrl('ico-pdf.png'),
                        'url'      => 'Yii::app()->createUrl("especificacaoFuncional/gerarpdf", array("id"=>$data->EspecificacaoFuncional->ESP_IDESPECIFICACAO))',
                        'options'  => array('target'  => '_blank'),
                        'visible'  => 'isset($data->EspecificacaoFuncional->ESP_IDESPECIFICACAO)'
                        ),
                    'view' => array
                    (
                        'label' => 'Exibir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/view", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    'update' => array
                    (
                        'label' => 'Editar',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/update", array("id"=>$data->SOL_IDPENDENCIA))',
                        'visible' => '$data->canUpdate()'
                        ),
                    'delete' => array
                    (
                        'label' => 'Excluir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/delete", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    ),
                ),
            ),
));
} elseif (User::getPrivilegio() == 2 || User::getId() == 7) {// Desenvolvedor
    $this->widget('ext.Utils.widgets.CrmGridView', array(
        'id'              => 'admin-grid',
        'htmlOptions'    => array(
            'class'           => 'admin-grid-pendencias grid-view',
        ),
        'dataProvider'    => $dataProvider,
        'selectableRows'  => 1,
        'afterAjaxUpdate' => 'updated',
        'pager' => Util::getPagerDefaultConfig(),
        'rowCssClassExpression' => 'getRowClass($this, $row, $data, true)',
        'columns' => array(
            array(
                'name'  => 'SOL_INI_DEV',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_INI_DEV. ($data->getAtrasoInicioDesenvolvimento() ? " <i class=\"fa fa-exclamation-triangle atrasado\"></i>" : ""), true)',
                'header' => 'Previsão início'
                ),
            array(
                'name'  => 'SOL_FIM_DEV',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_FIM_DEV. ($data->getAtrasoFimDesenvolvimento() ? " <i class=\"fa fa-exclamation-triangle atrasado\"></i>" : ""), true)',
                'header' => 'Previsão entrega'
                ),
            array(
                'name'  => 'SOL_IDPENDENCIA',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_IDPENDENCIA)'
                ),
            array(
                'name'  => 'Cliente',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, getNomeCliente($data), true)'
                ),
            array(
                'name'  => 'Analista',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, Util::ShortenName($data->Analista))'
                ),
            array(
                'name'  => 'Motivo',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data,  FaHtml::spanMotivoPendencia($data->SOL_IDMOTIVO, $data->Motivo), true)'
                ),
            array(
                'name'  => 'Prioridade',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->Prioridade)'
                ),
            array(
                'name'  => 'Formulario',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->getFormulario())'
                ),
            array(
                'name'  => 'Local',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, FaHtml::spanMovimentacaoPendencias(($data->Local . ($data->SOL_IDLOCAL == 1 && !empty($data->Desenvolvedor) ? " / " . $data->Desenvolvedor : "")), $data->getNumeroVezesLocal()), true)'
                ),
            array(
                'name'  => 'PrevisaoVersao',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->PrevisaoVersao)'
                ),
            array(
                'name'  => 'SOL_SITUACAO',
                'header' => 'Status',
                'type'  => 'raw',
                'value' => 'FaHtml::getSituacaoPendencias($data->SOL_SITUACAO)'
                ),
            array(
                'class'               => 'CButtonColumn',
                'template'            => $botoes,
                'viewButtonOptions'   => array('target'   => '_blank'),
                'updateButtonOptions' => array('target' => '_blank'),
                'buttons'             => array
                (
                    'pdf' => array
                    (
                        'label'    => 'Gerar PDF',
                        'imageUrl' => FaHtml::getImgUrl('ico-pdf.png'),
                        'url'      => 'Yii::app()->createUrl("especificacaoFuncional/gerarpdf", array("id"=>$data->EspecificacaoFuncional->ESP_IDESPECIFICACAO))',
                        'options'  => array('target'  => '_blank'),
                        'visible'  => 'isset($data->EspecificacaoFuncional->ESP_IDESPECIFICACAO)'
                        ),
                    'view' => array
                    (
                        'label' => 'Exibir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/view", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    'update' => array
                    (
                        'label' => 'Editar',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/update", array("id"=>$data->SOL_IDPENDENCIA))',
                        'visible' => '$data->canUpdate()'
                        ),
                    'delete' => array
                    (
                        'label' => 'Excluir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/delete", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    ),
                ),
            ),
));
} elseif (User::getPrivilegio() == 15) {// Tester
    $this->widget('ext.Utils.widgets.CrmGridView', array(
        'id'              => 'admin-grid',
        'htmlOptions'    => array(
            'class'           => 'admin-grid-pendencias grid-view',
        ),
        'dataProvider'    => $dataProvider,
        'selectableRows'  => 1,
        'afterAjaxUpdate' => 'updated',
        'pager' => Util::getPagerDefaultConfig(),
        'rowCssClassExpression' => 'getRowClass($this, $row, $data)',
        'columns' => array(

            array(
                'name'  => 'SOL_DATACADASTRO',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_DATACADASTRO. ($data->getAtrasoFases() ? " <i class=\"fa fa-exclamation-triangle atrasado\"></i>" : ""), true)'
                ),
            array(
                'name'  => 'SOL_IDPENDENCIA',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_IDPENDENCIA)'
                ),
            array(
                'name'  => 'SOL_INI_TESTE',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_INI_TESTE. ($data->getAtrasoInicioPreTestes() ? " <i class=\"fa fa-exclamation-triangle atrasado\"></i>" : ""), true)',
                'header' => 'Previsão Início Testes'
                ),
            array(
                'name'  => 'SOL_FIM_TESTE',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_FIM_TESTE. ($data->getAtrasoFimPreTestes() ? " <i class=\"fa fa-exclamation-triangle atrasado\"></i>" : ""), true)',
                'header' => 'Previsão Fim Testes'
                ),
            array(
                'name'  => 'SOL_IDPENDENCIA',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->SOL_IDPENDENCIA)'
                ),
            array(
                'name'  => 'Revenda',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->Revenda)'
                ),
            array(
                'name'  => 'Autor',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, Util::shortenName((string)$data->Autor))'
                ),
            array(
                'name'  => 'Cliente',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, getNomeCliente($data), true)'
                ),
            array(
                'name'  => 'Prioridade',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->Prioridade)',
                ),
            array(
                'name'  => 'Formulario',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->getFormulario())'
                ),
            array(
                'name'  => 'Motivo',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, FaHtml::spanMotivoPendencia($data->SOL_IDMOTIVO, $data->Motivo), true)'
                ),
            array(
                'name'  => 'Local',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, FaHtml::spanMovimentacaoPendencias(($data->Local . ($data->SOL_IDLOCAL == 1 && !empty($data->Desenvolvedor) ? " / " . $data->Desenvolvedor : "")), $data->getNumeroVezesLocal()), true)'
                ),
            array(
                'name'  => 'Tester',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->Testador)'
                ),
            array(
                'name'  => 'Atendente',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->Atendente)'
                ),
            array(
                'name'  => 'PrevisaoVersao',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, $data->PrevisaoVersao)'
                ),
            array(
                'name'  => 'SOL_SITUACAO',
                'header' => 'Status',
                'type'  => 'raw',
                'value' => 'FaHtml::getSituacaoPendencias($data->SOL_SITUACAO)'
                ),
            
            array(
                'class'               => 'CButtonColumn',
                'template'            => $botoes,
                'viewButtonOptions'   => array('target'   => '_blank'),
                'updateButtonOptions' => array('target' => '_blank'),
                'buttons'             => array
                (
                    'pdf' => array
                    (
                        'label'    => 'Gerar PDF',
                        'imageUrl' => FaHtml::getImgUrl('ico-pdf.png'),
                        'url'      => 'Yii::app()->createUrl("especificacaoFuncional/gerarpdf", array("id"=>$data->EspecificacaoFuncional->ESP_IDESPECIFICACAO))',
                        'options'  => array('target'  => '_blank'),
                        'visible'  => 'isset($data->EspecificacaoFuncional->ESP_IDESPECIFICACAO)'
                        ),
                    'view' => array
                    (
                        'label' => 'Exibir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/view", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    'update' => array
                    (
                        'label' => 'Editar',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/update", array("id"=>$data->SOL_IDPENDENCIA))',
                        'visible' => '$data->canUpdate()'
                        ),
                    'delete' => array
                    (
                        'label' => 'Excluir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/delete", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    ),
                ),
            ),
));
} else if(User::getPrivilegio() == 4) {
    $this->widget('ext.Utils.widgets.CrmGridView', array(
        'id'              => 'admin-grid',
        'htmlOptions'    => array(
            'class'           => 'admin-grid-pendencias grid-view',
        ),
        'dataProvider'    => $dataProvider,
        'selectableRows'  => 1,
        'afterAjaxUpdate' => 'updated',
        'pager' => Util::getPagerDefaultConfig(),
        'columns' => array(
            array(
                'name'  => 'SOL_DATACADASTRO',
                'type'  => 'raw',
                'value' => '$data->SOL_DATACADASTRO. ($data->getAtrasoFases() ? " <i class=\"fa fa-exclamation-triangle atrasado\"></i>" : "")',
                ),
            'SOL_DTULTIMAATIVIDADE',
            'SOL_IDPENDENCIA',
            array(
                'name'  => 'Autor',
                'value' => 'Util::shortenName((string)$data->Autor)',
                ),
            array(
                'name'  => 'Supervisor',
                'value' => 'Util::shortenName((string)$data->Supervisor)',
                ),
            array(
                'name'  => 'Cliente',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, getNomeCliente($data), true)'
                ),
            array(
                'name'  => 'Prioridade',
                'value' => '$data->Prioridade',
                ),
            array(
                'name'  => 'Motivo',
                'type'  => 'raw',
                'value' => 'FaHtml::spanMotivoPendencia($data->SOL_IDMOTIVO, $data->Motivo)',
                ),
            array(
                'name'  => 'Formulario',
                'value' => '$data->getFormulario()',
                ),
            array(
                'name'  => 'Local',
                'type'  => 'raw',
                'value' => 'FaHtml::spanMovimentacaoPendencias($data->Local, $data->getNumeroVezesLocal())',
                ),
            array(
                'name'  => 'SOL_SITUACAO',
                'header' => 'Status',
                'type'  => 'raw',
                'value' => 'FaHtml::getSituacaoPendencias($data->SOL_SITUACAO)',
                ),
            array(
                'class'               => 'CButtonColumn',
                'template'            => $botoes,
                'viewButtonOptions'   => array('target'   => '_blank'),
                'updateButtonOptions' => array('target' => '_blank'),
                'buttons'             => array
                (
                    'view' => array
                    (
                        'label' => 'Exibir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/view", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    'update' => array
                    (
                        'label' => 'Editar',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/update", array("id"=>$data->SOL_IDPENDENCIA))',
                        'visible' => '$data->canUpdate()'
                        ),
                    'delete' => array
                    (
                        'label' => 'Excluir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/delete", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    ),
                ),
            ),
        ));
} else {

    $this->widget('ext.Utils.widgets.CrmGridView', array(
        'id'              => 'admin-grid',
        'htmlOptions'    => array(
            'class'           => 'admin-grid-pendencias grid-view',
        ),
        'dataProvider'    => $dataProvider,
        'selectableRows'  => 1,
        'afterAjaxUpdate' => 'updated',
        'pager' => Util::getPagerDefaultConfig(),
        'rowCssClassExpression' => 'getRowClass($this, $row, $data)',
        'columns' => array(
            array(
                'name'  => 'SOL_DATACADASTRO',
                'type'  => 'raw',
                'value' => '$data->SOL_DATACADASTRO. ($data->getAtrasoFases() ? " <i class=\"fa fa-exclamation-triangle atrasado\"></i>" : "")',
                ),
            'SOL_DTULTIMAATIVIDADE',
            'SOL_IDPENDENCIA',
            array(
                'name'  => 'Autor',
                'value' => 'Util::shortenName((string)$data->Autor)',
                ),
            array(
                'name'  => 'Supervisor',
                'value' => 'Util::shortenName((string)$data->Supervisor)',
                ),
            array(
                'name'  => 'Cliente',
                'type'  => 'raw',
                'value' => 'Util::formatTxtSolicitacaoTooltip($data, getNomeCliente($data), true)'
                ),
            array(
                'name'  => 'Prioridade',
                'value' => '$data->Prioridade',
                ),
            array(
                'name'  => 'Motivo',
                'type'  => 'raw',
                'value' => 'FaHtml::spanMotivoPendencia($data->SOL_IDMOTIVO, $data->Motivo)',
                ),
            array(
                'name'  => 'Formulario',
                'value' => '$data->getFormulario()',
                ),
            array(
                'name'  => 'Local',
                'type'  => 'raw',
                'value' => 'FaHtml::spanMovimentacaoPendencias($data->Local, $data->getNumeroVezesLocal())',
                ),
            array(
                'name'  => 'SOL_SITUACAO',
                'header' => 'Status',
                'type'  => 'raw',
                'value' => 'FaHtml::getSituacaoPendencias($data->SOL_SITUACAO)',
                ),
            array(
                'class'               => 'CButtonColumn',
                'template'            => $botoes,
                'viewButtonOptions'   => array('target'   => '_blank'),
                'updateButtonOptions' => array('target' => '_blank'),
                'buttons'             => array
                (
                    'view' => array
                    (
                        'label' => 'Exibir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/view", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    'update' => array
                    (
                        'label' => 'Editar',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/update", array("id"=>$data->SOL_IDPENDENCIA))',
                        'visible' => '$data->canUpdate()'
                        ),
                    'delete' => array
                    (
                        'label' => 'Excluir',
                        'url'   => 'Yii::app()->createUrl("solicitacoes/delete", array("id"=>$data->SOL_IDPENDENCIA))',
                        ),
                    ),
                ),
            ),
        ));
}

function getEspecificacao($SOL_IDPENDENCIA) {
    $EspecificacaoFuncional = EspecificacaoFuncional::model()->find("ESP_IDSOLICITACAO = '".$SOL_IDPENDENCIA."' order by ESP_IDESPECIFICACAO DESC");
    if (!empty($EspecificacaoFuncional)) {
        return $EspecificacaoFuncional->ESP_IDESPECIFICACAO;
    }
}
function getNomeCliente($data) {
    if(!isset($data->Cliente)) {
        return '-';
    }
    echo Util::getNomeImplantacao($data->Cliente->CLI_NOME, $data->Cliente->CLI_IMPLANTACAO);
}

function getRowClass($table, $row, $data, $numeroVezesLocal = false) {
    $classes = array();
    if ($row%2) {
        $classes[] = $table->rowCssClass[1];
    } else {
        $classes[] = $table->rowCssClass[0];
    }

    if ($numeroVezesLocal) {
        $vezes = $data->getNumeroVezesLocal();
        if ($vezes == 2) {
            $classes[] = 'text-info';
        } else if($vezes == 3) {
            $classes[] = 'text-warning';
        } else if ($vezes > 3) {
            $classes[] = 'text-danger';
        }
    }

    if ($data->isVinculada()) {
        $classes[] = "pendenciaVinculada";
    }

    return implode(" ", $classes);
}

$css = <<<CSS
    .pendenciaVinculada {
        opacity: 0.2;
    }
    .pendenciaVinculada:hover {
        opacity: 1;
    }
CSS;
Yii::app()->getClientScript()->registerCss(Util::uid(), $css);
