<?php
include_once '../classes/pagina.php';
include_once '../classes/escolaprofessor.php';
include_once '../classes/escola.php';


class CRUDEscola extends Pagina {
    
    public function __construct() {
        parent::checarPermissao(array('professor'));
        parent::__construct();
    }
    
    public function corpo() {
        if(empty($_REQUEST[acao]) AND empty($_REQUEST[executarAcao])) echo "<div><a href='home.php' class='voltar'>Voltar para a tela inicial</a></div><br/>";
        
        if($_REQUEST[executarAcao] == 'inserir' OR $_REQUEST[executarAcao] == 'editar'){
            $this->salvar($_REQUEST[executarAcao]);
        }elseif($_REQUEST[acao] == 'inserir' OR $_REQUEST[acao] == 'editar'){
            $this->formulario($_REQUEST[acao], $_REQUEST[id]);
        }elseif($_REQUEST[executarFuncao] == 'dadosEscola'){
            $this->dadosEscola($_REQUEST[codigoinep]);
        }else{
            $this->lista();
        }
    }
    
    public function lista(){
        echo "<div align='center'><a href='crudescola.php?acao=inserir' target='_blank' class='adicionar'>Inserir Nova Escola</a></div><br/>";
        
        $where[] = 'professor_id = '.$_SESSION[professor_id];
        $where = implode(' AND ', $where);
        
        $atributos[select] = 'escolaprofessor.codigoInep, escolaprofessor.nome, escolaprofessor.municipio, escolaprofessor.uf, escolaprofessor.tipo ';
        $atributos[from] = 'imediaco_geo.escolaprofessor';
        $atributos[where] = $where;
        $atributos[orderBy] = 'escolaprofessor.nome';
        $atributos[chave] = 'escolaprofessor.id';
        
        $links[] = array('endereco'=>'crudescola.php', 'acao'=>'editar', 'imagem'=>"../imagens/editar.png", 'target'=>'_blank');
        
        parent::tabela($atributos, $links);
    }

    public function formulario($acao, $id=null){
        if(!empty($id)){
            $escolaprofessor = new EscolaProfessor();
            $objescolaprofessor = $escolaprofessor->encontrar($id);

            if($objescolaprofessor->professor_id != $_SESSION[professor_id]){
                echo 'Não foi identificado o professor logado, sua sessão pode ter expirado. Por favor faça o login novamente';
                exit();
            }
        }
        
        echo "<fieldset><legend>Escola</legend>";
        echo "<form action='crudescola.php' method='POST'>";
        echo "<table class='formulario'>";
        echo "<input type='hidden' name='executarAcao' value='$acao' />";
        echo "<input type='hidden' name='id' value='$id' />";
        echo "<tr><th>Código Inep da Escola:</th><td><input type='text' name='codigoinep' value='$objescolaprofessor->codigoinep' size='10' required onchange=\"executarAjax('crudescola.php?executarFuncao=dadosEscola&codigoinep='+this.value);\" placeholder='o código Inep da Escola participante' class='inteiro' /> em caso de dúvida <a href='https://www.gov.br/inep/pt-br/acesso-a-informacao/dados-abertos/inep-data/catalogo-de-escolas' target='_blank'>clique aqui</a> para consultar</td></tr>";
        echo "<tr><th>Nome da Escola:</th><td><span id='nomeescola'>$objescolaprofessor->nome</span><input type='hidden' name='escola' id='escola' value='$objescolaprofessor->nome' size='60' required placeholder='nome completo da escola participante' /></td></tr>";
        echo "<tr><th>Município da Escola:</th><td><span id='municipioescola'>$objescolaprofessor->municipio</span><input type='hidden' name='municipio' id='municipio' value='$objescolaprofessor->municipio' size='60' required placeholder='municipio da escola participante' /></td></tr>";
        echo "<tr><th>UF da Escola:</th><td><span id='ufescola'>$objescolaprofessor->uf</span><input type='hidden' name='uf' id='uf' value='$objescolaprofessor->uf' size='2' maxlength='2' required placeholder='uf da escola participante' /></td></tr>";
        echo "<tr id='linhaendereco' style='display: none;'><td colspan='2'>";
        echo "<b>Logradouro</b><input type='text' name='logradouro' id='logradouro' value='$objequipe->logradouro' size='40' placeholder='Rua, Av. etc e o número' /> &nbsp; ";
        echo "<b>Complemento:</b><input type='text' name='complemento' id='complemento' value='$objequipe->complemento' size='15' placeholder='Apt. ou outro complemento se houver' /> &nbsp; ";
        echo "<b>Bairro:</b><input type='text' name='bairro' id='bairro' value='$objequipe->bairro' size='30' placeholder='Bairro' /> &nbsp; ";
        echo "<b>CEP:</b><input type='text' name='cep' id='cep' value='$objequipe->cep' placeholder='CEP' class='cep' /> &nbsp; ";
        echo "</td></tr>";
        echo "<tr><th>Categoria Administrativa Inep:</th><td><span id='categoriaadministrativaescola'>$objescolaprofessor->categoriainep</span><input type='hidden' name='categoriaadministrativa' id='categoriaadministrativa' value='$objescolaprofessor->categoriainep' size='30' required placeholder='publica ou privada' /></td></tr>";
        echo "<tr><th>Tipo da Escola:</th><td>";
        if(empty($equipe_id) OR parent::temPermissao(array('professor'))) parent::radioTipoEscola($objescolaprofessor->tipo, true);
        else echo "$objescolaprofessor->tipo";
        echo "</td></tr>";
        echo "</table>";
        echo "</fieldset>";
        
         $sql = "SELECT prova.* "
            . "FROM imediaco_geo.prova "
            . "WHERE prova.datainscricaoinicio1 <= NOW() AND prova.datainscricaofim2 >= NOW() "
            . "ORDER BY prova.id DESC";
        $this->bd->executarSQL($sql);
        
        echo "<br/>";
        echo "<div align='center'>";
        $quantidadeprovas = $this->bd->getQuantidadeRegistros();
        if($quantidadeprovas>0)
        echo "<input type='submit' name='cadastrar' value='".ucwords($acao)."' class='confirmar'/> &nbsp;&nbsp; ";
        echo "<input type='button' name='cancelar' value='Voltar' onclick=\"window.close();\" class='cancelar' />";
        echo "</div>";
        
        echo "</form>";
    }
    
