Example #1
0
 /**
  * Método que lista as áreas do exame selecionado
  * @param int $pk_exa_bloco O código do bloco do exame selecioando
  */
 public function listar_areas($pk_exa_bloco)
 {
     $data = $this->getParametroVisao();
     $data['page'] = 'home';
     $data['abaPage'] = __FUNCTION__;
     $data['abaAtiva'] = $this->AbaAtiva;
     $data['query'] = isset($_GET['psi_prv_unidade']) ? '?psi_prv_unidade=' . $_GET['psi_prv_unidade'] : '';
     $psi_prv_unidade = isset($_GET['psi_prv_unidade']) != '' ? '?psi_prv_unidade=' . $_GET['psi_prv_unidade'] : '';
     $pk_exa_bloco = (int) $pk_exa_bloco;
     $sqlConcurso = new SqlConcurso();
     $data['titulo'] = $sqlConcurso->get_titulo_concurso_area($pk_exa_bloco);
     $pk_exa_concurso = $data['titulo'][0]['pk_exa_concurso'];
     $result = $sqlConcurso->listar_areas($pk_exa_bloco);
     $data['total'] = $result['total'];
     if ($result['total'] > 0) {
         $this->load->library('table');
         $arrHead[] = 'Exames';
         $arrHead[] = 'Provas';
         $arrHead[] = 'Pesos';
         $arrHead[] = 'Processa ranking';
         $arrHead[] = 'Listar ranking';
         $arrHead[] = 'Publicar prova';
         $arrHead[] = 'Habilita para alunos';
         $arrHead[] = '';
         $this->table->set_heading($arrHead);
         $count = 0;
         foreach ($result['registros'] as $row) {
             //var_dump($result['total']);
             $count++;
             $tmpl = Util::zebrar($count, $data['total']);
             $link = '<a class="link" href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/listar_provas/' . $row['pk_exa_area'] . $psi_prv_unidade . '">' . $row['concurso_tipo_nome'] . ' / ' . $row['concurso_nome'] . ' / ' . $row['bloco_nome'] . ' / ' . $row['area_nome'] . '</a>';
             $areas = array('data' => $row['total'], 'class' => 'tcenter');
             $result = $sqlConcurso->checa_pesos_area($row['pk_exa_area']);
             $pesos = empty($result) ? '<a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/incluir_pesos_area/' . $pk_exa_bloco . '/' . $row['pk_exa_area'] . '"><div class="tooltip icon_pesosCinza ml10" data-tooltip="Incluir pesos das matérias"></div></a>' : '<a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/incluir_pesos_area/' . $pk_exa_bloco . '/' . $row['pk_exa_area'] . '"><div class="tooltip icon_pesos ml10" data-tooltip="Incluir pesos das matérias"></div></a>';
             // se os pesos não tiverem sido incluídos
             if (!empty($result)) {
                 // verifica se o ranking já foi processado
                 $result = $sqlConcurso->checa_media_area($row['pk_exa_area']);
                 if (!empty($result)) {
                     $processa = array('data' => '<a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/processar_area/' . $pk_exa_bloco . '/' . $row['pk_exa_area'] . '"><div class="tooltip icon_processar ml30" data-tooltip="Incluir pesos das matérias"></div></a>', 'class' => 'w70');
                     $ranking = array('data' => '<a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/listar_ranking_provas/' . $pk_exa_concurso . '/' . $pk_exa_bloco . '/' . $row['pk_exa_area'] . '/0"><div class="tooltip icon_ranking ml30" data-tooltip="Listar ranking"></div></a>', 'class' => 'w70');
                 } else {
                     $processa = array('data' => '<a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/processar_area/' . $pk_exa_bloco . '/' . $row['pk_exa_area'] . '"><div class="tooltip icon_processar_cinza ml30" data-tooltip="Incluir pesos das matérias"></div></a>', 'class' => 'w70');
                     $ranking = array('data' => '<div class="tooltip icon_rankingCinza ml30" data-tooltip="Listar ranking"></div>', 'class' => 'w70');
                 }
                 $checa_relatorio_area = $sqlConcurso->checa_relatorio_area($row['pk_exa_area']);
                 $publicar = !empty($checa_relatorio_area) ? array('data' => '<a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/publicar_area/' . $row['fk_exa_bloco'] . '/' . $row['pk_exa_area'] . '"><div class="tooltip icon_publica ml20" data-tooltip="Republicar ranking no nível de área. Última publicaçao: ' . View::converteDataBr($checa_relatorio_area[0]['data_process']) . '"></div></a>', 'class' => 'w50') : array('data' => '<a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/publicar_area/' . $row['fk_exa_bloco'] . '/' . $row['pk_exa_area'] . '"><div class="tooltip icon_publicaCinza ml20" data-tooltip="Área não publicada"></div></a>', 'class' => 'w50');
                 if (count($checa_relatorio_area) != 0) {
                     $publicar_alunos = $checa_relatorio_area[0]['status'] == 1 ? array('data' => '<a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/atualizar_status_relatorio/' . $row['fk_exa_concurso'] . '/' . $row['fk_exa_bloco'] . '/' . $row['pk_exa_area'] . '/' . $checa_relatorio_area[0]['pk_relatorio'] . '/0/2"><div class="tooltip icon_pulicacao_alunos ml30" data-tooltip="Habilitado para a visualização para os alunos"></div></a>', 'class' => 'tcenter w80') : array('data' => '<a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/atualizar_status_relatorio/' . $row['fk_exa_concurso'] . '/' . $row['fk_exa_bloco'] . '/' . $row['pk_exa_area'] . '/' . $checa_relatorio_area[0]['pk_relatorio'] . '/1/2"><div class="tooltip icon_pulicacao_alunosCinza ml30" data-tooltip="Habilita a visualização para os alunos"></div></a>', 'class' => 'tcenter w80');
                 } else {
                     $publicar_alunos = array('data' => '<div class="tooltip icon_pulicacao_alunosCinza ml30" data-tooltip="Esperando a publicação no ícone anterior"></div>', 'class' => 'w80');
                 }
             } else {
                 $processa = array('data' => '<div class="tooltip icon_processar_cinza ml30" data-tooltip="Esperando a inclusão dos pesos para o processamento do ranking de área.">', 'class' => 'w70');
                 $ranking = array('data' => '<div class="tooltip icon_rankingCinza ml30" data-tooltip="Listar ranking"></div>', 'class' => 'w70');
                 $publicar = array('data' => '<div class="tooltip icon_publicaCinza ml20" data-tooltip="Esperando a publicação no ícone anterior"></div>', 'class' => 'w80');
                 $publicar_alunos = array('data' => '<div class="tooltip icon_pulicacao_alunosCinza ml30" data-tooltip="Esperando a publicação no ícone anterior"></div>', 'class' => 'w80');
             }
             $this->table->add_row(str_replace('/ geral', '', $link), $areas, $pesos, $processa, $ranking, $publicar, $publicar_alunos, $data['permissao']['excluir'] == 1 ? '<a href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/excluir_area" ' . View::getParamExcluirItemTabela($row['pk_exa_area'], 0, 0, '', 'Excluir área', 'Deseja excluir a área ' . $row['area_nome'] . '') . '   class="excluirItemTabela"><div class="tooltip icon_delete" data-tooltip="Exclusão"></div></a>' : '');
         }
         $this->table->set_template($tmpl);
     } else {
         $titulo = $data['titulo'][0]['concurso_tipo_nome'] . '/' . $data['titulo'][0]['concurso_nome'] . '/' . $data['titulo'][0]['bloco_nome'];
         $data['msg'] = '<div class="alert informacao">Ainda não constam áreas no exame "' . str_replace('/geral', '', $titulo) . '". Para efetuar a primeira inclusão, <a class="link" href="' . base_url() . $this->uri->segment(1) . '/' . $this->uri->segment(2) . '/cadastrar_area/' . $this->uri->segment(4) . $data['query'] . '">clique aqui</a>.</div>';
     }
     $this->load->view($this->load->getUrlTema(), $data);
 }