    public function salvar($acao){
        $escolaprofessor = new EscolaProfessor();
        
        if(!empty($_POST[id])){ 
            $escolaprofessor->encontrar($_POST[id]);
            if($escolaprofessor->professor_id != $_SESSION[professor_id]){
                echo 'Não foi identificado o professor logado, sua sessão pode ter expirado. Por favor faça o login novamente';
                exit();
            }
        }

        $escolaprofessor->codigoinep = parent::acertarString($_POST[codigoinep]);

        if(!empty($escolaprofessor->codigoinep)){
            $escola = new Escola();
            if(empty($escola->encontrarCodigoInep($escolaprofessor->codigoinep))){
                echo "<script type='text/javascript'> alert('Código $codigoinep não encontrado na nossa base de dados.\\nVerifique se realmente o código está correto. Caso esteja, favor enviar email para: obgeografia@unifal-mg.edu.br');</script>";
                echo "<script type='text/javascript'>window.close();</script>";
                exit();
            }
        }
        
        $escolaprofessor->nome = parent::acertarString($_POST[escola]);
        $escolaprofessor->municipio = parent::acertarNome($_POST[municipio]);
        $escolaprofessor->uf = strtoupper(parent::acertarString($_POST[uf]));
        $escolaprofessor->logradouro = strtoupper(parent::acertarString($_POST[logradouro]));
        $escolaprofessor->bairro = strtoupper(parent::acertarString($_POST[bairro]));
        $escolaprofessor->complemento = strtoupper(parent::acertarString($_POST[complemento]));
        $escolaprofessor->cep = strtoupper(parent::acertarString($_POST[cep]));
        $escolaprofessor->categoriainep = parent::acertarString($_POST[categoriaadministrativa]);
        if(!empty($_POST[tipoescola])) $escolaprofessor->tipo = parent::acertarString($_POST[tipoescola]);
        $escolaprofessor->professor_id = $_SESSION[professor_id];
        
        switch($acao){
            case 'inserir':
                $executou = $escolaprofessor->inserir();
                break;
            case 'editar':
                $executou = $escolaprofessor->editar();
        }
        
        echo "<script type='text/javascript'>window.opener.location.reload(); window.close();</script>";
    }

    public function dadosEscola($codigoinep){
        $codigoinep = parent::soNumeros($codigoinep);
        
        $sql = "SELECT * FROM imediaco_geo.escola WHERE codigoinep = '$codigoinep' ORDER BY id DESC LIMIT 1";
        $this->bd->executarSQL($sql);
        $obj = $this->bd->getObjeto();
        
        echo "<script type='text/javascript' class='modoajax'>";
        echo "document.getElementById('escola').value = '$obj->nome';";
        echo "document.getElementById('municipio').value = '$obj->municipio';";
        echo "document.getElementById('uf').value = '$obj->uf';";
        $endereco = parent::acertarString(str_replace('"', '', $obj->endereco));
        echo "document.getElementById('logradouro').value = '$endereco';";
        echo "document.getElementById('complemento').value = '';";
        echo "document.getElementById('bairro').value = '$obj->localizacao';";
        echo "document.getElementById('cep').value = '37130000';";
        echo "document.getElementById('categoriaadministrativa').value = '$obj->categoriaadministrativa';";
        echo "if('$obj->nome' == '' && '$codigoinep' != ''){
                alert('Código $codigoinep não encontrado na nossa base de dados.\\nVerifique se realmente o código está correto. Caso esteja, favor enviar email para: obgeografia@unifal-mg.edu.br');
            }else{
                document.getElementById('nomeescola').innerHTML = '$obj->nome';
                document.getElementById('municipioescola').innerHTML = '$obj->municipio';
                document.getElementById('ufescola').innerHTML = '$obj->uf';
                document.getElementById('categoriaadministrativaescola').innerHTML = '$obj->categoriaadministrativa';
                document.getElementById('escola').type = 'hidden';
                document.getElementById('municipio').type = 'hidden';
                document.getElementById('uf').type = 'hidden';
            }";
                
        echo "</script>";
    }
}

$pagina = new CRUDEscola();
$pagina->montar();