function Inicializar()
 {
     //	print_r($_POST);die;
     $retorno = "Novo";
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     //$this->ref_cod_turma=$_GET["ref_cod_turma"];
     foreach ($_GET as $key => $value) {
         $this->{$key} = $value;
     }
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7, "educar_matricula_lst.php");
     if (is_numeric($this->ref_cod_matricula) && is_numeric($this->formando)) {
         $obj = new clsPmieducarMatricula($this->ref_cod_matricula, null, null, null, $this->pessoa_logada, null, null, null, null, null, null, null, null, null, $this->formando);
         $registro = $obj->detalhe();
         if ($registro) {
             if (!$obj->edita()) {
                 echo "erro ao cadastrar";
                 die;
             }
             $des = "";
             if (!$this->formando) {
                 $des = "des";
             }
             echo "<script>alert('Matrícula {$des}marcada como formando com sucesso!'); window.location='educar_matricula_det.php?cod_matricula={$this->ref_cod_matricula}';</script>";
         }
     }
     header("location: educar_matricula_lst.php");
     die;
 }
 protected function getMatriculas()
 {
     if ($this->canGetMatriculas()) {
         $matriculas = new clsPmieducarMatricula();
         $matriculas->setOrderby("sequencial_fechamento , translate(nome,'" . Portabilis_String_Utils::toLatin1(åáàãâäéèêëíìîïóòõôöúùüûçÿýñÅÁÀÃÂÄÉÈÊËÍÌÎÏÓÒÕÔÖÚÙÛÜÇÝÑ) . "', '" . Portabilis_String_Utils::toLatin1(aaaaaaeeeeiiiiooooouuuucyynAAAAAAEEEEIIIIOOOOOUUUUCYN) . "') ");
         $matriculas = $matriculas->lista(NULL, NULL, $this->getRequest()->escola_id, $this->getRequest()->serie_id, NULL, NULL, $this->getRequest()->aluno_id, NULL, NULL, NULL, NULL, NULL, $ativo = 1, $this->getRequest()->ano, NULL, $this->getRequest()->instituicao_id, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, $this->getRequest()->curso_id, NULL, $this->getRequest()->matricula_id, NULL, NULL, NULL, NULL, $this->getRequest()->turma_id);
         $options = array();
         foreach ($matriculas as $matricula) {
             $options['__' . $matricula['cod_matricula']] = $this->toUtf8($matricula['nome']);
         }
         return array('options' => $options);
     }
 }
 function Inicializar()
 {
     $retorno = "Novo";
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $this->cod_matricula = $_GET["ref_cod_matricula"];
     $this->ref_cod_aluno = $_GET["ref_cod_aluno"];
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7, "educar_matricula_lst.php?ref_cod_aluno={$this->ref_cod_aluno}");
     $obj_matricula = new clsPmieducarMatricula($this->cod_matricula, null, null, null, $this->pessoa_logada, null, null, 6);
     $det_matricula = $obj_matricula->detalhe();
     if (!$det_matricula) {
         header("location: educar_matricula_lst.php");
     }
     if ($obj_matricula->edita()) {
         echo "<script>\n\t\t\t\talert('Abandono realizado com sucesso');\n\t\t\t\twindow.location='educar_matricula_det.php?cod_matricula={$this->cod_matricula}';\n\t\t\t\t</script>";
     }
     die;
     return;
 }
    function renderHTML()
    {
        if ($_POST) {
            foreach ($_POST as $key => $value) {
                $this->{$key} = $value;
            }
        }
        if ($this->ref_ref_cod_serie) {
            $this->ref_cod_serie = $this->ref_ref_cod_serie;
        }
        $fonte = 'arial';
        $corTexto = '#000000';
        if ($this->ref_cod_escola) {
            $obj_escola = new clsPmieducarEscola($this->ref_cod_escola);
            $det_escola = $obj_escola->detalhe();
            $this->nm_escola = $det_escola['nome'];
            $obj_instituicao = new clsPmieducarInstituicao($det_escola['ref_cod_instituicao']);
            $det_instituicao = $obj_instituicao->detalhe();
            $this->nm_instituicao = $det_instituicao['nm_instituicao'];
        }
        if (is_numeric($this->ref_cod_serie)) {
            $obj_serie = new clsPmieducarSerie($this->ref_cod_serie);
            $det_serie = $obj_serie->detalhe();
            $this->nm_serie_ = $det_serie["nm_serie"];
        }
        if (is_numeric($this->ref_cod_turma)) {
            $obj_turma = new clsPmieducarTurma($this->ref_cod_turma);
            $det_turma = $obj_turma->detalhe();
            $this->nm_turma_ = $det_turma["nm_turma"];
        }
        $this->pdf = new clsPDF("Registro de Matrículas - {$this->ano}", "Registro de Matrículas", "A4", "", false, false);
        $this->pdf->largura = 842.0;
        $this->pdf->altura = 595.0;
        $this->page_y = 125;
        if ($this->is_padrao || $this->ano == 2007) {
            $this->semestre = null;
        }
        $obj_matricula = new clsPmieducarMatricula();
        $obj_matricula->setOrderby("ref_ref_cod_escola, ref_ref_cod_serie, ref_cod_curso");
        $lista_matricula = $obj_matricula->lista(null, null, $this->ref_cod_escola, $this->ref_cod_serie, null, null, null, array(1, 2, 3), null, null, null, null, 1, $this->ano, $this->ref_cod_curso, $this->ref_cod_instituicao, null, null, null, null, null, null, null, null, null, null, null, null, null, null, $this->semestre, $this->ref_cod_turma);
        if ($lista_matricula) {
            $obj_series = new clsPmieducarSerie();
            $lst_series = $obj_series->lista(null, null, null, $this->ref_cod_curso, null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao, null, null, null, $this->ref_cod_escola);
            if ($lst_series) {
                $lst_series2 = array();
                foreach ($lst_series as $serie) {
                    $lst_series2[$serie['cod_serie']] = $serie;
                }
                $lst_series = $lst_series2;
                unset($lst_series2);
            }
            $obj_turmas = new clsPmieducarTurma();
            $lst_turmas = $obj_turmas->lista(null, null, null, $this->ref_cod_serie, $this->ref_cod_escola, null, null, null, null, null, null, null, null, null, 1, null, null, null, null, null, null, null, null, null, $this->ref_cod_curso, $this->ref_cod_instituicao);
            if ($lst_turmas) {
                $lst_turmas2 = array();
                foreach ($lst_turmas as $turma) {
                    $lst_turmas2[$turma['cod_turma']] = $turma;
                }
                $lst_turmas = $lst_turmas2;
                unset($lst_turmas2);
            }
            $obj_cursos = new clsPmieducarCurso();
            $lst_cursos = $obj_cursos->lista(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 1, null, $this->ref_cod_instituicao);
            if ($lst_cursos) {
                $lst_curso2 = array();
                foreach ($lst_cursos as $curso) {
                    $lst_cursos2[$curso['cod_curso']] = $curso;
                }
                $lst_cursos = $lst_cursos2;
                unset($lst_curso2);
            }
            $altura_caixa = 45;
            //$curso = $lst_cursos[$lista_matricula[0]['cod_curso']];
            //$this->nm_curso = $curso['nm_curso'];
            $ultimo_cod = $lista_matricula[0]['cod_curso'];
            $this->pdf->OpenPage();
            $this->addCabecalho();
            $this->addTitulo();
            foreach ($lista_matricula as $matricula) {
                $this->nm_curso = $lst_cursos[$matricula['ref_cod_curso']]['nm_curso'];
                if ($this->page_y > 530 || $ultimo_cod != $matricula['ref_cod_curso']) {
                    $this->pdf->ClosePage();
                    $this->pdf->OpenPage();
                    $this->page_y = 125;
                    $this->addCabecalho();
                    $this->addTitulo();
                }
                $obj_pessoa = new clsPessoaFisica($matricula['ref_idpes']);
                $det_pessoa = $obj_pessoa->detalhe();
                $nacionalidade = array('NULL' => "Selecione", '1' => "Brasileiro", '2' => "Naturalizado Brasileiro", '3' => "Estrangeiro");
                $nacionalidade = $nacionalidade[$det_pessoa['nacionalidade']];
                $det_municipio = $det_pessoa['idmun_nascimento']->detalhe();
                $data_nasc = explode("-", $det_pessoa['data_nasc']);
                $idade = calculoIdade($data_nasc[2], $data_nasc[1], $data_nasc[0]);
                $data_nasc = implode("/", array($data_nasc[2], $data_nasc[1], $data_nasc[0]));
                $y_escrita = $this->page_y + $altura_caixa / 4;
                $obj_aluno = new clsPmieducarAluno($matricula['ref_cod_aluno']);
                $det_aluno = $obj_aluno->detalhe();
                $obj_fisica = new clsFisica($det_aluno["ref_idpes"]);
                $det_fisica = $obj_fisica->detalhe();
                if (!$det_aluno['nm_mae']) {
                    if ($det_fisica["idpes_mae"]) {
                        $obj_ref_idpes = new clsPessoa_($det_fisica["idpes_mae"]);
                        $det_ref_idpes = $obj_ref_idpes->detalhe();
                        $det_aluno['nm_mae'] = $det_ref_idpes['nome'];
                    } elseif ($det_fisica['nome_mae']) {
                        $det_aluno['nm_mae'] = $det_fisica['nome_mae'];
                    }
                }
                if (!$det_aluno['nm_pai']) {
                    if ($det_fisica["idpes_pai"]) {
                        $obj_ref_idpes = new clsPessoa_($det_fisica["idpes_pai"]);
                        $det_ref_idpes = $obj_ref_idpes->detalhe();
                        $det_aluno['nm_pai'] = $det_ref_idpes["nome"];
                    } elseif ($det_fisica['nome_pai']) {
                        $det_aluno['nome_pai'] = $det_fisica['nome_pai'];
                    }
                }
                if ($det_aluno['tipo_responsavel'] == 'r' || $det_aluno['tipo_responsavel'] == '') {
                    if ($det_fisica["idpes_responsavel"]) {
                        $obj_ref_idpes = new clsPessoa_($det_fisica["idpes_responsavel"]);
                        $det_ref_idpes = $obj_ref_idpes->detalhe();
                        if ($det_aluno['nome_pai']) {
                            if ($det_aluno['nm_responsavel'] != $det_aluno['nome_pai']) {
                                $det_aluno['nm_responsavel'] = $det_ref_idpes["nome"];
                            }
                        } elseif ($det_aluno['nome_mae']) {
                            if ($det_aluno['nm_responsavel'] != $det_aluno['nome_mae']) {
                                $det_aluno['nm_responsavel'] = $det_ref_idpes["nome"];
                            }
                        } else {
                            $det_aluno['nm_responsavel'] = $det_ref_idpes["nome"];
                        }
                    } elseif ($det_fisica['nome_responsavel']) {
                        if ($det_aluno['nome_pai']) {
                            if ($det_fisica['nome_responsavel'] != $det_aluno['nome_pai']) {
                                $det_aluno['nm_responsavel'] = $det_fisica['nome_responsavel'];
                            }
                        } elseif ($det_aluno['nome_mae']) {
                            if ($det_fisica['nome_responsavel'] != $det_aluno['nome_mae']) {
                                $det_aluno['nm_responsavel'] = $det_fisica['nome_responsavel'];
                            }
                        } else {
                            $det_aluno['nm_responsavel'] = $det_fisica['nome_responsavel'];
                        }
                    }
                }
                if ($det_aluno['nm_pai']) {
                    $det_aluno['nm_pai'] = "{$det_aluno['nm_pai']}\n";
                }
                if ($det_aluno['nm_mae']) {
                    $det_aluno['nm_mae'] = "{$det_aluno['nm_mae']}\n";
                }
                $filiacao = "{$det_aluno['nm_pai']}{$det_aluno['nm_mae']}{$det_aluno['nm_responsavel']}";
                $obj_matricula_turma = new clsPmieducarMatriculaTurma();
                $lst_matricula_turma = $obj_matricula_turma->lista($matricula['cod_matricula'], null, null, null, null, null, null, null, 1, $matricula['ref_ref_cod_serie'], $matricula['ref_cod_curso'], $matricula['ref_ref_cod_escola'], null, $matricula['ref_cod_aluno'], null, null, null);
                if (is_array($lst_matricula_turma)) {
                    $lst_matricula_turma = array_shift($lst_matricula_turma);
                    $hora_inicial = $lst_turmas[$lst_matricula_turma['ref_cod_turma']]['hora_inicial'];
                    $hora_final = $lst_turmas[$lst_matricula_turma['ref_cod_turma']]['hora_final'];
                    if ($hora_inicial >= '07:00' and $hora_inicial <= '12:00') {
                        $turno = 'Matutino';
                    } else {
                        if ($hora_inicial > '12:00' and $hora_inicial <= '18:00') {
                            $turno = 'Vespertino';
                        } else {
                            $turno = 'Noturno';
                        }
                    }
                } else {
                    $turno = 'N/A';
                }
                $obj_endereco = new clsPessoaEndereco($det_aluno["ref_idpes"]);
                if ($obj_endereco_det = $obj_endereco->detalhe()) {
                    $id_cep = $obj_endereco_det['cep']->cep;
                    $id_bairro = $obj_endereco_det['idbai']->detalhe();
                    $id_logradouro = $obj_endereco_det['idlog']->detalhe();
                    $id_mun = $id_bairro['idmun']->detalhe();
                    $id_logradouro = $id_logradouro['idlog']->detalhe();
                    $idtlog = $id_logradouro[1];
                    $numero = $obj_endereco_det['numero'];
                    $letra = $obj_endereco_det['letra'];
                    $complemento = $obj_endereco_det['complemento'];
                    $andar = $obj_endereco_det['andar'];
                    $apto = $obj_endereco_det['apartamento'];
                    $bloco = $obj_endereco_det['bloco'];
                    $cidade = $id_mun['nome'];
                    $bairro = $id_bairro['nome'];
                    $logradouro = $id_logradouro['nome'];
                    //$endereco_uf =  $obj_endereco_det['sigla_uf'];
                    $endereco_uf = $id_bairro['idmun']->sigla_uf;
                    $cep = int2CEP($id_cep);
                } else {
                    $obj_endereco = new clsEnderecoExterno($det_aluno["ref_idpes"]);
                    if ($obj_endereco_det = $obj_endereco->detalhe()) {
                        $id_cep = $obj_endereco_det['cep'];
                        $cidade = $obj_endereco_det['cidade'];
                        $bairro = $obj_endereco_det['bairro'];
                        $logradouro = $obj_endereco_det['logradouro'];
                        $numero = $obj_endereco_det['numero'];
                        $letra = $obj_endereco_det['letra'];
                        $complemento = $obj_endereco_det['complemento'];
                        $andar = $obj_endereco_det['andar'];
                        $apto = $obj_endereco_det['apartamento'];
                        $bloco = $obj_endereco_det['bloco'];
                        $idtlog = $obj_endereco_det['idtlog']->idtlog;
                        $endereco_uf = $obj_endereco_det['sigla_uf']->sigla_uf;
                        $cep = int2CEP($id_cep);
                    }
                }
                $idtlog = ucfirst(strtolower($idtlog));
                $logradouro = minimiza_capitaliza($logradouro);
                $cidade = minimiza_capitaliza($cidade);
                $endereco = "{$idtlog} {$logradouro},{$numero} {$letra} {$complemento} {$apto} {$bloco} {$andar}\n{$cep} {$bairro}, {$cidade} {$endereco_uf}";
                $this->pdf->quadrado_relativo(30, $this->page_y, 782, $altura_caixa);
                $this->pdf->quadrado_relativo(30, $this->page_y, 40, $altura_caixa);
                $this->pdf->quadrado_relativo(70, $this->page_y, 50, $altura_caixa);
                $this->pdf->quadrado_relativo(115, $this->page_y, 175, $altura_caixa);
                $this->pdf->quadrado_relativo(285, $this->page_y, 55, $altura_caixa);
                $this->pdf->quadrado_relativo(335, $this->page_y, 190, $altura_caixa);
                $this->pdf->quadrado_relativo(520, $this->page_y, 160, $altura_caixa);
                $this->pdf->quadrado_relativo(680, $this->page_y, 80, $altura_caixa);
                $this->pdf->escreve_relativo("{$matricula['ref_cod_aluno']}", 30, $y_escrita + 5, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                $this->pdf->escreve_relativo("{$matricula['cod_matricula']}", 70, $y_escrita + 5, 50, $altura_caixa, $fonte, 8, $corTexto, 'center');
                $this->pdf->escreve_relativo("{$matricula['nome']}\n{$endereco}", 115, $y_escrita - 3, 175, $altura_caixa, $fonte, 8, $corTexto, 'center');
                $this->pdf->escreve_relativo("{$data_nasc}\n{$idade} anos", 285, $y_escrita + 5, 50, $altura_caixa, $fonte, 8, $corTexto, 'center');
                $this->pdf->escreve_relativo("{$filiacao}", 335, $y_escrita + 5, 175, $altura_caixa, $fonte, 8, $corTexto, 'center');
                if ($this->campo_assinatura) {
                    $this->pdf->escreve_relativo(" ", 520, $y_escrita + 2, 160, $altura_caixa, $fonte, 8, $corTexto, 'center');
                } else {
                    $this->pdf->escreve_relativo("{$nacionalidade}\n{$det_municipio['nome']}", 520, $y_escrita + 2, 160, $altura_caixa, $fonte, 8, $corTexto, 'center');
                }
                $obj_matricula_turma2 = new clsPmieducarMatriculaTurma();
                $det_matricula_turma2 = $obj_matricula_turma2->lista($matricula["cod_matricula"], null, null, null, null, null, null, null, 1);
                if (is_array($det_matricula_turma2)) {
                    $det_matricula_turma2 = array_shift($det_matricula_turma2);
                    $obj_turma = new clsPmieducarTurma($det_matricula_turma2["ref_cod_turma"]);
                    $det_turma = $obj_turma->detalhe();
                }
                $this->pdf->escreve_relativo("{$lst_series[$matricula['ref_ref_cod_serie']]['nm_serie']}\n{$det_turma["nm_turma"]}", 680, $y_escrita + 5, 80, $altura_caixa, $fonte, 8, $corTexto, 'center');
                $this->pdf->escreve_relativo("{$turno}", 760, $y_escrita + 5, 50, $altura_caixa, $fonte, 8, $corTexto, 'center');
                $this->page_y += $altura_caixa;
                $ultimo_cod = $matricula['ref_cod_curso'];
            }
            $this->pdf->ClosePage();
        } else {
            echo '<script>
	     					alert("A turma não possui matrículas");
	     					window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1));
			     		  </script>';
            return true;
            return;
        }
        $this->pdf->CloseFile();
        $this->get_link = $this->pdf->GetLink();
        echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>";
        echo "<html><center>Se o download não iniciar automaticamente <br /><a target='_blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n\t\t\t<span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\n\t\t\tClique na Imagem para Baixar o instalador<br><br>\n\t\t\t<a href=\"http://www.adobe.com.br/products/acrobat/readstep2.html\" target=\"new\"><br><img src=\"imagens/acrobat.gif\" width=\"88\" height=\"31\" border=\"0\"></a>\n\t\t\t</span>\n\t\t\t</center>";
    }
Example #5
0
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Matr&iacute;cula - Listagem";
     foreach ($_GET as $var => $val) {
         // passa todos os valores obtidos no GET para atributos do objeto
         $this->{$var} = $val === "" ? null : $val;
     }
     if (!$this->ref_cod_aluno) {
         header("location: educar_aluno_lst.php");
         die;
     }
     $this->campoOculto("ref_cod_aluno", $this->ref_cod_aluno);
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $lista_busca = array("Ano", "Matrícula", "Situação", "Turma", "S&eacute;rie", "Curso");
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if ($nivel_usuario == 1) {
         $lista_busca[] = "Escola";
         $lista_busca[] = "Institui&ccedil;&atilde;o";
     } else {
         if ($nivel_usuario == 2) {
             $lista_busca[] = "Escola";
         }
     }
     $this->addCabecalhos($lista_busca);
     $get_escola = true;
     $get_curso = true;
     $get_escola_curso_serie = true;
     include "include/pmieducar/educar_campo_lista.php";
     if ($this->ref_cod_escola) {
         $this->ref_ref_cod_escola = $this->ref_cod_escola;
     }
     // Paginador
     $this->limite = 20;
     $this->offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->limite - $this->limite : 0;
     $obj_matricula = new clsPmieducarMatricula();
     $obj_matricula->setOrderby('ano DESC, ref_ref_cod_serie DESC, aprovado, cod_matricula');
     $obj_matricula->setLimite($this->limite, $this->offset);
     $lista = $obj_matricula->lista($this->cod_matricula, null, $this->ref_ref_cod_escola, $this->ref_ref_cod_serie, null, null, $this->ref_cod_aluno, null, null, null, null, null, 1, null, $this->ref_cod_curso, $this->ref_cod_instituicao, 1);
     $total = $obj_matricula->_total;
     // monta a lista
     if (is_array($lista) && count($lista)) {
         foreach ($lista as $registro) {
             if (class_exists("clsPmieducarCurso")) {
                 $obj_ref_cod_curso = new clsPmieducarCurso($registro["ref_cod_curso"]);
                 $det_ref_cod_curso = $obj_ref_cod_curso->detalhe();
                 $registro["ref_cod_curso"] = $det_ref_cod_curso["nm_curso"];
             } else {
                 $registro["ref_cod_curso"] = "Erro na geracao";
                 echo "<!--\nErro\nClasse nao existente: clsPmieducarCurso\n-->";
             }
             if (class_exists("clsPmieducarSerie")) {
                 $obj_serie = new clsPmieducarSerie($registro["ref_ref_cod_serie"]);
                 $det_serie = $obj_serie->detalhe();
                 $registro["ref_ref_cod_serie"] = $det_serie["nm_serie"];
             } else {
                 $registro["ref_ref_cod_serie"] = "Erro na geracao";
                 echo "<!--\nErro\nClasse nao existente: clsPmieducarSerie\n-->";
             }
             if (class_exists("clsPmieducarInstituicao")) {
                 $obj_cod_instituicao = new clsPmieducarInstituicao($registro["ref_cod_instituicao"]);
                 $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe();
                 $registro["ref_cod_instituicao"] = $obj_cod_instituicao_det["nm_instituicao"];
             } else {
                 $registro["ref_cod_instituicao"] = "Erro na gera&ccedil;&atilde;o";
                 echo "<!--\nErro\nClasse n&atilde;o existente: clsPmieducarInstituicao\n-->";
             }
             if (class_exists("clsPmieducarEscola")) {
                 $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_ref_cod_escola"]);
                 $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
                 $registro["ref_ref_cod_escola"] = $det_ref_cod_escola["nome"];
             } else {
                 $registro["ref_ref_cod_escola"] = "Erro na gera&ccedil;&atilde;o";
                 echo "<!--\nErro\nClasse n&atilde;o existente: clsPmieducarEscola\n-->";
             }
             $enturmacoes = new clsPmieducarMatriculaTurma();
             $enturmacoes = $enturmacoes->lista($registro['cod_matricula'], NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
             $nomesTurmas = array();
             foreach ($enturmacoes as $enturmacao) {
                 $turma = new clsPmieducarTurma($enturmacao['ref_cod_turma']);
                 $turma = $turma->detalhe();
                 $nomesTurmas[] = $turma['nm_turma'];
             }
             $nomesTurmas = implode('<br />', $nomesTurmas);
             $situacao = $registro['aprovado'];
             if ($situacao == 1) {
                 $situacao = 'Aprovado';
             } elseif ($situacao == 2) {
                 $situacao = 'Reprovado';
             } elseif ($situacao == 3) {
                 $situacao = 'Em Andamento';
             } elseif ($situacao == 4) {
                 $situacao = 'Transferido';
             } elseif ($situacao == 5) {
                 $situacao = 'Reclassificado';
             } elseif ($situacao == 6) {
                 $situacao = 'Abandono';
             }
             $lista_busca = array();
             $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ano"]}</a>";
             $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["cod_matricula"]}</a>";
             $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$situacao}</a>";
             if ($nomesTurmas) {
                 $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$nomesTurmas}</a>";
             } else {
                 $lista_busca[] = "";
             }
             if ($registro["ref_ref_cod_serie"]) {
                 $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_ref_cod_serie"]}</a>";
             } else {
                 $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">-</a>";
             }
             /*$lista_busca = array(
             			"<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_ref_cod_serie"]}</a>",
             			"<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_cod_curso"]}</a>"
             		);*/
             $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_cod_curso"]}</a>";
             if ($nivel_usuario == 1) {
                 if ($registro["ref_ref_cod_escola"]) {
                     $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_ref_cod_escola"]}</a>";
                 } else {
                     $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">-</a>";
                 }
                 $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_cod_instituicao"]}</a>";
             } else {
                 if ($nivel_usuario == 2) {
                     if ($registro["ref_ref_cod_escola"]) {
                         $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">{$registro["ref_ref_cod_escola"]}</a>";
                     } else {
                         $lista_busca[] = "<a href=\"educar_matricula_det.php?cod_matricula={$registro["cod_matricula"]}\">-</a>";
                     }
                 }
             }
             $this->addLinhas($lista_busca);
         }
     } else {
         $this->addLinhas(array('Aluno sem matrículas em andamento na sua escola.'));
     }
     $this->addPaginador2("educar_matricula_lst.php", $total, $_GET, $this->nome, $this->limite);
     if ($obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7)) {
         $this->acao = "go(\"educar_matricula_cad.php?ref_cod_aluno={$this->ref_cod_aluno}\")";
         $this->nome_acao = "Nova Matr&iacute;cula";
     }
     $this->array_botao[] = 'Voltar';
     $this->array_botao_url[] = "educar_aluno_det.php?cod_aluno={$this->ref_cod_aluno}";
     $this->largura = "100%";
 }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Matriculas Turma - Detalhe";
     $this->ref_cod_turma = $_GET["ref_cod_turma"];
     if (class_exists("clsPmieducarTurma")) {
         $obj_turma = new clsPmieducarTurma($this->ref_cod_turma);
         $det_turma = $obj_turma->detalhe();
         $nm_turma = $det_turma["nm_turma"];
         $ref_ref_cod_serie = $det_turma["ref_ref_cod_serie"];
         $ref_ref_cod_escola = $det_turma["ref_ref_cod_escola"];
         $ref_cod_curso = $det_turma["ref_cod_curso"];
     } else {
         $registro["ref_cod_turma"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarTurma\n-->";
     }
     if ($ref_ref_cod_serie) {
         // busca o ano em q a escola esta em andamento
         $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo();
         $lst_ano_letivo = $obj_ano_letivo->lista($ref_ref_cod_escola, null, null, null, 1, null, null, null, null, 1);
         if (is_array($lst_ano_letivo)) {
             $det_ano_letivo = array_shift($lst_ano_letivo);
             $ano_letivo = $det_ano_letivo["ano"];
         } else {
             $this->mensagem = "N&atilde;o foi poss&iacute;vel encontrar o Ano Letivo.";
             return false;
         }
     }
     if ($ano_letivo || !$ref_ref_cod_serie) {
         $obj_matriculas_turma = new clsPmieducarMatriculaTurma();
         $lst_matriculas_turma = $obj_matriculas_turma->lista(null, $this->ref_cod_turma, null, null, null, null, null, null, 1, null, null, null, null, null, false, null, array(1, 2, 3), null, null, $ano_letivo, null, false, null, 1, true);
         if (is_array($lst_matriculas_turma)) {
             $qtd_alunos = count($lst_matriculas_turma);
             foreach ($lst_matriculas_turma as $key => $matricula) {
                 $obj_matricula = new clsPmieducarMatricula($matricula["ref_cod_matricula"]);
                 $det_matricula = $obj_matricula->detalhe();
                 $obj_aluno = new clsPmieducarAluno();
                 $lst_aluno = $obj_aluno->lista($det_matricula["ref_cod_aluno"]);
                 $det_aluno = array_shift($lst_aluno);
                 $nm_alunos[] = $det_aluno["nome_aluno"];
             }
             $registro = array_shift($lst_matriculas_turma);
         } else {
             $obj_turma = new clsPmieducarTurma();
             $lst_turma = $obj_turma->lista($this->ref_cod_turma);
             if (is_array($lst_turma)) {
                 $registro = array_shift($lst_turma);
             }
         }
     } else {
         $obj_turma = new clsPmieducarTurma();
         $lst_turma = $obj_turma->lista($this->ref_cod_turma);
         if (is_array($lst_turma)) {
             $registro = array_shift($lst_turma);
         }
     }
     if (!$registro) {
         header("location: educar_matriculas_turma_lst.php");
         die;
     }
     if (class_exists("clsPmieducarSerie")) {
         $obj_ref_cod_serie = new clsPmieducarSerie($registro["ref_ref_cod_serie"]);
         $det_ref_cod_serie = $obj_ref_cod_serie->detalhe();
         $nm_serie = $det_ref_cod_serie["nm_serie"];
     } else {
         $registro["ref_ref_cod_serie"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarSerie\n-->";
     }
     if (class_exists("clsPmieducarCurso")) {
         $obj_ref_cod_curso = new clsPmieducarCurso($registro["ref_cod_curso"]);
         $det_ref_cod_curso = $obj_ref_cod_curso->detalhe();
         $registro["ref_cod_curso"] = $det_ref_cod_curso["nm_curso"];
     } else {
         $registro["ref_cod_curso"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarCurso\n-->";
     }
     if (class_exists("clsPmieducarInstituicao")) {
         $obj_cod_instituicao = new clsPmieducarInstituicao($registro["ref_cod_instituicao"]);
         $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe();
         $registro["ref_cod_instituicao"] = $obj_cod_instituicao_det["nm_instituicao"];
     } else {
         $registro["ref_cod_instituicao"] = "Erro na gera&ccedil;&atilde;o";
         echo "<!--\nErro\nClasse n&atilde;o existente: clsPmieducarInstituicao\n-->";
     }
     if (class_exists("clsPmieducarEscola")) {
         $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_ref_cod_escola"]);
         $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
         $nm_escola = $det_ref_cod_escola["nome"];
     } else {
         $registro["ref_ref_cod_escola"] = "Erro na gera&ccedil;&atilde;o";
         echo "<!--\nErro\nClasse n&atilde;o existente: clsPmieducarEscola\n-->";
     }
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if ($nivel_usuario == 1) {
         if ($registro["ref_cod_instituicao"]) {
             $this->addDetalhe(array("Institui&ccedil;&atilde;o", "{$registro["ref_cod_instituicao"]}"));
         }
     }
     if ($nivel_usuario == 1 || $nivel_usuario == 2) {
         if ($nm_escola) {
             $this->addDetalhe(array("Escola", "{$nm_escola}"));
         }
     }
     if ($registro["ref_cod_curso"]) {
         $this->addDetalhe(array("Curso", "{$registro["ref_cod_curso"]}"));
     }
     if ($nm_serie) {
         $this->addDetalhe(array("S&eacute;rie", "{$nm_serie}"));
     }
     if ($nm_turma) {
         $this->addDetalhe(array("Turma", "{$nm_turma}"));
     }
     if ($max_aluno) {
         $this->addDetalhe(array("M&aacute;ximo de Alunos", "{$max_aluno}"));
     }
     if ($qtd_alunos) {
         $this->addDetalhe(array("Qtd Alunos Matriculados", "{$qtd_alunos}"));
     }
     if ($max_aluno && $qtd_alunos) {
         $vagas = $max_aluno - $qtd_alunos;
         $this->addDetalhe(array("Vagas Restantes", "{$vagas}"));
     }
     if (is_array($nm_alunos)) {
         sort($nm_alunos);
         $tabela = "<table>\n\t\t\t\t\t       <tr align=center>\n\t\t\t\t\t           <td bgcolor=#a1b3bd><b>Nome</b></td>\n\t\t\t\t\t       </tr>";
         reset($nm_alunos);
         for ($i = 0; $i < count($nm_alunos); $i++) {
             if ($i % 2 == 0) {
                 $color = " bgcolor=#E4E9ED ";
             } else {
                 $color = " bgcolor=#FFFFFF ";
             }
             $tabela .= "<tr>\n\t\t\t\t\t\t\t\t<td align=center {$color} align=left>{$nm_alunos[$i]}</td>\n\t\t\t\t\t\t\t</tr>";
         }
         $tabela .= "</table>";
     }
     if ($tabela) {
         $this->addDetalhe(array("Alunos Matriculados", "{$tabela}"));
     }
     if ($obj_permissoes->permissao_cadastra(659, $this->pessoa_logada, 7)) {
         $this->url_editar = "educar_matriculas_turma_cad.php?ref_cod_turma={$this->ref_cod_turma}";
     }
     $this->url_cancelar = "educar_matriculas_turma_lst.php";
     $this->largura = "100%";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_index.php" => "i-Educar - Escola", "" => "Detalhe das matr&iacute;culas da turma"));
     $this->enviaLocalizacao($localizacao->montar());
 }
 protected function removerFlagUltimaMatricula($alunoId)
 {
     $matriculas = new clsPmieducarMatricula();
     $matriculas = $matriculas->lista(NULL, NULL, NULL, NULL, NULL, NULL, $this->ref_cod_aluno, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, 1);
     foreach ($matriculas as $matricula) {
         $matricula = new clsPmieducarMatricula($matricula['cod_matricula'], NULL, NULL, NULL, $this->pessoa_logada, NULL, $alunoId, NULL, NULL, NULL, 1, NULL, 0);
         if (!$matricula->edita()) {
             $this->mensagem = 'Erro ao remover flag ultima matricula das matriculas anteriores.';
             return false;
         }
     }
     return true;
 }
 /**
  * Construtor.
  */
 function clsPmieducarDispensaDisciplina($ref_cod_matricula = NULL, $ref_cod_serie = NULL, $ref_cod_escola = NULL, $ref_cod_disciplina = NULL, $ref_usuario_exc = NULL, $ref_usuario_cad = NULL, $ref_cod_tipo_dispensa = NULL, $data_cadastro = NULL, $data_exclusao = NULL, $ativo = NULL, $observacao = NULL, $cod_dispensa = NULL)
 {
     $db = new clsBanco();
     $this->_schema = 'pmieducar.';
     $this->_tabela = $this->_schema . 'dispensa_disciplina';
     $this->_campos_lista = $this->_todos_campos = 'ref_cod_matricula, ref_cod_serie, ref_cod_escola, ref_cod_disciplina, ref_usuario_exc, ref_usuario_cad, ref_cod_tipo_dispensa, data_cadastro, data_exclusao, ativo, observacao';
     if (is_numeric($ref_usuario_exc)) {
         $usuario = new clsPmieducarUsuario($ref_usuario_exc);
         if ($usuario->existe()) {
             $this->ref_usuario_exc = $ref_usuario_exc;
         }
     }
     if (is_numeric($ref_usuario_cad)) {
         $usuario = new clsPmieducarUsuario($ref_usuario_cad);
         if ($usuario->existe()) {
             $this->ref_usuario_cad = $ref_usuario_cad;
         }
     }
     if (is_numeric($ref_cod_matricula)) {
         $matricula = new clsPmieducarMatricula($ref_cod_matricula);
         if ($matricula->existe()) {
             $this->ref_cod_matricula = $ref_cod_matricula;
         }
     }
     if (is_numeric($ref_cod_tipo_dispensa)) {
         $tipoDispensa = new clsPmieducarTipoDispensa($ref_cod_tipo_dispensa);
         if ($tipoDispensa->existe()) {
             $this->ref_cod_tipo_dispensa = $ref_cod_tipo_dispensa;
         }
     }
     if (is_numeric($ref_cod_disciplina) && is_numeric($ref_cod_escola) && is_numeric($ref_cod_serie)) {
         require_once 'ComponenteCurricular/Model/AnoEscolarDataMapper.php';
         $anoEscolarMapper = new ComponenteCurricular_Model_AnoEscolarDataMapper();
         $componenteAnos = $anoEscolarMapper->findAll(array(), array('componenteCurricular' => $ref_cod_disciplina, 'anoEscolar' => $ref_cod_serie));
         if (1 == count($componenteAnos)) {
             $this->ref_cod_disciplina = $ref_cod_disciplina;
             $this->ref_cod_serie = $ref_cod_serie;
             $this->ref_cod_escola = $ref_cod_escola;
         }
     }
     if (is_string($data_cadastro)) {
         $this->data_cadastro = $data_cadastro;
     }
     if (is_string($data_exclusao)) {
         $this->data_exclusao = $data_exclusao;
     }
     if (is_numeric($ativo)) {
         $this->ativo = $ativo;
     }
     if (is_string($observacao)) {
         $this->observacao = $observacao;
     }
     if (is_numeric($cod_dispensa)) {
         $this->cod_dispensa = $cod_dispensa;
     }
 }
 function Novo()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7, "educar_matricula_lst.php?ref_cod_aluno={$this->ref_cod_aluno}");
     if ($this->ref_ref_cod_serie == $this->ref_ref_cod_serie_antiga) {
         header("location: educar_matricula_det.php?cod_matricula={$this->cod_matricula}");
     }
     $obj_matricula = new clsPmieducarMatricula($this->cod_matricula);
     $det_matricula = $obj_matricula->detalhe();
     if (!$det_matricula || $det_matricula['aprovado'] != 3) {
         header("location: educar_matricula_lst.php?ref_cod_aluno={$this->ref_cod_aluno}");
     }
     $obj_matricula = new clsPmieducarMatricula($this->cod_matricula, null, null, null, $this->pessoa_logada, null, null, 5, null, null, 1, null, 0, null, null, $this->descricao_reclassificacao);
     if (!$obj_matricula->edita()) {
         echo "<script>alert('Erro ao reclassificar matrícula'); window.location='educar_matricula_lst.php?ref_cod_aluno={$this->ref_cod_aluno}';</script>";
         die("Erro ao reclassificar matrícula");
     }
     $obj_serie = new clsPmieducarSerie($this->ref_ref_cod_serie);
     $det_serie = $obj_serie->detalhe();
     $obj_matricula = new clsPmieducarMatricula(null, null, $this->ref_cod_escola, $this->ref_ref_cod_serie, null, $this->pessoa_logada, $this->ref_cod_aluno, 3, null, null, 1, $det_matricula['ano'], 1, null, null, null, 1, $det_serie["ref_cod_curso"]);
     $cadastrou = $obj_matricula->cadastra();
     if (!$cadastrou) {
         echo "<script>alert('Erro ao reclassificar matrícula'); window.location='educar_matricula_lst.php?ref_cod_aluno={$this->ref_cod_aluno}';</script>";
         die("Erro ao reclassificar matrícula");
     } else {
         /**
          * desativa todas as enturmacoes da matricula anterior
          */
         $obj_matricula_turma = new clsPmieducarMatriculaTurma($this->cod_matricula);
         if (!$obj_matricula_turma->reclassificacao()) {
             echo "<script>alert('Erro ao desativar enturmações da matrícula: {$this->cod_matricula}\nContate o administrador do sistema informando a matrícula!');</script>";
         }
         //window.location='educar_matricula_det.php?cod_matricula={$this->cod_matricula}&ref_cod_aluno={$this->ref_cod_aluno}';
         echo "<script>alert('Reclassificação realizada com sucesso!\\nO Código da nova matrícula é: {$cadastrou}.');\n\t\t\twindow.location='educar_matricula_lst.php?ref_cod_aluno={$this->ref_cod_aluno}';\n\t\t\t</script>";
         die('Reclassificação realizada com sucesso!');
     }
 }
    function Gerar()
    {
        @session_start();
        $this->pessoa_logada = $_SESSION['id_pessoa'];
        session_write_close();
        $this->titulo = 'Matricula Turma - Detalhe';
        $this->addBanner('imagens/nvp_top_intranet.jpg', 'imagens/nvp_vert_intranet.jpg', 'Intranet');
        foreach ($_POST as $key => $value) {
            $this->{$key} = $value;
        }
        if (!$this->ref_cod_matricula) {
            header('Location: educar_matricula_lst.php');
            die;
        }
        $obj_mat_turma = new clsPmieducarMatriculaTurma();
        $det_mat_turma = $obj_mat_turma->lista($this->ref_cod_matricula, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
        if ($det_mat_turma) {
            $det_mat_turma = array_shift($det_mat_turma);
            $obj_turma = new clsPmieducarTurma($det_mat_turma['ref_cod_turma']);
            $det_turma = $obj_turma->detalhe();
            $this->nm_turma = $det_turma['nm_turma'];
            $this->ref_cod_turma_origem = $det_turma['cod_turma'];
            $this->sequencial = $det_mat_turma['sequencial'];
        }
        // #TODO adicionar ano da matricula atual
        #$tmp_obj = new clsPmieducarMatriculaTurma( );
        #$lista = $tmp_obj->lista(NULL, $this->ref_cod_turma, NULL, NULL, NULL, NULL,
        #  NULL, NULL, 1);
        #$total_alunos = 0;
        #if ($lista) {
        #  $total_alunos = count($lista);
        #}
        $tmp_obj = new clsPmieducarTurma();
        $lst_obj = $tmp_obj->lista($this->ref_cod_turma);
        $registro = array_shift($lst_obj);
        $db = new clsBanco();
        $ano = $db->CampoUnico("select ano from pmieducar.matricula where cod_matricula = {$this->ref_cod_matricula}");
        $sql = "select count(cod_matricula) as qtd_matriculas from pmieducar.matricula, pmieducar.matricula_turma, pmieducar.aluno where aluno.cod_aluno = matricula.ref_cod_aluno and ano = {$ano} and aluno.ativo = 1 and matricula.ativo = 1 and matricula_turma.ativo = matricula.ativo and cod_matricula = ref_cod_matricula and ref_cod_turma = {$this->ref_cod_turma}";
        $total_alunos = $db->CampoUnico($sql);
        $this->ref_cod_curso = $registro['ref_cod_curso'];
        if (!$registro || !$_POST) {
            header('Location: educar_matricula_lst.php');
            die;
        }
        // Tipo da turma
        $obj_ref_cod_turma_tipo = new clsPmieducarTurmaTipo($registro['ref_cod_turma_tipo']);
        $det_ref_cod_turma_tipo = $obj_ref_cod_turma_tipo->detalhe();
        $registro['ref_cod_turma_tipo'] = $det_ref_cod_turma_tipo['nm_tipo'];
        // Código da instituição
        $obj_cod_instituicao = new clsPmieducarInstituicao($registro['ref_cod_instituicao']);
        $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe();
        $registro['ref_cod_instituicao'] = $obj_cod_instituicao_det['nm_instituicao'];
        // Nome da escola
        $obj_ref_cod_escola = new clsPmieducarEscola($registro['ref_ref_cod_escola']);
        $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
        $registro['ref_ref_cod_escola'] = $det_ref_cod_escola['nome'];
        // Nome do curso
        $obj_ref_cod_curso = new clsPmieducarCurso($registro['ref_cod_curso']);
        $det_ref_cod_curso = $obj_ref_cod_curso->detalhe();
        $registro['ref_cod_curso'] = $det_ref_cod_curso['nm_curso'];
        $padrao_ano_escolar = $det_ref_cod_curso['padrao_ano_escolar'];
        // Nome da série
        $obj_ser = new clsPmieducarSerie($registro['ref_ref_cod_serie']);
        $det_ser = $obj_ser->detalhe();
        $registro['ref_ref_cod_serie'] = $det_ser['nm_serie'];
        // Matrícula
        $obj_ref_cod_matricula = new clsPmieducarMatricula();
        $detalhe_aluno = array_shift($obj_ref_cod_matricula->lista($this->ref_cod_matricula));
        $obj_aluno = new clsPmieducarAluno();
        $det_aluno = array_shift($det_aluno = $obj_aluno->lista($detalhe_aluno['ref_cod_aluno'], NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1));
        $obj_escola = new clsPmieducarEscola($this->ref_cod_escola, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
        $det_escola = $obj_escola->detalhe();
        $this->addDetalhe(array('Nome do Aluno', $det_aluno['nome_aluno']));
        $objTemp = new clsPmieducarTurma($this->ref_cod_turma);
        $det_turma = $objTemp->detalhe();
        if ($registro['ref_ref_cod_escola']) {
            $this->addDetalhe(array('Escola', $registro['ref_ref_cod_escola']));
        }
        if ($registro['ref_cod_curso']) {
            $this->addDetalhe(array('Curso', $registro['ref_cod_curso']));
        }
        if ($registro['ref_ref_cod_serie']) {
            $this->addDetalhe(array('S&eacute;rie', $registro['ref_ref_cod_serie']));
        }
        //(enturmações) turma atual
        $enturmacoes = new clsPmieducarMatriculaTurma();
        $enturmacoes = $enturmacoes->lista($this->ref_cod_matricula, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
        $this->possuiEnturmacao = !empty($enturmacoes);
        $this->possuiEnturmacaoTurmaDestino = false;
        $this->turmaOrigemMesmaDestino = false;
        $this->addDetalhe(array('<b>Turma selecionada</b>', '<b>' . $registro['nm_turma'] . '</b>'));
        $this->addDetalhe(array('Total de vagas', $registro['max_aluno']));
        if (is_numeric($total_alunos)) {
            $this->addDetalhe(array('Alunos enturmados', $total_alunos));
            $this->addDetalhe(array('Vagas disponíveis', $registro['max_aluno'] - $total_alunos));
        }
        if ($this->possuiEnturmacao) {
            //se possui uma enturmacao mostra o nome, se mais de uma mostra select para selecionar
            if (count($enturmacoes) > 1) {
                $selectEnturmacoes = "<select id='ref_cod_turma_origem' class='obrigatorio'>";
                $selectEnturmacoes .= "<option value=''>Selecione</option>";
                foreach ($enturmacoes as $enturmacao) {
                    if ($enturmacao['ref_cod_turma'] != $this->ref_cod_turma) {
                        $selectEnturmacoes .= "<option value='{$enturmacao['ref_cod_turma']}'>{$enturmacao['nm_turma']}</option>";
                    } elseif (!$this->possuiEnturmacaoTurmaDestino) {
                        $this->possuiEnturmacaoTurmaDestino = true;
                    }
                }
                $selectEnturmacoes .= "</select>";
            } else {
                if ($enturmacoes[0]['ref_cod_turma'] == $this->ref_cod_turma) {
                    $this->possuiEnturmacaoTurmaDestino = true;
                    $this->turmaOrigemMesmaDestino = true;
                }
                $selectEnturmacoes = "<input id='ref_cod_turma_origem' type='hidden' value = '{$enturmacoes[0]['ref_cod_turma']}'/>{$enturmacoes[0]['nm_turma']}";
            }
            $this->addDetalhe(array('<b>Enturmação</b>', $selectEnturmacoes));
        }
        if (!$this->possuiEnturmacaoTurmaDestino) {
            $this->addDetalhe(array('Data da enturmação', '<input onkeypress="formataData(this,event);" value="' . date('d/m/Y') . '" class="geral" type="text" name="data_enturmacao" id="data_enturmacao" size="9" maxlength="10"/>'));
        }
        $this->addDetalhe(array('-', sprintf('
        <form name="formcadastro" method="post" action="educar_matricula_turma_cad.php">
          <input type="hidden" name="ref_cod_matricula" value="">
          <input type="hidden" name="ref_cod_serie" value="">
          <input type="hidden" name="ref_cod_escola" value="">
          <input type="hidden" name="ref_cod_turma_origem" value="%d">
          <input type="hidden" name="ref_cod_turma_destino" value="">
          <input type="hidden" name="data_enturmacao" value="">
          <input type="hidden" name="sequencial" value="%d">
        </form>
      ', $this->ref_cod_turma_origem, $this->sequencial)));
        if ($registro['max_aluno'] - $total_alunos <= 0) {
            $escolaSerie = $this->getEscolaSerie($det_ref_cod_escola['cod_escola'], $det_ser['cod_serie']);
            if ($escolaSerie['bloquear_enturmacao_sem_vagas'] != 1) {
                $msg = sprintf('Atenção! Turma sem vagas! Deseja continuar com a enturmação mesmo assim?');
                $jsEnturmacao = sprintf('if (!confirm("%s")) return false;', $msg);
            } else {
                $msg = sprintf('Enturmação não pode ser realizada,\\n\\no limite de vagas da turma já foi atingido e para esta série e escola foi definido bloqueio de enturmação após atingir tal limite.');
                $jsEnturmacao = sprintf('alert("%s"); return false;', $msg);
            }
        } else {
            $jsEnturmacao = 'if (!confirm("Confirma a enturmação?")) return false;';
        }
        $script = sprintf('
      <script type="text/javascript">

        function enturmar(ref_cod_matricula, ref_cod_turma_destino, tipo){
          document.formcadastro.ref_cod_turma_origem.value = "";

          if(tipo == "transferir") {
            var turmaOrigemId = document.getElementById("ref_cod_turma_origem");
            if (turmaOrigemId && turmaOrigemId.value)
              document.formcadastro.ref_cod_turma_origem.value = turmaOrigemId.value;
            else {
              alert("Por favor, selecione a enturmação a ser transferida.");
              return false;
            }
          }

          %s

          document.formcadastro.ref_cod_matricula.value = ref_cod_matricula;
          document.formcadastro.ref_cod_turma_destino.value = ref_cod_turma_destino;
          document.formcadastro.data_enturmacao.value = document.getElementById("data_enturmacao").value;
          document.formcadastro.submit();
        }

        function removerEnturmacao(ref_cod_matricula, ref_cod_turma_destino) {

          if (! confirm("Confirma remoção da enturmação?"))
            return false;

          document.formcadastro.ref_cod_turma_origem.value = "remover-enturmacao-destino";
          document.formcadastro.ref_cod_matricula.value = ref_cod_matricula;
          document.formcadastro.ref_cod_turma_destino.value = ref_cod_turma_destino;
          document.formcadastro.submit();
        }

      </script>', $jsEnturmacao);
        print $script;
        $canCreate = new clsPermissoes();
        $canCreate = $canCreate->permissao_cadastra(578, $this->pessoa_logada, 7);
        if ($this->possuiEnturmacaoTurmaDestino && $canCreate) {
            $this->array_botao = array('Remover (enturmação) da turma selecionada');
            $this->array_botao_url_script = array("removerEnturmacao({$this->ref_cod_matricula}, {$this->ref_cod_turma})");
        }
        if (!$this->turmaOrigemMesmaDestino && $canCreate) {
            //mover enturmação
            if ($this->possuiEnturmacao) {
                $this->array_botao[] = 'Transferir para turma selecionada';
                $this->array_botao_url_script[] = "enturmar({$this->ref_cod_matricula}, {$this->ref_cod_turma}, \"transferir\")";
            }
            //nova enturmação
            if (!$this->possuiEnturmacaoTurmaDestino && $canCreate) {
                $this->array_botao[] = 'Enturmar na turma selecionada';
                $this->array_botao_url_script[] = "enturmar({$this->ref_cod_matricula}, {$this->ref_cod_turma}, \"nova\")";
            }
        }
        $this->array_botao[] = 'Voltar';
        $this->array_botao_url_script[] = "go(\"educar_matricula_turma_lst.php?ref_cod_matricula={$this->ref_cod_matricula}\");";
        $this->largura = '100%';
    }
 function rematricularAlunosReprovados()
 {
     $obj_matricula = new clsPmieducarMatricula();
     $lst_matricula = $obj_matricula->lista(null, null, $this->ref_cod_escola, null, null, null, null, 2, null, null, null, null, 1, $this->ano - 1, null, null, 1);
     if (!is_array($lst_matricula)) {
         return;
     }
     foreach ($lst_matricula as $key => $matricula) {
         $obj_serie = new clsPmieducarSerie($matricula['ref_ref_cod_serie']);
         $det_serie = $obj_serie->detalhe();
         $obj = new clsPmieducarMatricula($matricula['cod_matricula'], null, null, null, $this->pessoa_logada, null, null, null, null, null, 1, null, 0);
         $editou1 = $obj->edita();
         if ($editou1) {
             $obj = new clsPmieducarMatricula(null, null, $this->ref_cod_escola, $matricula['ref_ref_cod_serie'], null, $this->pessoa_logada, $matricula['ref_cod_aluno'], 3, null, null, 1, $this->ano, 1, null, null, null, null, $det_serie["ref_cod_curso"]);
             $cadastra1 = $obj->cadastra();
             if (!$cadastra1) {
                 echo "<script>\n\t\t\t\t\t\t\talert('Erro ao matricular os alunos da Escola!');\n\t\t\t\t\t\t\twindow.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}#ano_letivo';\n\t\t\t\t\t\t  </script>";
             }
         }
     }
 }
 function renderHTML()
 {
     if ($_POST) {
         foreach ($_POST as $key => $value) {
             $this->{$key} = $value;
         }
     }
     if ($this->ref_ref_cod_serie) {
         $this->ref_cod_serie = $this->ref_ref_cod_serie;
     }
     $fonte = 'arial';
     $corTexto = '#000000';
     if (empty($this->ref_cod_turma)) {
         echo '
      <script>
        alert("Erro ao gerar relatório!\\nNenhuma turma selecionada!");
        window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1));
      </script>';
         return TRUE;
     }
     $obj_escola = new clsPmieducarEscola($this->ref_cod_escola);
     $det_escola = $obj_escola->detalhe();
     $this->nm_escola = $det_escola['nome'];
     $obj_instituicao = new clsPmieducarInstituicao($det_escola['ref_cod_instituicao']);
     $det_instituicao = $obj_instituicao->detalhe();
     $this->nm_instituicao = $det_instituicao['nm_instituicao'];
     $obj_turma = new clsPmieducarTurma($this->ref_cod_turma);
     $det_turma = $obj_turma->detalhe();
     $this->nm_turma = $det_turma['nm_turma'];
     $obj_serie = new clsPmieducarSerie($this->ref_cod_serie);
     $det_serie = $obj_serie->detalhe();
     $this->nm_serie = $det_serie['nm_serie'];
     $eh_multi_seriado = FALSE;
     if (is_numeric($det_turma['ref_ref_cod_serie_mult'])) {
         $series = array();
         $series[$det_serie['cod_serie']] = $det_serie['nm_serie'];
         $obj_serie = new clsPmieducarSerie($det_turma['ref_ref_cod_serie_mult']);
         $det_serie = $obj_serie->detalhe();
         $this->nm_serie .= ' / ' . $det_serie['nm_serie'];
         $series[$det_serie['cod_serie']] = $det_serie['nm_serie'];
         $eh_multi_seriado = TRUE;
     }
     $this->pdf = new clsPDF('Resultado Final', 'Resultado Final', 'A4', '', FALSE, FALSE);
     $this->pdf->OpenPage();
     $this->addCabecalho();
     $this->pdf->linha_relativa(30, 140, 540, 0);
     $this->pdf->linha_relativa(30, 140, 0, 30);
     $this->pdf->linha_relativa(570, 140, 0, 30);
     $this->pdf->linha_relativa(30, 170, 540, 0);
     $this->pdf->linha_relativa(60, 140, 0, 30);
     $this->pdf->linha_relativa(320, 140, 0, 30);
     $this->pdf->linha_relativa(380, 140, 0, 30);
     $this->pdf->linha_relativa(490, 140, 0, 30);
     $this->pdf->linha_relativa(380, 155, 190, 0);
     $this->pdf->linha_relativa(530, 155, 0, 15);
     $this->pdf->linha_relativa(450, 155, 0, 15);
     $this->pdf->escreve_relativo('Ord', 35, 150, 20, 20, NULL, 10);
     $this->pdf->escreve_relativo('Nome do aluno', 70, 150, 160, 20, NULL, 10);
     $this->pdf->escreve_relativo('Aprovado', 325, 150, 160, 20, NULL, 10);
     $this->pdf->escreve_relativo('Reprovado', 410, 142, 160, 20, NULL, 10);
     $this->pdf->escreve_relativo('Desempenho', 384, 156, 160, 20, NULL, 10);
     $this->pdf->escreve_relativo('Faltas', 455, 156, 160, 20, NULL, 10);
     $this->pdf->escreve_relativo('Alf.', 500, 156, 160, 20, NULL, 10);
     $this->pdf->escreve_relativo('N. Alf.', 535, 156, 160, 20, NULL, 10);
     $obj_matricula = new clsPmieducarMatriculaTurma();
     $obj_matricula->setOrderby('m.ref_ref_cod_serie, nome_ascii');
     if ($this->is_padrao) {
         $this->semestre = NULL;
     }
     $lst_matricula = $obj_matricula->lista(NULL, $this->ref_cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_serie, $this->ref_cod_curso, $this->ref_cod_escola, $this->ref_cod_instituicao, NULL, NULL, array(1, 2, 3), NULL, NULL, $this->ano, NULL, TRUE, NULL, NULL, TRUE, NULL, NULL, NULL, $det_turma['ref_ref_cod_serie_mult'], $this->semestre);
     $qtd_quebra = 43;
     $base = 155;
     $linha = 1;
     $total_aprovados = 0;
     $total_reprovados_desempenho = 0;
     $total_reprovados_nota = 0;
     $total_analfabetos = 0;
     $total_nao_analfabetos = 0;
     $ordem_mostra = 0;
     if (is_array($lst_matricula)) {
         foreach ($lst_matricula as $ordem => $matricula) {
             $obj_matricula = new clsPmieducarMatricula($matricula['ref_cod_matricula']);
             $det_matricula = $obj_matricula->detalhe();
             // Verifica se o aluno está aprovado ou reprovado
             $situacoes = array(App_Model_MatriculaSituacao::APROVADO, App_Model_MatriculaSituacao::REPROVADO);
             if (in_array($det_matricula['aprovado'], $situacoes)) {
                 $ordem_mostra++;
                 $ordem_mostra = sprintf('%02d', $ordem_mostra);
                 if ($linha % $qtd_quebra == 0) {
                     //nova pagina
                     $this->pdf->ClosePage();
                     $this->pdf->OpenPage();
                     $base = 30;
                     $linha = 0;
                     $this->pdf->linha_relativa(30, 30, 540, 0);
                     $qtd_quebra = 51;
                 }
                 $this->pdf->linha_relativa(30, $base + $linha * 15, 0, 15);
                 $this->pdf->linha_relativa(60, $base + $linha * 15, 0, 15);
                 $this->pdf->linha_relativa(30, $base + 15 + $linha * 15, 540, 0);
                 $this->pdf->linha_relativa(570, $base + $linha * 15, 0, 15);
                 // fim
                 $this->pdf->escreve_relativo($ordem_mostra, 40, $base + 3 + $linha * 15, 15, 15, NULL, 8);
                 if ($eh_multi_seriado) {
                     $this->pdf->escreve_relativo($matricula['nome'] . ' (' . $series[$det_matricula['ref_ref_cod_serie']] . ')', 65, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                 } else {
                     $this->pdf->escreve_relativo($matricula['nome'], 65, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                 }
                 /**
                  * Instancia o service de boletim e requisita os dados da situação
                  * do aluno. Graças ao service, são "apenas" 147 linhas de código
                  * mal-escrito a menos.
                  */
                 $boletim = new Avaliacao_Service_Boletim(array('matricula' => $matricula['ref_cod_matricula']));
                 $situacao = $boletim->getSituacaoAluno();
                 if (TRUE == $situacao->aprovado) {
                     $this->pdf->escreve_relativo('X', 345, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                     $total_aprovados++;
                 } elseif (TRUE == $situacao->retidoFalta) {
                     $total_reprovados_desempenho++;
                     $this->pdf->escreve_relativo('X', 465, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                 } else {
                     $total_reprovados_nota++;
                     $this->pdf->escreve_relativo('X', 410, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                 }
                 // analfabeto
                 $obj_aluno = new clsPmieducarAluno($det_matricula['ref_cod_aluno']);
                 $obj_aluno->setCamposLista('analfabeto');
                 $det_aluno = $obj_aluno->detalhe();
                 if ($det_aluno['analfabeto'] == 0) {
                     $this->pdf->escreve_relativo('X', 507, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                     // não alfabetizado
                     $total_analfabetos++;
                 } else {
                     $this->pdf->escreve_relativo('X', 545, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                     // alfabetizado
                     $total_nao_analfabetos++;
                 }
                 $this->pdf->linha_relativa(320, $base + $linha * 15, 0, 15);
                 $this->pdf->linha_relativa(380, $base + $linha * 15, 0, 15);
                 $this->pdf->linha_relativa(490, $base + $linha * 15, 0, 15);
                 $this->pdf->linha_relativa(530, $base + $linha * 15, 0, 15);
                 $this->pdf->linha_relativa(450, $base + $linha * 15, 0, 15);
                 $linha++;
             }
         }
     }
     // Escrever total
     $this->pdf->linha_relativa(30, $base + $linha * 15, 0, 15);
     $this->pdf->escreve_relativo("Total", 35, $base + 3 + $linha * 15, 20, 15, NULL, 8);
     $this->pdf->escreve_relativo($total_aprovados, 345, $base + 3 + $linha * 15, 250, 15, null, 8);
     // aprovado
     $this->pdf->escreve_relativo($total_reprovados_desempenho, 465, $base + 3 + $linha * 15, 250, 15, NULL, 8);
     // desempenho
     $this->pdf->escreve_relativo($total_reprovados_nota, 410, $base + 3 + $linha * 15, 250, 15, NULL, 8);
     // faltas
     $this->pdf->escreve_relativo($total_analfabetos, 507, $base + 3 + $linha * 15, 250, 15, NULL, 8);
     // não alfabetizado
     $this->pdf->escreve_relativo($total_nao_analfabetos, 545, $base + 3 + $linha * 15, 250, 15, NULL, 8);
     // alfabetizado
     $this->pdf->linha_relativa(60, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(320, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(380, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(490, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(530, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(450, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(570, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(30, $base + ($linha + 1) * 15, 540, 0);
     $this->pdf->ClosePage();
     $this->pdf->CloseFile();
     $this->get_link = $this->pdf->GetLink();
     echo sprintf('
   <script>
     window.onload = function()
     {
       parent.EscondeDiv("LoadImprimir");
       window.location="download.php?filename=%s"
     }
   </script>', $this->get_link);
     echo sprintf('
   <html>
     <center>
       Se o download não iniciar automaticamente <br /><a target="blank" href="%s" style="font-size: 16px; color: #000000; text-decoration: underline;">clique aqui!</a><br><br>
       <span style="font-size: 10px;">Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>
         Clique na Imagem para Baixar o instalador<br><br>
         <a href="http://www.adobe.com.br/products/acrobat/readstep2.html" target="new"><br><img src="imagens/acrobat.gif" width="88" height="31" border="0"></a>
       </span>
     </center>
   </html>', $this->get_link);
 }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Matricula Ocorr&ecirc;ncia Disciplinar - Listagem";
     foreach ($_GET as $var => $val) {
         // passa todos os valores obtidos no GET para atributos do objeto
         $this->{$var} = $val === "" ? null : $val;
     }
     if (!$this->ref_cod_matricula) {
         header("Location: educar_matricula_lst.php");
     }
     $this->campoOculto("ref_cod_matricula", $this->ref_cod_matricula);
     $this->addCabecalhos(array("Tipo Ocorr&ecirc;ncia Disciplinar", "Série ", "Turma"));
     /**
      * Busca nome do aluno
      */
     if (class_exists("clsPmieducarMatricula")) {
         $obj_ref_cod_matricula = new clsPmieducarMatricula();
         $detalhe_aluno = array_shift($obj_ref_cod_matricula->lista($this->ref_cod_matricula));
         $obj_escola = new clsPmieducarEscola($detalhe_aluno['ref_ref_cod_escola']);
         $det_escola = $obj_escola->detalhe();
     } else {
         $registro["ref_cod_matricula"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarMatricula\n-->";
     }
     $obj_aluno = new clsPmieducarAluno();
     $det_aluno = array_shift($det_aluno = $obj_aluno->lista($detalhe_aluno['ref_cod_aluno'], null, null, null, null, null, null, null, null, null, 1));
     $this->campoRotulo("nm_pessoa", "Nome do Aluno", $det_aluno['nome_aluno']);
     /**
      *
      */
     $opcoes = array("" => "Selecione");
     if (class_exists("clsPmieducarTipoOcorrenciaDisciplinar")) {
         $objTemp = new clsPmieducarTipoOcorrenciaDisciplinar();
         $lista = $objTemp->lista(null, null, null, null, null, null, null, null, null, null, 1, $det_escola['ref_cod_instituicao']);
         if (is_array($lista) && count($lista)) {
             foreach ($lista as $registro) {
                 $opcoes["{$registro['cod_tipo_ocorrencia_disciplinar']}"] = "{$registro['nm_tipo']}";
             }
         }
     } else {
         echo "<!--\nErro\nClasse clsPmieducarTipoOcorrenciaDisciplinar nao encontrada\n-->";
         $opcoes = array("" => "Erro na geracao");
     }
     $this->campoLista("ref_cod_tipo_ocorrencia_disciplinar", "Tipo Ocorr&ecirc;ncia Disciplinar", $opcoes, $this->ref_cod_tipo_ocorrencia_disciplinar);
     if ($this->ref_cod_escola) {
         $this->ref_ref_cod_escola = $this->ref_cod_escola;
     }
     // outros Filtros
     // Paginador
     $this->limite = 20;
     $this->offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->limite - $this->limite : 0;
     $obj_matricula_ocorrencia_disciplinar = new clsPmieducarMatriculaOcorrenciaDisciplinar();
     $obj_matricula_ocorrencia_disciplinar->setOrderby("observacao ASC");
     $obj_matricula_ocorrencia_disciplinar->setLimite($this->limite, $this->offset);
     $lista = $obj_matricula_ocorrencia_disciplinar->lista($this->ref_cod_matricula, $this->ref_cod_tipo_ocorrencia_disciplinar, null, null, null, null, null, null, 1);
     $total = $obj_matricula_ocorrencia_disciplinar->_total;
     // monta a lista
     if (is_array($lista) && count($lista)) {
         foreach ($lista as $registro) {
             if (class_exists("clsPmieducarMatricula")) {
                 $obj_ref_cod_matricula = new clsPmieducarMatricula($registro["ref_cod_matricula"]);
                 $det_ref_cod_matricula = $obj_ref_cod_matricula->detalhe();
                 //$registro["ref_cod_matricula"] = $det_ref_cod_matricula["ref_cod_matricula"];
             } else {
                 $registro["ref_cod_matricula"] = "Erro na geracao";
                 echo "<!--\nErro\nClasse nao existente: clsPmieducarMatricula\n-->";
             }
             if (class_exists("clsPmieducarSerie")) {
                 $obj_serie = new clsPmieducarSerie($det_ref_cod_matricula["ref_ref_cod_serie"]);
                 $det_serie = $obj_serie->detalhe();
                 $registro["ref_ref_cod_serie"] = $det_serie["nm_serie"];
             } else {
                 $registro["ref_ref_cod_serie"] = "Erro na geracao";
                 echo "<!--\nErro\nClasse nao existente: clsPmieducarSerie\n-->";
             }
             if (class_exists("clsPmieducarTipoOcorrenciaDisciplinar")) {
                 $obj_ref_cod_tipo_ocorrencia_disciplinar = new clsPmieducarTipoOcorrenciaDisciplinar($registro["ref_cod_tipo_ocorrencia_disciplinar"]);
                 $det_ref_cod_tipo_ocorrencia_disciplinar = $obj_ref_cod_tipo_ocorrencia_disciplinar->detalhe();
                 $registro["nm_tipo"] = $det_ref_cod_tipo_ocorrencia_disciplinar["nm_tipo"];
             } else {
                 $registro["ref_cod_tipo_ocorrencia_disciplinar"] = "Erro na geracao";
                 echo "<!--\nErro\nClasse nao existente: clsPmieducarTipoOcorrenciaDisciplinar\n-->";
             }
             $obj_mat_turma = new clsPmieducarMatriculaTurma();
             $det_mat_turma = $obj_mat_turma->lista($registro["ref_cod_matricula"], null, null, null, null, null, null, null, 1);
             if ($det_mat_turma) {
                 $det_mat_turma = array_shift($det_mat_turma);
                 $obj_turma = new clsPmieducarTurma($det_mat_turma['ref_cod_turma']);
                 $det_turma = $obj_turma->detalhe();
             }
             $this->addLinhas(array("<a href=\"educar_matricula_ocorrencia_disciplinar_det.php?ref_cod_matricula={$registro["ref_cod_matricula"]}&ref_cod_tipo_ocorrencia_disciplinar={$registro["ref_cod_tipo_ocorrencia_disciplinar"]}&sequencial={$registro["sequencial"]}\">{$registro["nm_tipo"]}</a>", "<a href=\"educar_matricula_ocorrencia_disciplinar_det.php?ref_cod_matricula={$registro["ref_cod_matricula"]}&ref_cod_tipo_ocorrencia_disciplinar={$registro["ref_cod_tipo_ocorrencia_disciplinar"]}&sequencial={$registro["sequencial"]}\">{$registro["ref_ref_cod_serie"]}</a>", "<a href=\"educar_matricula_ocorrencia_disciplinar_det.php?ref_cod_matricula={$registro["ref_cod_matricula"]}&ref_cod_tipo_ocorrencia_disciplinar={$registro["ref_cod_tipo_ocorrencia_disciplinar"]}&sequencial={$registro["sequencial"]}\">{$det_turma["nm_turma"]}</a>"));
         }
     }
     $this->addPaginador2("educar_matricula_ocorrencia_disciplinar_lst.php", $total, $_GET, $this->nome, $this->limite);
     $obj_permissoes = new clsPermissoes();
     $this->array_botao = array();
     $this->array_botao_url = array();
     if ($obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7)) {
         $this->array_botao_url[] = "educar_matricula_ocorrencia_disciplinar_cad.php?ref_cod_matricula={$this->ref_cod_matricula}";
         $this->array_botao[] = "Novo";
     }
     $this->array_botao[] = "Voltar";
     $this->array_botao_url[] = "educar_matricula_det.php?cod_matricula={$this->ref_cod_matricula}";
     $this->largura = "100%";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_index.php" => "i-Educar - Escola", "" => "Listagem de ocorr&ecirc;ncias disciplinares da matr&iacute;cula"));
     $this->enviaLocalizacao($localizacao->montar());
 }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Matricula Ocorrencia Disciplinar - Detalhe";
     $this->sequencial = $_GET["sequencial"];
     $this->ref_cod_matricula = $_GET["ref_cod_matricula"];
     $this->ref_cod_tipo_ocorrencia_disciplinar = $_GET["ref_cod_tipo_ocorrencia_disciplinar"];
     $tmp_obj = new clsPmieducarMatriculaOcorrenciaDisciplinar($this->ref_cod_matricula, $this->ref_cod_tipo_ocorrencia_disciplinar, $this->sequencial, null, null, null, null, null, 1);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header("location: educar_matricula_ocorrencia_disciplinar_lst.php?ref_cod_matricula={$this->ref_cod_matricula}");
         die;
     }
     if (class_exists("clsPmieducarMatricula")) {
         $obj_ref_cod_matricula = new clsPmieducarMatricula($registro["ref_cod_matricula"]);
         $det_ref_cod_matricula = $obj_ref_cod_matricula->detalhe();
         //$registro["ref_cod_matricula"] = $det_ref_cod_matricula["ref_cod_matricula"];
     } else {
         $registro["ref_cod_matricula"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarMatricula\n-->";
     }
     if (class_exists("clsPmieducarSerie")) {
         $obj_serie = new clsPmieducarSerie($det_ref_cod_matricula["ref_ref_cod_serie"]);
         $det_serie = $obj_serie->detalhe();
         $registro["ref_ref_cod_serie"] = $det_serie["nm_serie"];
     } else {
         $registro["ref_ref_cod_serie"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarSerie\n-->";
     }
     if (class_exists("clsPmieducarTipoOcorrenciaDisciplinar")) {
         $obj_ref_cod_tipo_ocorrencia_disciplinar = new clsPmieducarTipoOcorrenciaDisciplinar($registro["ref_cod_tipo_ocorrencia_disciplinar"]);
         $det_ref_cod_tipo_ocorrencia_disciplinar = $obj_ref_cod_tipo_ocorrencia_disciplinar->detalhe();
         $registro["nm_tipo"] = $det_ref_cod_tipo_ocorrencia_disciplinar["nm_tipo"];
     } else {
         $registro["ref_cod_tipo_ocorrencia_disciplinar"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarTipoOcorrenciaDisciplinar\n-->";
     }
     $obj_mat_turma = new clsPmieducarMatriculaTurma();
     $det_mat_turma = $obj_mat_turma->lista($registro["ref_cod_matricula"], null, null, null, null, null, null, null, 1);
     if ($det_mat_turma) {
         $det_mat_turma = array_shift($det_mat_turma);
     }
     if (class_exists("clsPmieducarTipoOcorrenciaDisciplinar")) {
         $obj_ref_cod_tipo_ocorrencia_disciplinar = new clsPmieducarTipoOcorrenciaDisciplinar($registro["ref_cod_tipo_ocorrencia_disciplinar"]);
         $det_ref_cod_tipo_ocorrencia_disciplinar = $obj_ref_cod_tipo_ocorrencia_disciplinar->detalhe();
         $registro["nm_tipo"] = $det_ref_cod_tipo_ocorrencia_disciplinar["nm_tipo"];
     } else {
         $registro["ref_cod_tipo_ocorrencia_disciplinar"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarTipoOcorrenciaDisciplinar\n-->";
     }
     if ($registro["ref_cod_matricula"]) {
         $this->addDetalhe(array("Matr&iacute;cula", "{$registro["ref_cod_matricula"]}"));
     }
     /**
      * Busca nome do aluno
      */
     if (class_exists("clsPmieducarMatricula")) {
         $obj_ref_cod_matricula = new clsPmieducarMatricula();
         $detalhe_aluno = array_shift($obj_ref_cod_matricula->lista($this->ref_cod_matricula));
     } else {
         $registro["ref_cod_matricula"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarMatricula\n-->";
     }
     $obj_aluno = new clsPmieducarAluno();
     $det_aluno = array_shift($det_aluno = $obj_aluno->lista($detalhe_aluno['ref_cod_aluno'], null, null, null, null, null, null, null, null, null, 1));
     $this->addDetalhe(array("Nome do Aluno", $det_aluno['nome_aluno']));
     /**
      *
      */
     if ($registro["ref_ref_cod_serie"]) {
         $this->addDetalhe(array("S&eacute;rie", "{$registro["ref_ref_cod_serie"]}"));
     }
     if ($det_mat_turma["det_turma"]) {
         $this->addDetalhe(array("Turma", "{$det_mat_turma["det_turma"]}"));
     }
     if ($registro["sequencial"]) {
         $this->addDetalhe(array("N&uacute;mero da Ocorr&ecirc;ncia", "{$registro["sequencial"]}"));
     }
     if ($registro["data_cadastro"]) {
         if ($hora = dataFromPgToBr("{$registro["data_cadastro"]}", 'H:i')) {
             $this->addDetalhe(array("Hora Ocorr&ecirc;ncia", $hora));
         }
         $this->addDetalhe(array("Data Ocorr&ecirc;ncia", dataFromPgToBr("{$registro["data_cadastro"]}", 'd/m/Y')));
     }
     if ($registro["ref_cod_tipo_ocorrencia_disciplinar"]) {
         $this->addDetalhe(array("Tipo Ocorr&ecirc;ncia", "{$registro["nm_tipo"]}"));
     }
     if ($registro["observacao"]) {
         $this->addDetalhe(array("Observa&ccedil;&atilde;o", nl2br("{$registro["observacao"]}")));
     }
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7)) {
         $this->url_novo = "educar_matricula_ocorrencia_disciplinar_cad.php?ref_cod_matricula={$registro["ref_cod_matricula"]}";
         $this->url_editar = "educar_matricula_ocorrencia_disciplinar_cad.php?ref_cod_matricula={$registro["ref_cod_matricula"]}&ref_cod_tipo_ocorrencia_disciplinar={$registro["ref_cod_tipo_ocorrencia_disciplinar"]}&sequencial={$registro["sequencial"]}";
     }
     $this->url_cancelar = "educar_matricula_ocorrencia_disciplinar_lst.php?ref_cod_matricula={$registro["ref_cod_matricula"]}";
     $this->largura = "100%";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_index.php" => "i-Educar - Escola", "" => "Detalhe da ocorr&ecirc;ncia disciplinar da matr&iacute;cula"));
     $this->enviaLocalizacao($localizacao->montar());
 }
 function renderHTML()
 {
     $ok = false;
     if (is_numeric($_GET['cod_matricula'])) {
         $this->ref_cod_matricula = $_GET['cod_matricula'];
         $obj_mat = new clsPmieducarMatricula($this->ref_cod_matricula);
         $det_matricula = $obj_mat->detalhe();
         $this->nm_aluno = $det_matricula['nome_upper'];
         if ($det_matricula['aprovado'] == 4) {
             $ok = true;
         }
         $obj_transferencia = new clsPmieducarTransferenciaSolicitacao();
         $lst_transferencia = $obj_transferencia->lista(null, null, null, null, null, $this->ref_cod_matricula, null, null, null, null, null, 1, null, null, $det_matricula['ref_cod_aluno'], false);
         // verifica se existe uma solicitacao de transferencia INTERNA
         if (is_array($lst_transferencia)) {
             $ok = true;
         }
     }
     if (!$ok) {
         echo "<script>alert('Não é possível gerar atestado de freqüência para esta matrícula');window.location='educar_index.php';</script>";
         die('Não é possível gerar atestado de freqüência para esta matrícula');
     }
     $obj_curso = new clsPmieducarCurso($det_matricula['ref_cod_curso']);
     $det_curso = $obj_curso->detalhe();
     $obj_serie = new clsPmieducarSerie($det_matricula['ref_ref_cod_serie']);
     $det_serie = $obj_serie->detalhe();
     $this->nm_serie = $det_serie['nm_serie'];
     $obj_instituicao = new clsPmieducarInstituicao($det_curso['ref_cod_instituicao']);
     $det_instituicao = $obj_instituicao->detalhe();
     $this->nm_instituicao = $det_instituicao['nm_instituicao'];
     $obj_escola = new clsPmieducarEscola($det_matricula['ref_ref_cod_escola']);
     $det_escola = $obj_escola->detalhe();
     $this->nm_escola = $det_escola['nome'];
     $this->ref_cod_escola = $det_escola['cod_escola'];
     $obj_nivel_ensino = new clsPmieducarNivelEnsino($det_curso['ref_cod_nivel_ensino']);
     $det_nivel_ensino = $obj_nivel_ensino->detalhe();
     $this->nm_ensino = $det_nivel_ensino['nm_nivel'];
     $fonte = 'arial';
     $corTexto = '#000000';
     $this->pdf = new clsPDF("Atestado de Frequência - {$this->ano}", "Atestado de Frequência", "A4", "", false, false);
     $this->pdf->OpenPage();
     $obj_escola_complemento = new clsPmieducarEscolaComplemento($this->ref_cod_escola);
     $det_escola_complemento = $obj_escola_complemento->detalhe();
     if ($det_escola_complemento) {
         // NOME DA ESCOLA
         $nm_escola = str2upper($det_escola_complemento['nm_escola']);
         // ENDERECO DA ESCOLA
         $logradouro = str2upper($det_escola_complemento['logradouro']);
         $numero = $det_escola_complemento['numero'];
         $complemento = str2upper($det_escola_complemento['complemento']);
         $bairro = str2upper($det_escola_complemento['bairro']);
         $municipio = str2upper($det_escola_complemento['municipio']);
         $cep = $det_escola_complemento['cep'];
         $cep = int2CEP($cep);
         $this->endereco = "{$logradouro} {$complemento},{$numero} CEP {$cep} {$municipio}";
     } else {
         $obj_escola = new clsPmieducarEscola($this->ref_cod_escola);
         $det_escola = $obj_escola->detalhe();
         $obj_juridica = new clsJuridica($det_escola['ref_idpes']);
         $det_juridica = $obj_juridica->detalhe();
         $nm_escola = $det_juridica['fantasia'];
         if (!$nm_escola) {
             if ($det_escola['ref_idpes']) {
                 $obj_pessoa_ = new clsPessoa_($det_escola['ref_idpes']);
                 $det_pessoa_ = $obj_pessoa_->detalhe();
                 $nm_escola = $det_pessoa_['nome'];
             }
         }
         $this->nm_escola = $nm_escola;
         $obj_endereco = new clsPessoaEndereco($det_escola["ref_idpes"]);
         if ($det_escola["ref_idpes"]) {
             $tipo = 1;
             $endereco_lst = $obj_endereco->lista($det_escola["ref_idpes"]);
             if ($endereco_lst) {
                 foreach ($endereco_lst as $endereco) {
                     $cep = $endereco["cep"]->cep;
                     $idlog = $endereco["idlog"]->idlog;
                     $obj = new clsLogradouro($idlog);
                     $obj_det = $obj->detalhe();
                     $logradouro = $obj_det["nome"];
                     $idtlog = $obj_det["idtlog"]->detalhe();
                     $tipo_logradouro = strtoupper($idtlog["descricao"]);
                     $bairro = $idbai = $endereco["idbai"]->detalhe();
                     $idbai = $idbai['nome'];
                     $numero = $endereco["numero"];
                     $complemento = $endereco["complemento"];
                     $andar = $endereco["andar"];
                 }
                 $obj_log = new clsLogradouro($idlog);
                 $obj_log_det = $obj_log->detalhe();
                 if ($obj_log_det) {
                     $logradouro = str2upper($obj_log_det["nome"]);
                     $obj_mun = new clsMunicipio($obj_log_det["idmun"]);
                     $det_mun = $obj_mun->detalhe();
                     if ($det_mun) {
                         $municipio = str2upper($det_mun["nome"]);
                     }
                     $estado = $det_mun['sigla_uf']->sigla_uf;
                 }
                 $cep = int2CEP($cep);
                 $this->endereco = "{$tipo_logradouro} {$logradouro} {$complemento},{$numero} CEP {$cep} {$municipio} {$estado}";
             } else {
                 if (class_exists("clsEnderecoExterno")) {
                     $tipo = 2;
                     $obj_endereco = new clsEnderecoExterno();
                     $endereco_lst = $obj_endereco->lista(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, $det_escola["ref_idpes"]);
                     if ($endereco_lst) {
                         foreach ($endereco_lst as $endereco) {
                             $cep = $endereco["cep"];
                             $estado = $endereco["sigla_uf"]->sigla_uf;
                             $sigla_uf = $endereco["sigla_uf"]->detalhe();
                             $sigla_uf = $sigla_uf["nome"];
                             $cidade = $endereco["cidade"];
                             $idtlog = $endereco["idtlog"]->detalhe();
                             $tipo_logradouro = $idtlog["descricao"];
                             $logradouro = $endereco["logradouro"];
                             $bairro = $endereco["bairro"];
                             $numero = $endereco["numero"];
                             $complemento = $endereco["complemento"];
                             $andar = $endereco["andar"];
                             $municipio = str2upper($endereco['cidade']);
                             $bairro = str2upper($endereco_lst['bairro']);
                         }
                     }
                     $cep = int2CEP($cep);
                     $this->endereco = "{$tipo_logradouro} {$logradouro} {$complemento},{$numero}{$bairro} CEP {$cep} {$municipio} - {$sigla_uf}";
                 }
             }
         }
     }
     $this->addCabecalho();
     //titulo
     $this->pdf->escreve_relativo("Atestado de Freqüência", 30, 220, 535, 80, $fonte, 16, $corTexto, 'center');
     $texto = "Atesto para os devidos fins que o aluno {$this->nm_aluno}, código de aluno nº {$det_matricula['ref_cod_aluno']}, matriculado regularmente no {$this->nm_ensino}, frequentou a {$this->nm_serie} até a presente data.";
     $this->pdf->escreve_relativo($texto, 30, 350, 535, 80, $fonte, 14, $corTexto, 'justify');
     $mes = date('n');
     $mes = strtolower($this->meses_do_ano["{$mes}"]);
     $data = date('d') . " de {$mes} de " . date('Y');
     $this->pdf->escreve_relativo("Brasilia, {$data}", 30, 600, 535, 80, $fonte, 14, $corTexto, 'center');
     $this->rodape();
     $this->pdf->CloseFile();
     $this->get_link = $this->pdf->GetLink();
     //echo "<script>window.location='$this->get_link';</script>";
     //header("location:download.php?filename=".$this->get_link);
     //echo "location:download.php?filename=".$this->get_link;die;
     echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>";
     echo "<center><a target='blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>Clique aqui para visualizar o arquivo!</a><br><br>\n\t\t\t<span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\n\t\t\tClique na Imagem para Baixar o instalador<br><br>\n\t\t\t<a href=\"http://www.adobe.com.br/products/acrobat/readstep2.html\" target=\"new\"><br><img src=\"imagens/acrobat.gif\" width=\"88\" height=\"31\" border=\"0\"></a>\n\t\t\t</span>\n\t\t\t</center>";
 }
Example #16
0
 function Gerar()
 {
     $this->fexcluir = FALSE;
     $this->campoTabInicio('educar_cad', '', TRUE);
     $this->campoOculto('retorno', $this->retorno);
     $this->campoOculto('bloqueado', 1);
     if (is_int((int) $this->cpf) && !empty($this->cpf)) {
         $cpf = int2CPF($this->cpf);
     } else {
         $cpf = $this->cpf;
     }
     if (!$this->cod_aluno) {
         $this->campoAdicionaTab('CPF', $this->tab_habilitado);
         $opcoes = array('' => 'Pesquise a pessoa clicando na lupa ao lado');
         $this->campoCpf('cpf_', 'CPF', $cpf, FALSE, '<img border="0" onclick="pesquisa_valores_popless(\'educar_pesquisa_aluno_lst2.php?campo1=ref_idpes&campo3=cpf&campo4=cpf_\', \'nome\')" src="imagens/lupa.png">');
     }
     $this->campoOculto('ref_idpes', $this->ref_idpes);
     $this->campoAdicionaTab('Dados Pessoais', $this->tab_habilitado);
     if ($this->cod_aluno) {
         $obj_matricula = new clsPmieducarMatricula();
         $lst_matricula = $obj_matricula->lista(NULL, NULL, NULL, NULL, NULL, NULL, $this->cod_aluno);
     }
     if (!empty($this->ref_idpes)) {
         $obj_aluno = new clsPmieducarAluno();
         $lista_aluno = $obj_aluno->lista(NULL, NULL, NULL, NULL, NULL, $this->ref_idpes, NULL, NULL, NULL, NULL);
         if ($lista_aluno) {
             $det_aluno = array_shift($lista_aluno);
         }
     }
     if ($det_aluno['cod_aluno']) {
         $this->cod_aluno = $det_aluno['cod_aluno'];
         $this->ref_cod_aluno_beneficio = $det_aluno['ref_cod_aluno_beneficio'];
         $this->ref_cod_religiao = $det_aluno['ref_cod_religiao'];
         $this->caminho_foto = $det_aluno['caminho_foto'];
     }
     $this->campoOculto('cod_aluno', $this->cod_aluno);
     $this->campoOculto('ref_idpes', $this->ref_idpes);
     if ($this->ref_idpes != 'NULL') {
         if ($this->ref_idpes) {
             $obj_pessoa = new clsPessoaFj($this->ref_idpes);
             $det_pessoa = $obj_pessoa->detalhe();
             $obj_fisica = new clsFisica($this->ref_idpes);
             $det_fisica = $obj_fisica->detalhe();
             $obj_fisica_raca = new clsCadastroFisicaRaca($this->ref_idpes);
             $det_fisica_raca = $obj_fisica_raca->detalhe();
             $this->ref_cod_raca = $det_fisica_raca['ref_cod_raca'];
             $this->nome = $det_pessoa['nome'];
             $this->email = $det_pessoa['email'];
             $this->ideciv = $det_fisica['ideciv']->ideciv;
             $this->data_nascimento = dataToBrasil($det_fisica['data_nasc']);
             $this->cpf = $det_fisica['cpf'];
             $obj_documento = new clsDocumento($this->ref_idpes);
             $obj_documento_det = $obj_documento->detalhe();
             $this->ddd_fone_1 = $det_pessoa['ddd_1'];
             $this->fone_1 = $det_pessoa['fone_1'];
             $this->ddd_fone_2 = $det_pessoa['ddd_2'];
             $this->fone_2 = $det_pessoa['fone_2'];
             $this->ddd_fax = $det_pessoa['ddd_fax'];
             $this->fone_fax = $det_pessoa['fone_fax'];
             $this->ddd_mov = $det_pessoa['ddd_mov'];
             $this->fone_mov = $det_pessoa['fone_mov'];
             $this->email = $det_pessoa['email'];
             $this->url = $det_pessoa['url'];
             $this->sexo = $det_fisica['sexo'];
             $this->nacionalidade = $det_fisica['nacionalidade'];
             $this->idmun_nascimento = $det_fisica['idmun_nascimento']->idmun;
             $detalhe_pais_origem = $det_fisica['idpais_estrangeiro']->detalhe();
             $this->pais_origem = $detalhe_pais_origem['idpais'];
             $this->ref_idpes_responsavel = $det_fisica['idpes_responsavel'];
             $this->idpes_pai = $det_fisica['idpes_pai'];
             $this->idpes_mae = $det_fisica['idpes_mae'];
             $obj_aluno = new clsPmieducarAluno(NULL, NULL, NULL, NULL, NULL, $this->ref_idpes);
             $detalhe_aluno = $obj_aluno->detalhe();
             if ($detalhe_aluno) {
                 $this->nm_pai = $detalhe_aluno['nm_pai'];
                 $this->nm_mae = $detalhe_aluno['nm_mae'];
             }
             $obj_endereco = new clsPessoaEndereco($this->ref_idpes);
             if ($obj_endereco_det = $obj_endereco->detalhe()) {
                 $this->isEnderecoExterno = 0;
                 $this->id_cep = $obj_endereco_det['cep']->cep;
                 $this->id_bairro = $obj_endereco_det['idbai']->idbai;
                 $this->id_logradouro = $obj_endereco_det['idlog']->idlog;
                 $this->numero = $obj_endereco_det['numero'];
                 $this->letra = $obj_endereco_det['letra'];
                 $this->complemento = $obj_endereco_det['complemento'];
                 $this->andar = $obj_endereco_det['andar'];
                 $this->apartamento = $obj_endereco_det['apartamento'];
                 $this->bloco = $obj_endereco_det['bloco'];
                 $this->ref_idtlog = $obj_endereco_det['idtlog'];
                 $this->nm_bairro = $obj_endereco_det['bairro'];
                 $this->nm_logradouro = $obj_endereco_det['logradouro'];
                 $this->cep_ = int2CEP($this->id_cep);
             } else {
                 $obj_endereco = new clsEnderecoExterno($this->ref_idpes);
                 if ($obj_endereco_det = $obj_endereco->detalhe()) {
                     $this->isEnderecoExterno = 1;
                     $this->id_cep = $obj_endereco_det['cep'];
                     $this->cidade = $obj_endereco_det['cidade'];
                     $this->nm_bairro = $obj_endereco_det['bairro'];
                     $this->nm_logradouro = $obj_endereco_det['logradouro'];
                     $this->id_bairro = NULL;
                     $this->id_logradouro = NULL;
                     $this->numero = $obj_endereco_det['numero'];
                     $this->letra = $obj_endereco_det['letra'];
                     $this->complemento = $obj_endereco_det['complemento'];
                     $this->andar = $obj_endereco_det['andar'];
                     $this->apartamento = $obj_endereco_det['apartamento'];
                     $this->bloco = $obj_endereco_det['bloco'];
                     $this->ref_idtlog = $this->idtlog = $obj_endereco_det['idtlog']->idtlog;
                     $this->ref_sigla_uf = $this->ref_sigla_uf_ = $obj_endereco_det['sigla_uf']->sigla_uf;
                     $this->cep_ = int2CEP($this->id_cep);
                 }
             }
             $this->zona_localizacao = $obj_endereco_det['zona_localizacao'];
         }
     }
     if ($this->isEnderecoExterno == 0) {
         $obj_bairro = new clsBairro($this->id_bairro);
         $this->cep_ = int2CEP($this->id_cep);
         $obj_bairro_det = $obj_bairro->detalhe();
         if ($obj_bairro_det) {
             $this->nm_bairro = $obj_bairro_det["nome"];
         }
         $obj_log = new clsLogradouro($this->id_logradouro);
         $obj_log_det = $obj_log->detalhe();
         if ($obj_log_det) {
             $this->nm_logradouro = $obj_log_det["nome"];
             $this->ref_idtlog = $obj_log_det["idtlog"]->idtlog;
             $obj_mun = new clsMunicipio($obj_log_det["idmun"]);
             $det_mun = $obj_mun->detalhe();
             if ($det_mun) {
                 $this->cidade = ucfirst(strtolower($det_mun["nome"]));
             }
             $this->ref_sigla_uf = $this->ref_sigla_uf_ = $det_mun['sigla_uf']->sigla_uf;
         }
         $obj_bairro = new clsBairro($obj_endereco_det["ref_idbai"]);
         $obj_bairro_det = $obj_bairro->detalhe();
         if ($obj_bairro_det) {
             $this->nm_bairro = $obj_bairro_det["nome"];
         }
     }
     $this->campoTexto('nome', 'Nome', $this->nome, 30, 100, TRUE);
     if ($this->cpf && $this->ref_idpes) {
         if (!$this->cpf) {
             $this->campoRotulo('cpf_2', 'CPF', $this->cpf);
         } else {
             $this->campoRotulo('cpf_2', 'CPF', int2CPF($this->cpf));
         }
     } else {
         if (!$this->cpf) {
             $this->campoCpf('cpf_2', 'CPF', $this->cpf);
             $this->campoOculto('sem_cpf', 1);
         } else {
             $this->campoCpf('cpf_2', 'CPF', int2CPF($this->cpf), FALSE);
         }
     }
     $this->campoData('data_nascimento', 'Data de Nascimento', $this->data_nascimento, TRUE);
     $lista = array('' => 'Selecione', 'F' => 'Feminino', 'M' => 'Masculino');
     $this->campoLista('sexo', 'Sexo', $lista, $this->sexo);
     $obj_estado_civil = new clsEstadoCivil();
     $obj_estado_civil_lista = $obj_estado_civil->lista();
     $lista_estado_civil = array('' => 'Selecione');
     if ($obj_estado_civil_lista) {
         foreach ($obj_estado_civil_lista as $estado_civil) {
             $lista_estado_civil[$estado_civil['ideciv']] = $estado_civil['descricao'];
         }
     }
     $this->campoLista('ideciv', 'Estado Civil', $lista_estado_civil, $this->ideciv);
     $obj_religiao = new clsPmieducarReligiao();
     $obj_religia_lista = $obj_religiao->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
     $lista_religiao = array('NULL' => 'Selecione');
     if ($obj_religia_lista) {
         foreach ($obj_religia_lista as $religiao) {
             $lista_religiao[$religiao["cod_religiao"]] = $religiao["nm_religiao"];
         }
     }
     $this->campoLista('ref_cod_religiao', 'Religi&atilde;o', $lista_religiao, $this->ref_cod_religiao, '', FALSE, '', '', '', FALSE);
     $opcoes_raca = array('' => 'Selecione');
     $obj_raca = new clsCadastroRaca();
     $lst_raca = $obj_raca->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, TRUE);
     if ($lst_raca) {
         foreach ($lst_raca as $raca) {
             $opcoes_raca[$raca['cod_raca']] = $raca['nm_raca'];
         }
     }
     $this->campoLista('ref_cod_raca', 'Ra&ccedil;a', $opcoes_raca, $this->ref_cod_raca, '', FALSE, '', '', '', FALSE);
     $this->campoQuebra2('#224488');
     if ($this->idpes_pai) {
         $obj_pessoa_pai = new clsPessoaFj($this->idpes_pai);
         $det_pessoa_pai = $obj_pessoa_pai->detalhe();
         if ($det_pessoa_pai) {
             $this->nm_pai = $det_pessoa_pai['nome'];
             // cpf
             $obj_cpf = new clsFisica($this->idpes_pai);
             $det_cpf = $obj_cpf->detalhe();
             if ($det_cpf['cpf']) {
                 $this->cpf_pai = int2CPF($det_cpf['cpf']);
             }
         }
     }
     if ($this->idpes_mae) {
         $obj_pessoa_mae = new clsPessoaFj($this->idpes_mae);
         $det_pessoa_mae = $obj_pessoa_mae->detalhe();
         if ($det_pessoa_mae) {
             $this->nm_mae = $det_pessoa_mae['nome'];
             //cpf
             $obj_cpf = new clsFisica($this->idpes_mae);
             $det_cpf = $obj_cpf->detalhe();
             if ($det_cpf['cpf']) {
                 $this->cpf_mae = int2CPF($det_cpf['cpf']);
             }
         }
     }
     $this->campoTexto('nm_pai', 'Nome do Pai', $this->nm_pai, 30, 255, FALSE);
     $this->campoCpf('cpf_pai', 'CPF pai', $this->cpf_pai, FALSE, $this->cpf_pai ? '' : ' &nbsp; &nbsp; (preencher sempre que possível)');
     $this->campoTexto('nm_mae', 'Nome da M&atilde;e', $this->nm_mae, 30, 255, FALSE);
     $this->campoCpf('cpf_mae', 'CPF mãe', $this->cpf_mae, FALSE, $this->cpf_mae ? '' : ' &nbsp; &nbsp; (preencher sempre que possível)');
     $lista = array('' => 'Responsável');
     if ($this->ref_idpes_responsavel != 'NULL') {
         $obj_pessoa_resp = new clsPessoaFj($this->ref_idpes_responsavel);
         $det_pessoa_resp = $obj_pessoa_resp->detalhe();
         if ($det_pessoa_resp) {
             $lista[$det_pessoa_resp['idpes']] = $det_pessoa_resp['nome'];
         }
     }
     $parametros = new clsParametrosPesquisas();
     $parametros->setSubmit(0);
     $parametros->adicionaCampoSelect('ref_idpes_responsavel', 'idpes', 'nome');
     $parametros->setPessoa('F');
     $parametros->setPessoaNovo('S');
     $parametros->setPessoaCPF('N');
     $parametros->setPessoaTela('frame');
     $parametros->setCodSistema(1);
     $this->campoListaPesq('ref_idpes_responsavel', 'Responsavel', $lista, $this->ref_idpes_responsavel, 'pesquisa_pessoa_lst.php', '', FALSE, '', '', NULL, NULL, '', FALSE, $parametros->serializaCampos(), FALSE);
     $this->campoQuebra2('#224488');
     if ($this->tipo_responsavel) {
         if ($this->nm_pai) {
             $this->tipo_responsavel = 'p';
         } elseif ($this->nm_mae) {
             $this->tipo_responsavel = 'm';
         } elseif ($this->ref_idpes_responsavel) {
             $this->tipo_responsavel = 'r';
         }
     }
     $opcoes = array('p' => 'Pai', 'm' => 'M&atilde;e', 'r' => 'Respons&aacute;vel');
     $this->campoRadio('tipo_responsavel', 'Respons&aacute;vel', $opcoes, $this->tipo_responsavel);
     $this->campoQuebra2('#224488');
     $disabled = $this->isEnderecoExterno ? FALSE : TRUE;
     $this->campoOculto('isEnderecoExterno', $this->isEnderecoExterno);
     $urlPesquisaCep = 'educar_pesquisa_cep_log_bairro.php?' . 'campo1=nm_bairro&campo2=id_bairro&campo3=id_cep&campo4=nm_logradouro&' . 'campo5=id_logradouro&campo6=ref_sigla_uf&campo7=cidade&' . 'campo8=ref_idtlog_&campo9=isEnderecoExterno&campo10=cep_&' . 'campo11=ref_sigla_uf_&campo12=ref_idtlog&campo13=id_cidade&' . 'campo14=zona_localizacao';
     $urlPesquisaCep = sprintf("<img id='lupa' src=\"imagens/lupa.png\" border=\"0\" onclick=\"showExpansivel( 500,500, '<iframe name=\\'miolo\\' id=\\'miolo\\' frameborder=\\'0\\' height=\\'100%%\\' width=\\'500\\' marginheight=\\'0\\' marginwidth=\\'0\\' src=\\'%s\\'></iframe>');\">", $urlPesquisaCep);
     $this->campoCep('cep_', 'CEP', $this->cep_, TRUE, '-', $urlPesquisaCep, $disabled);
     $this->campoTexto('cidade', 'Cidade', $this->cidade, 30, 255, TRUE, FALSE, TRUE, '', '', '', '', $disabled);
     $obj_uf = new clsUf(FALSE, FALSE, 1);
     $lst_uf = $obj_uf->lista(FALSE, FALSE, FALSE, FALSE, FALSE, 'sigla_uf');
     $array_uf = array('' => 'Selecione um estado');
     foreach ($lst_uf as $uf) {
         $array_uf[$uf['sigla_uf']] = $uf['nome'];
     }
     $this->campoLista('ref_sigla_uf_', ' &nbsp; Estado', $array_uf, $this->ref_sigla_uf, '', FALSE, '', '', $disabled);
     $this->campoTexto('nm_bairro', 'Bairro', $this->nm_bairro, 30, 255, TRUE, FALSE, FALSE, '', '', '', '', $disabled);
     $tipo_logradouro_array = array('' => 'Tipo de Logradouro');
     $obj_tipo_logradouro = new clsTipoLogradouro();
     $obj_tipo_logradouro_lista = $obj_tipo_logradouro->lista();
     if ($obj_tipo_logradouro_lista) {
         foreach ($obj_tipo_logradouro_lista as $key => $tipo_log) {
             $tipo_logradouro_array[$tipo_log["idtlog"]] = $tipo_log["descricao"];
         }
     }
     $this->campoLista('ref_idtlog', 'Logradouro', $tipo_logradouro_array, $this->ref_idtlog, '', TRUE, '', '', $this->isEnderecoExterno ? FALSE : TRUE, TRUE);
     $this->campoTexto('nm_logradouro', 'Logradouro', $this->nm_logradouro, 30, 255, TRUE, FALSE, FALSE, '', '', '', '', $disabled);
     $zl = App_Model_ZonaLocalizacao::getInstance();
     $this->campoLista('zona_localizacao', 'Zona Localização', $zl->getEnums(), $this->zona_localizacao, FALSE, FALSE, FALSE, FALSE, $disabled);
     $this->campoNumero('numero', 'N&uacute;mero', $this->numero, 4, 6, FALSE, '', '', FALSE, FALSE, TRUE);
     $this->campoTexto('letra', ' &nbsp; Letra', $this->letra, 4, 1, FALSE);
     $this->campoTexto('complemento', 'Complemento', $this->complemento, 30, 50, FALSE);
     $this->campoTexto('bloco', 'Bloco', $this->bloco, 30, 50, FALSE);
     $this->campoNumero('andar', 'Andar', $this->andar, 4, 2, FALSE, '', '', FALSE, FALSE, TRUE);
     $this->campoNumero('apartamento', ' &nbsp; Apartamento', $this->apartamento, 4, 6, FALSE);
     $this->campoLista('nacionalidade', 'Nacionalidade', $lista_nacionalidade, $this->nacionalidade, 'tmpObj = document.getElementById("pais_origem"); if(this.value != 1) { tmpObj.disabled = false; } else { tmpObj.selectedIndex = 27; tmpObj.disabled = true; }', TRUE, '', '', '', FALSE);
     $lista_mun_nasc = array('NULL' => 'Selecione a cidade');
     $obj_mun_nasc = new clsMunicipio($this->idmun_nascimento);
     $det_mun_nasc = $obj_mun_nasc->detalhe();
     if ($det_mun_nasc["nome"]) {
         $lista_mun_nasc[$det_mun_nasc["idmun"]] = $det_mun_nasc["nome"];
     }
     $this->campoListaPesq('idmun_nascimento', 'Naturalidade', $lista_mun_nasc, $this->idmun_nascimento, 'educar_pesquisa_municipio_lst.php?campo1=idmun_nascimento', '', FALSE, '', '', NULL, NULL, '', TRUE);
     $this->nacionalidade = $this->nacionalidade ? $this->nacionalidade : 1;
     $lista_nacionalidade = array('NULL' => 'Selecione', '1' => 'Brasileiro', '2' => 'Naturalizado Brasileiro', '3' => 'Estrangeiro');
     $this->campoLista('nacionalidade', 'Nacionalidade', $lista_nacionalidade, $this->nacionalidade, 'tmpObj = document.getElementById("pais_origem"); if(this.value != 1) { tmpObj.disabled = false; } else { tmpObj.selectedIndex = 27; tmpObj.disabled = true; }', TRUE, '', '', '', FALSE);
     $lista_pais_origem = array('NULL' => 'País de origem');
     $obj_pais = new clsPais();
     $obj_pais_lista = $obj_pais->lista(NULL, NULL, NULL, '', '', 'nome asc');
     if ($obj_pais_lista) {
         foreach ($obj_pais_lista as $key => $pais) {
             $lista_pais_origem[$pais['idpais']] = $pais['nome'];
         }
     }
     // se a nacionalidade for "BRASILEIRO" seleciona o brasil e deixa inativo
     $this->pais_origem = $this->nacionalidade == 1 ? 1 : $this->pais_origem;
     $this->campoLista('pais_origem', ' &nbsp; País de Origem', $lista_pais_origem, $this->pais_origem, '', '', '', '', $this->nacionalidade == 1, FALSE);
     $this->campoQuebra2('#224488');
     // Transporte escolar
     $transporteMapper = new Transporte_Model_AlunoDataMapper();
     $transporte = NULL;
     try {
         $transporte = $transporteMapper->find(array($this->cod_aluno));
     } catch (Exception $e) {
     }
     $bit = App_Model_SimNao::getInstance();
     $this->campoLista('transporte_aluno', 'Transporte', $bit->getEnums(), !is_null($transporte) ? 1 : 0, 'transporteResponsavel();');
     $responsavel = Transporte_Model_Responsavel::getInstance();
     $this->campoLista('transporte_responsavel', 'Responsável', $responsavel->getEnums(), !is_null($transporte) ? $transporte->get('responsavel') : 0);
     $this->campoQuebra2('#224488');
     $obj_beneficio = new clsPmieducarAlunoBeneficio();
     $obj_beneficio_lista = $obj_beneficio->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
     $lista_beneficio = array('NULL' => 'Selecione');
     if ($obj_beneficio_lista) {
         foreach ($obj_beneficio_lista as $beneficio) {
             $lista_beneficio[$beneficio['cod_aluno_beneficio']] = $beneficio['nm_beneficio'];
         }
     }
     $this->campoLista('ref_cod_aluno_beneficio', 'Benef&iacute;cio', $lista_beneficio, $this->ref_cod_aluno_beneficio, '', FALSE, '', '', FALSE, FALSE);
     $lista_analfabeto = array(1 => 'N&atilde;o', 0 => 'Sim');
     $this->campoLista('analfabeto', 'Alfabetizado', $lista_analfabeto, $this->analfabeto, '', FALSE, '', '', FALSE, FALSE);
     $this->campoNumero('ddd_fone_1', 'Telefone', $this->ddd_fone_1, 1, 3, FALSE, '', '', FALSE, FALSE, TRUE);
     $this->campoNumero('fone_1', 'Telefone', $this->fone_1, 11, 11);
     $this->campoNumero('ddd_mov', 'Celular', $this->ddd_mov, 1, 3, FALSE, '', '', FALSE, FALSE, TRUE);
     $this->campoNumero('fone_mov', 'Celular', $this->fone_mov, 11, 11);
     $this->campoEmail('email', 'Email', $this->email, 30, 255, FALSE);
     if (!empty($this->caminho_foto)) {
         $this->campoRotulo('foto_antiga_', 'Arquivo', sprintf('
       <img src="arquivos/educar/aluno/small/%s" border="0">
         <a href="javascript:void(0);" onclick="document.getElementById(\'foto_excluida\').value=1; setVisibility(\'tr_foto_antiga_\', false); setVisibility(\'tr_foto\', true);"><img src="imagens/nvp_bola_xis.gif" border="0"></a>', $this->caminho_foto));
     }
     $this->campoOculto('foto_excluida', 0);
     $this->campoArquivo('foto', 'Foto', '', '20', '', FALSE);
     $this->campoOculto('id_bairro', $this->id_bairro);
     $this->campoOculto('id_cep', $this->id_cep);
     $this->campoOculto('id_logradouro', $this->id_logradouro);
     $this->campoOculto('id_cidade', $this->id_cidade);
     $this->campoOculto('ref_idtlog_', $this->ref_idtlog);
     $this->campoOculto('ref_sigla_uf', $this->ref_sigla_uf);
     $this->campoTexto('nome', 'Nome', $this->nome, 30, 100, TRUE);
     if ($this->cpf && $this->ref_idpes) {
         if (!$this->cpf) {
             $this->campoRotulo('cpf_2', 'CPF', $this->cpf);
         } else {
             $this->campoRotulo('cpf_2', 'CPF', int2CPF($this->cpf));
         }
     } else {
         if (!$this->cpf) {
             $this->campoOculto('sem_cpf', 1);
         }
     }
     $this->campoData('data_nascimento', 'Data de Nascimento', $this->data_nascimento, TRUE);
     $lista = array('' => 'Selecione', 'F' => 'Feminino', 'M' => 'Masculino');
     $this->campoLista('sexo', 'Sexo', $lista, $this->sexo);
     $obj_estado_civil = new clsEstadoCivil();
     $obj_estado_civil_lista = $obj_estado_civil->lista();
     $lista_estado_civil = array('' => 'Selecione');
     if ($obj_estado_civil_lista) {
         foreach ($obj_estado_civil_lista as $estado_civil) {
             $lista_estado_civil[$estado_civil['ideciv']] = $estado_civil['descricao'];
         }
     }
     $this->campoLista('ideciv', 'Estado Civil', $lista_estado_civil, $this->ideciv);
     $obj_religiao = new clsPmieducarReligiao();
     $obj_religia_lista = $obj_religiao->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
     $lista_religiao = array('NULL' => 'Selecione');
     if ($obj_religia_lista) {
         foreach ($obj_religia_lista as $religiao) {
             $lista_religiao[$religiao['cod_religiao']] = $religiao['nm_religiao'];
         }
     }
     $this->campoLista('ref_cod_religiao', 'Religi&atilde;o', $lista_religiao, $this->ref_cod_religiao, '', FALSE, '', '', '', FALSE);
     $opcoes_raca = array('' => 'Selecione');
     $obj_raca = new clsCadastroRaca();
     $lst_raca = $obj_raca->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, TRUE);
     if ($lst_raca) {
         foreach ($lst_raca as $raca) {
             $opcoes_raca[$raca['cod_raca']] = $raca['nm_raca'];
         }
     }
     $this->campoLista('ref_cod_raca', 'Ra&ccedil;a', $opcoes_raca, $this->ref_cod_raca, '', FALSE, '', '', '', FALSE);
     $this->campoQuebra2('#224488');
     if ($this->idpes_pai) {
         $obj_pessoa_pai = new clsPessoaFj($this->idpes_pai);
         $det_pessoa_pai = $obj_pessoa_pai->detalhe();
         if ($det_pessoa_pai) {
             $this->nm_pai = $det_pessoa_pai['nome'];
             // cpf
             $obj_cpf = new clsFisica($this->idpes_pai);
             $det_cpf = $obj_cpf->detalhe();
             if ($det_cpf['cpf']) {
                 $this->cpf_pai = int2CPF($det_cpf['cpf']);
             }
         }
     }
     if ($this->idpes_mae) {
         $obj_pessoa_mae = new clsPessoaFj($this->idpes_mae);
         $det_pessoa_mae = $obj_pessoa_mae->detalhe();
         if ($det_pessoa_mae) {
             $this->nm_mae = $det_pessoa_mae['nome'];
             // cpf
             $obj_cpf = new clsFisica($this->idpes_mae);
             $det_cpf = $obj_cpf->detalhe();
             if ($det_cpf['cpf']) {
                 $this->cpf_mae = int2CPF($det_cpf['cpf']);
             }
         }
     }
     $this->campoTexto('nm_pai', 'Nome do Pai', $this->nm_pai, 30, 255, FALSE);
     $this->campoCpf('cpf_pai', 'CPF pai', $this->cpf_pai, FALSE, $this->cpf_pai ? '' : ' &nbsp; &nbsp; (preencher sempre que possível)');
     $this->campoTexto('nm_mae', 'Nome da M&atilde;e', $this->nm_mae, 30, 255, FALSE);
     $this->campoCpf('cpf_mae', 'CPF mãe', $this->cpf_mae, FALSE, $this->cpf_mae ? '' : ' &nbsp; &nbsp; (preencher sempre que possível)');
     $lista = array('' => 'Responsável');
     if ($this->ref_idpes_responsavel != 'NULL') {
         $obj_pessoa_resp = new clsPessoaFj($this->ref_idpes_responsavel);
         $det_pessoa_resp = $obj_pessoa_resp->detalhe();
         if ($det_pessoa_resp) {
             $lista[$det_pessoa_resp['idpes']] = $det_pessoa_resp['nome'];
         }
     }
     $parametros = new clsParametrosPesquisas();
     $parametros->setSubmit(0);
     $parametros->adicionaCampoSelect('ref_idpes_responsavel', 'idpes', 'nome');
     $parametros->setPessoa('F');
     $parametros->setPessoaNovo('S');
     $parametros->setPessoaCPF('N');
     $parametros->setPessoaTela('frame');
     $parametros->setCodSistema(1);
     $this->campoListaPesq('ref_idpes_responsavel', 'Responsavel', $lista, $this->ref_idpes_responsavel, 'pesquisa_pessoa_lst.php', '', FALSE, '', '', NULL, NULL, '', FALSE, $parametros->serializaCampos(), FALSE);
     $this->campoQuebra2('#224488');
     if (!$this->tipo_responsavel) {
         if ($this->nm_pai) {
             $this->tipo_responsavel = 'p';
         } elseif ($this->nm_mae) {
             $this->tipo_responsavel = 'm';
         } elseif ($this->ref_idpes_responsavel) {
             $this->tipo_responsavel = 'r';
         }
     }
     $opcoes = array('' => 'Sem Responsável', 'p' => 'Pai', 'm' => 'M&atilde;e', 'r' => 'Respons&aacute;vel');
     $this->campoRadio('tipo_responsavel', 'Respons&aacute;vel', $opcoes, $this->tipo_responsavel);
     $this->campoQuebra2('#224488');
     $disabled = $this->isEnderecoExterno ? FALSE : TRUE;
     $this->campoOculto('isEnderecoExterno', $this->isEnderecoExterno);
     $this->campoCep('cep_', 'CEP', $this->cep_, TRUE, '-', $urlPesquisaCep, $disabled);
     $this->campoTexto('cidade', 'Cidade', $this->cidade, 30, 255, TRUE, FALSE, TRUE, '', '', '', '', $disabled);
     $obj_uf = new clsUf(FALSE, FALSE, 1);
     $lst_uf = $obj_uf->lista(FALSE, FALSE, FALSE, FALSE, FALSE, 'sigla_uf');
     $array_uf = array('' => 'Selecione um estado');
     foreach ($lst_uf as $uf) {
         $array_uf[$uf['sigla_uf']] = $uf['nome'];
     }
     $this->campoLista('ref_sigla_uf_', ' &nbsp; Estado', $array_uf, $this->ref_sigla_uf, '', FALSE, '', '', $disabled);
     $this->campoTexto('nm_bairro', 'Bairro', $this->nm_bairro, 30, 255, TRUE, FALSE, FALSE, '', '', '', '', $disabled);
     $tipo_logradouro_array = array('' => 'Tipo de Logradouro');
     $obj_tipo_logradouro = new clsTipoLogradouro();
     $obj_tipo_logradouro_lista = $obj_tipo_logradouro->lista();
     if ($obj_tipo_logradouro_lista) {
         foreach ($obj_tipo_logradouro_lista as $key => $tipo_log) {
             $tipo_logradouro_array[$tipo_log['idtlog']] = $tipo_log['descricao'];
         }
     }
     $this->campoLista('ref_idtlog', 'Logradouro', $tipo_logradouro_array, $this->ref_idtlog, '', TRUE, '', '', $this->isEnderecoExterno ? FALSE : TRUE, TRUE);
     $this->campoTexto('nm_logradouro', 'Logradouro', $this->nm_logradouro, 30, 255, TRUE, FALSE, FALSE, '', '', '', '', $disabled);
     $this->campoNumero('numero', 'N&uacute;mero', $this->numero, 4, 6, FALSE, '', '', FALSE, FALSE, TRUE);
     $this->campoTexto('letra', ' &nbsp; Letra', $this->letra, 4, 1, FALSE);
     $this->campoTexto('complemento', 'Complemento', $this->complemento, 30, 50, FALSE);
     $this->campoTexto('bloco', 'Bloco', $this->bloco, 30, 50, FALSE);
     $this->campoNumero('andar', 'Andar', $this->andar, 4, 2, FALSE, '', '', FALSE, FALSE, TRUE);
     $this->campoNumero('apartamento', ' &nbsp; Apartamento', $this->apartamento, 4, 6, FALSE);
     $lista_mun_nasc = array('NULL' => 'Selecione a cidade');
     $obj_mun_nasc = new clsMunicipio($this->idmun_nascimento);
     $det_mun_nasc = $obj_mun_nasc->detalhe();
     if ($det_mun_nasc['nome']) {
         $lista_mun_nasc[$det_mun_nasc['idmun']] = $det_mun_nasc['nome'];
     }
     $this->campoListaPesq('idmun_nascimento', 'Naturalidade', $lista_mun_nasc, $this->idmun_nascimento, 'educar_pesquisa_municipio_lst.php?campo1=idmun_nascimento', '', FALSE, '', '', NULL, NULL, '', TRUE);
     $this->nacionalidade = $this->nacionalidade ? $this->nacionalidade : 1;
     $lista_nacionalidade = array('NULL' => 'Selecione', '1' => 'Brasileiro', '2' => 'Naturalizado Brasileiro', '3' => 'Estrangeiro');
     $this->campoLista('nacionalidade', 'Nacionalidade', $lista_nacionalidade, $this->nacionalidade, "tmpObj = document.getElementById('pais_origem'); if (this.value!=1) { tmpObj.disabled = false; } else { tmpObj.selectedIndex = 27; tmpObj.disabled = true; }", TRUE, '', '', '', FALSE);
     $lista_pais_origem = array('NULL' => 'País de origem');
     $obj_pais = new clsPais();
     $obj_pais_lista = $obj_pais->lista(null, null, null, '', '', 'nome asc');
     if ($obj_pais_lista) {
         foreach ($obj_pais_lista as $key => $pais) {
             $lista_pais_origem[$pais['idpais']] = $pais['nome'];
         }
     }
     // se a nacionalidade for "BRASILEIRO" seleciona o brasil e deixa inativo
     $this->pais_origem = $this->nacionalidade == 1 ? 1 : $this->pais_origem;
     $this->campoLista('pais_origem', ' &nbsp; País de Origem', $lista_pais_origem, $this->pais_origem, '', '', '', '', $this->nacionalidade == 1, FALSE);
     $this->campoQuebra2('#224488');
     $obj_beneficio = new clsPmieducarAlunoBeneficio();
     $obj_beneficio_lista = $obj_beneficio->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
     $lista_beneficio = array('NULL' => "Selecione");
     if ($obj_beneficio_lista) {
         foreach ($obj_beneficio_lista as $beneficio) {
             $lista_beneficio[$beneficio['cod_aluno_beneficio']] = $beneficio['nm_beneficio'];
         }
     }
     $this->campoLista('ref_cod_aluno_beneficio', 'Benef&iacute;cio', $lista_beneficio, $this->ref_cod_aluno_beneficio, '', FALSE, '', '', FALSE, FALSE);
     $lista_analfabeto = array(1 => 'N&atilde;o', 0 => 'Sim');
     $this->campoLista('analfabeto', 'Alfabetizado', $lista_analfabeto, $this->analfabeto, '', FALSE, '', '', FALSE, FALSE);
     $this->campoNumero('ddd_fone_1', 'Telefone', $this->ddd_fone_1, 1, 3, FALSE, '', '', FALSE, FALSE, TRUE);
     $this->campoNumero('fone_1', 'Telefone', $this->fone_1, 11, 11);
     $this->campoNumero('ddd_mov', 'Celular', $this->ddd_mov, 1, 3, FALSE, '', '', FALSE, FALSE, TRUE);
     $this->campoNumero('fone_mov', 'Celular', $this->fone_mov, 11, 11);
     $this->campoEmail('email', 'Email', $this->email, 30, 255, FALSE);
     if (!empty($this->caminho_foto)) {
         $this->campoRotulo('foto_antiga_', 'Arquivo', sprintf('<img src="arquivos/educar/aluno/small/%s" border="0"> <a href="javascript:void(0);" onclick="document.getElementById(\'foto_excluida\').value=1; setVisibility(\'tr_foto_antiga_\', false); setVisibility(\'tr_foto\',true);"> <img src="imagens/nvp_bola_xis.gif" border="0"></a>', $this->caminho_foto));
     }
     $this->campoArquivo('foto', 'Foto', '', '20', '', FALSE);
     $this->campoOculto('id_bairro', $this->id_bairro);
     $this->campoOculto('id_cep', $this->id_cep);
     $this->campoOculto('id_logradouro', $this->id_logradouro);
     $this->campoOculto('id_cidade', $this->id_cidade);
     $this->campoOculto('ref_idtlog_', $this->ref_idtlog);
     $this->campoOculto('ref_sigla_uf', $this->ref_sigla_uf);
     $this->campoOculto('cpf', $this->cpf);
     $this->campoAdicionaTab('Deficiência', $this->tab_habilitado);
     if ($this->ref_idpes) {
         $obj_deficiencia_pessoa = new clsCadastroFisicaDeficiencia();
         $obj_deficiencia_pessoa_lista = $obj_deficiencia_pessoa->lista($this->ref_idpes);
     }
     if ($this->inc != 2 && !$this->exc) {
         if ($obj_deficiencia_pessoa_lista) {
             $deficiencia_pessoa = array();
             foreach ($obj_deficiencia_pessoa_lista as $deficiencia) {
                 $obj_def = new clsCadastroDeficiencia($deficiencia['ref_cod_deficiencia']);
                 $det_def = $obj_def->detalhe();
                 $deficiencia_pessoa[$deficiencia['ref_cod_deficiencia']] = $det_def['nm_deficiencia'];
             }
             $deficiencia_aluno = array();
             $deficiencia_aluno = $deficiencia_pessoa;
         }
     }
     $obj_deficiencias = new clsCadastroDeficiencia();
     $lista_deficiencias = $obj_deficiencias->lista();
     $lista = array('' => 'Selecione');
     if ($lista_deficiencias) {
         foreach ($lista_deficiencias as $deficiencia) {
             $lista[$deficiencia['cod_deficiencia']] = $deficiencia['nm_deficiencia'];
         }
     }
     $oculto = $tabela = '';
     if ($deficiencia_aluno) {
         foreach ($deficiencia_aluno as $indice => $valor) {
             $cor_fundo = $cor_fundo == '#D1DADF' ? '#E4E9ED' : '#D1DADF';
             $tabela .= "<tr id=\"tr_{$indice}\" bgcolor=\"{$cor_fundo}\" style=\"padding-right: 10px;\">";
             $tabela .= "<td>{$valor}</td>";
             $tabela .= "<td align=\"right\" style=\"padding-right: 10px;\">";
             $tabela .= "<img border=\"0\" onclick=\"excluirLinhaDeficiencia({$indice})\"\n                      style=\"cursor: pointer;\" src=\"imagens/banco_imagens/excluirrr.gif\"\n                      title=\"Excluir\">";
             $tabela .= "</td></tr>";
             $oculto .= "<input type=\"hidden\" id=\"oc_defic[{$indice}]\" name=\"oc_defic[{$indice}]\" value=\"{$indice}\">";
         }
     }
     $this->campoLista('ref_cod_pessoa_deficiencia', 'Defici&ecirc;ncia', $lista, $this->ref_cod_pessoa_deficiencia, '', FALSE, '', '', FALSE, $obrigatorio);
     $this->campoRotulo('incluir2', 'Incluir defici&ecirc;ncia', "<a href='#' onclick=\"adicionaDeficiencia();\"><img src='imagens/banco_imagens/entrada2.gif' title='Incluir' border=0></a>");
     $this->campoRotulo("tab_defic", "Deficiências", "<table id='tabela_deficiencia' cellspacing='0' cellpadding='2'><tbody>{$tabela}</tbody></table><div id='ocultos_defic'>{$oculto}</div>");
     $this->campoOculto('inc', '');
     $this->campoOculto('exc', '');
     $this->campoAdicionaTab('Outros Dados', $this->tab_habilitado);
     if ($this->ref_idpes) {
         $ObjDocumento = new clsDocumento($this->ref_idpes);
         $detalheDocumento = $ObjDocumento->detalhe();
         $this->rg = $detalheDocumento['rg'];
         if ($detalheDocumento['data_exp_rg']) {
             $this->data_exp_rg = date('d/m/Y', strtotime(substr($detalheDocumento['data_exp_rg'], 0, 19)));
         }
         $this->sigla_uf_exp_rg = $detalheDocumento['sigla_uf_exp_rg'];
         $this->tipo_cert_civil = $detalheDocumento['tipo_cert_civil'];
         $this->num_termo = $detalheDocumento['num_termo'];
         $this->num_livro = $detalheDocumento['num_livro'];
         $this->num_folha = $detalheDocumento['num_folha'];
         if ($detalheDocumento['data_emissao_cert_civil']) {
             $this->data_emissao_cert_civil = date('d/m/Y', strtotime(substr($detalheDocumento['data_emissao_cert_civil'], 0, 19)));
         }
         $this->sigla_uf_cert_civil = $detalheDocumento['sigla_uf_cert_civil'];
         $this->cartorio_cert_civil = $detalheDocumento['cartorio_cert_civil'];
         $this->num_cart_trabalho = $detalheDocumento['num_cart_trabalho'];
         $this->serie_cart_trabalho = $detalheDocumento['serie_cart_trabalho'];
         if ($detalheDocumento['data_emissao_cart_trabalho']) {
             $this->data_emissao_cart_trabalho = date("d/m/Y", strtotime(substr($detalheDocumento['data_emissao_cart_trabalho'], 0, 19)));
         }
         $this->sigla_uf_cart_trabalho = $detalheDocumento['sigla_uf_cart_trabalho'];
         $this->num_tit_eleitor = $detalheDocumento['num_tit_eleitor'];
         $this->zona_tit_eleitor = $detalheDocumento['zona_tit_eleitor'];
         $this->secao_tit_eleitor = $detalheDocumento['secao_tit_eleitor'];
         $this->idorg_exp_rg = $detalheDocumento['idorg_exp_rg'];
     }
     $objUf = new clsUf();
     $listauf = $objUf->lista();
     $listaEstado = array('0' => 'Selecione');
     if ($listauf) {
         foreach ($listauf as $uf) {
             $listaEstado[$uf['sigla_uf']] = $uf['sigla_uf'];
         }
     }
     $objOrgaoEmissorRg = new clsOrgaoEmissorRg();
     $listaOrgaoEmissorRg = $objOrgaoEmissorRg->lista();
     $listaOrgao = array('0' => 'Selecione');
     if ($listaOrgaoEmissorRg) {
         foreach ($listaOrgaoEmissorRg as $orgaoemissor) {
             $listaOrgao[$orgaoemissor['idorg_rg']] = $orgaoemissor['sigla'];
         }
     }
     $this->campoOculto('idpes', $this->idpes);
     $this->campoTexto('rg', 'Rg', $this->rg, '10', '10', FALSE);
     $this->campoData('data_exp_rg', 'Data Expedição RG', $this->data_exp_rg, FALSE);
     $this->campoLista('idorg_exp_rg', 'Órgão Expedição RG', $listaOrgao, $this->idorg_exp_rg, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE);
     $this->campoLista('sigla_uf_exp_rg', 'Estado Expedidor', $listaEstado, $this->sigla_uf_exp_rg, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE);
     $lista_tipo_cert_civil = array();
     $lista_tipo_cert_civil['0'] = 'Selecione';
     $lista_tipo_cert_civil[91] = 'Nascimento';
     $lista_tipo_cert_civil[92] = 'Casamento';
     $this->campoLista('tipo_cert_civil', 'Tipo Certificado Civil', $lista_tipo_cert_civil, $this->tipo_cert_civil, NULL, NULL, NULL, NULL, NULL, FALSE);
     $this->campoTexto('num_termo', 'Termo', $this->num_termo, '8', '8', FALSE);
     $this->campoTexto('num_livro', 'Livro', $this->num_livro, '8', '8', FALSE);
     $this->campoTexto('num_folha', 'Folha', $this->num_folha, '4', '4', FALSE);
     $this->campoData('data_emissao_cert_civil', 'Emissão Certidão Civil', $this->data_emissao_cert_civil, FALSE);
     $this->campoLista('sigla_uf_cert_civil', 'Sigla Certidão Civil', $listaEstado, $this->sigla_uf_cert_civil, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE);
     $this->campoMemo('cartorio_cert_civil', 'Cartório', $this->cartorio_cert_civil, '35', '4', FALSE, FALSE);
     $this->campoTexto('num_tit_eleitor', 'Título de Eleitor', $this->num_tit_eleitor, '13', '13', FALSE);
     $this->campoTexto('zona_tit_eleitor', 'Zona', $this->zona_tit_eleitor, '4', '4', FALSE);
     $this->campoTexto('secao_tit_eleitor', 'Seção', $this->secao_tit_eleitor, '10', '10', FALSE);
     // Adiciona uma aba com dados do Inep/Educacenso caso aluno tenha código Inep.
     if (isset($this->cod_aluno)) {
         $alunoMapper = new Educacenso_Model_AlunoDataMapper();
         $alunoInep = NULL;
         try {
             $alunoInep = $alunoMapper->find(array('aluno' => $this->cod_aluno));
         } catch (Exception $e) {
         }
         if ($alunoInep) {
             $this->campoAdicionaTab('Educacenso/Inep', $this->tab_habilitado);
             $this->campoRotulo('_inep_cod_aluno', 'Código do aluno no Educacenso/Inep', $alunoInep->alunoInep);
             if (isset($alunoInep->nomeInep)) {
                 $this->campoRotulo('_inep_nome_aluno', 'Nome do aluno no Educacenso/Inep', $alunoInep->nomeInep);
             }
         }
     }
     $this->campoTabFim();
 }
 function verificaHistorico()
 {
     if (is_numeric($this->ref_cod_aluno)) {
         @session_start();
         $pessoa_logada = $_SESSION['id_pessoa'];
         @session_write_close();
         $sql_existe_historico = "select sequencial from pmieducar.historico_escolar where ref_cod_aluno={$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\tand ativo=1 and ano=2007";
         $sql = "SELECT ref_ref_cod_serie from pmieducar.matricula where cod_matricula in (\n\t\t\t\t\t\t\tSELECT MAX(cod_matricula) as max_matricula\n\t\t\t\t\t\t\t\t\t\tfrom pmieducar.matricula WHERE ref_cod_aluno = {$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\tAND ano=2007 AND ativo=1 AND aprovado IN (1,2))";
         $db = new clsBanco();
         $serie = $db->CampoUnico($sql);
         if ($serie != 15) {
             $db = new clsBanco();
             $existe_historico = $db->CampoUnico($sql_existe_historico);
             $liberar_historico = false;
             $existe_historico_sequencial = false;
             if (!is_numeric($existe_historico)) {
                 $liberar_historico = true;
             } else {
                 $sql_existe_disciplina = "select 1 from pmieducar.historico_disciplinas where\n\t\t\t\t\t\t\t\t\t\t\tref_ref_cod_aluno={$this->ref_cod_aluno} and ref_sequencial={$existe_historico}";
                 $existe_disciplinas = $db->CampoUnico($sql_existe_disciplina);
                 if (!is_numeric($existe_disciplinas)) {
                     $liberar_historico = true;
                     $existe_historico_sequencial = true;
                 }
             }
             $sql_aprovado = "SELECT aprovado from pmieducar.matricula where cod_matricula in (\n\t\t\t\t\t\t\tSELECT MAX(cod_matricula) as max_matricula\n\t\t\t\t\t\t\t\t\t\tfrom pmieducar.matricula WHERE ref_cod_aluno = {$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\tAND ano=2007 AND ativo=1 AND aprovado IN (1,2))";
             $aprovado_aux = $db->CampoUnico($sql_aprovado);
             if (is_numeric($existe_historico) && !$existe_historico_sequencial) {
                 $sql_historico_aprovado = "SELECT aprovado from pmieducar.historico_escolar\n\t\t\t\t\t\t\t\t\t\t\twhere ref_cod_aluno={$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\t\tand sequencial={$existe_historico} and ano=2007 and ativo=1";
                 $aprovado_historico = $db->CampoUnico($sql_historico_aprovado);
                 /*if ($aprovado_aux != $aprovado_historico) {
                 		$liberar_historico = true;
                 		$sql_desativa_he = "update pmieducar.historico_escolar set ativo=0
                 		where ref_cod_aluno={$this->ref_cod_aluno}
                 		and sequencial={$existe_historico} and ano=2007";
                 		$db->Consulta($sql_desativa_he);
                 		$existe_historico_sequencial=false;
                 		}*/
             }
             $sql_aprovado = "SELECT aprovado from pmieducar.matricula where cod_matricula in (\n\t\t\t\t\t\t\tSELECT MAX(cod_matricula) as max_matricula\n\t\t\t\t\t\t\t\t\t\tfrom pmieducar.matricula WHERE ref_cod_aluno = {$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\tAND ano=2007 AND ativo=1 AND aprovado IN (1,2))";
             $aprovado_aux = $db->CampoUnico($sql_aprovado);
             if (is_numeric($existe_historico) && !$existe_historico_sequencial) {
                 $sql_historico_aprovado = "SELECT aprovado from pmieducar.historico_escolar\n\t\t\t\t\t\t\t\t\t\t\twhere ref_cod_aluno={$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\t\tand sequencial={$existe_historico} and ano=2007 and ativo=1";
                 $aprovado_historico = $db->CampoUnico($sql_historico_aprovado);
                 /*if ($aprovado_aux != $aprovado_historico) {
                 		$liberar_historico = true;
                 		$sql_desativa_he = "update pmieducar.historico_escolar set ativo=0
                 		where ref_cod_aluno={$this->ref_cod_aluno}
                 		and sequencial={$existe_historico} and ano=2007";
                 		$db->Consulta($sql_desativa_he);
                 		$existe_historico_sequencial=false;
                 		}*/
             }
             if ($liberar_historico) {
                 $sql = "SELECT cod_matricula,aprovado,ref_ref_cod_escola,ref_ref_cod_serie,ref_cod_curso,matricula_reclassificacao from pmieducar.matricula where cod_matricula in (\n\t\t\t\t\t\t\tSELECT MAX(cod_matricula) as max_matricula\n\t\t\t\t\t\t\t\t\t\tfrom pmieducar.matricula WHERE ref_cod_aluno = {$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\tAND ano=2007 AND ativo=1 AND aprovado IN (1,2))";
                 $db->Consulta($sql);
                 while ($db->ProximoRegistro()) {
                     list($cod_matricula, $aprovado, $ref_cod_escola, $ref_cod_serie, $ref_cod_curso, $matricula_reclassificacao) = $db->Tupla();
                 }
                 $obj_ano_letivo_modulo = new clsPmieducarAnoLetivoModulo();
                 $lst_ano_letivo_modulo = $obj_ano_letivo_modulo->lista(2007, $ref_cod_escola);
                 $qtd_modulos = count($lst_ano_letivo_modulo);
                 $obj_curso = new clsPmieducarCurso($ref_cod_curso);
                 $det_curso = $obj_curso->detalhe();
                 $falta_ch_globalizada = $det_curso["falta_ch_globalizada"];
                 $objTipoAvaliacao = new clsPmieducarTipoAvaliacao($det_curso["ref_cod_tipo_avaliacao"]);
                 $detalhe_tipo_avaliacao = $objTipoAvaliacao->detalhe();
                 $conceitual = $detalhe_tipo_avaliacao["conceitual"];
                 //					if () {
                 if ($ref_cod_curso != 49 && $ref_cod_curso != 20 && $ref_cod_curso != 19 && $qtd_modulos == 4 && !$conceitual && is_array($det_curso) && is_numeric($ref_cod_serie) && is_numeric($cod_matricula) && is_numeric($aprovado) && is_numeric($ref_cod_escola) && $det_curso["padrao_ano_escolar"] == 1) {
                     if ($ref_cod_serie != 15) {
                         if ($det_curso["padrao_ano_escolar"] == 1) {
                             if ($existe_historico_sequencial) {
                                 //							$obj_historico = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $existe_historico_sequencial, $pessoa_logada);
                                 //							if (!$obj_historico->excluir()) {
                                 //								die("não exclui");
                                 //							}
                             }
                             $obj_escola2 = new clsPmieducarEscola($ref_cod_escola);
                             $det_escola2 = $obj_escola2->detalhe();
                             $ref_cod_instituicao = $det_escola2["ref_cod_instituicao"];
                             $notas_faltas_disciplina = array();
                             $obj_escola_serie_disciplina = new clsPmieducarEscolaSerieDisciplina();
                             $lst_escola_serie_disciplina = $obj_escola_serie_disciplina->lista($ref_cod_serie, $ref_cod_escola, null, 1);
                             foreach ($lst_escola_serie_disciplina as $escola_serie_disciplina) {
                                 $obj_dispensa = new clsPmieducarDispensaDisciplina($cod_matricula, $ref_cod_serie, $ref_cod_escola, $escola_serie_disciplina["ref_cod_disciplina"], null, null, null, null, null, 1);
                                 $det_disciplina = $obj_dispensa->detalhe();
                                 if (!is_array($det_disciplina)) {
                                     $obj_nota = new clsPmieducarNotaAluno();
                                     $obj_nota->setOrderby("modulo");
                                     $lst_nota = $obj_nota->lista(null, null, null, $ref_cod_serie, $ref_cod_escola, $escola_serie_disciplina["ref_cod_disciplina"], $cod_matricula, null, null, null, null, null, null, 1);
                                     if (is_array($lst_nota)) {
                                         $soma_notas = 0;
                                         $possui_exame = false;
                                         foreach ($lst_nota as $key => $nota) {
                                             $obj_tipo_av_val = new clsPmieducarTipoAvaliacaoValores($nota["ref_ref_cod_tipo_avaliacao"], $nota["ref_sequencial"], null, null, null, null);
                                             $det_tipo_av_val = $obj_tipo_av_val->detalhe();
                                             if ($ref_cod_serie == 5) {
                                                 $soma_notas = $det_tipo_av_val["valor"];
                                             } else {
                                                 if ($key < $qtd_modulos) {
                                                     $soma_notas += $det_tipo_av_val["valor"];
                                                 } else {
                                                     $possui_exame = true;
                                                     $soma_notas += $nota["nota"] * 2;
                                                 }
                                             }
                                         }
                                         if ($ref_cod_serie == 5) {
                                             $media = $soma_notas;
                                         } else {
                                             if ($possui_exame) {
                                                 $media = $soma_notas / 6;
                                             } else {
                                                 $media = $soma_notas / 4;
                                             }
                                         }
                                         $obj_media = new clsPmieducarTipoAvaliacaoValores();
                                         $det_media = $obj_media->lista($det_curso["ref_cod_tipo_avaliacao"], $det_curso["ref_sequencial"], null, null, $media, $media);
                                         if (is_array($det_media)) {
                                             $det_media = array_shift($det_media);
                                             $media = $det_media["valor"];
                                             $media = sprintf("%01.1f", $media);
                                             $media = str_replace(".", ",", $media);
                                         }
                                         $obj_disciplina = new clsPmieducarDisciplina($escola_serie_disciplina["ref_cod_disciplina"]);
                                         $det_disciplina = $obj_disciplina->detalhe();
                                         if ($falta_ch_globalizada) {
                                             $notas_faltas_disciplina[$escola_serie_disciplina["ref_cod_disciplina"]] = array("media" => $media, "falta" => null, "nm_disciplina" => $det_disciplina["nm_disciplina"]);
                                         } else {
                                             //pegar as faltas
                                             $sql = "select sum(faltas) from pmieducar.falta_aluno where\n\t\t\t\t\t\t\t\t\t\t\t\t\tref_cod_matricula={$cod_matricula} and ref_cod_disciplina={$escola_serie_disciplina["ref_cod_disciplina"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\tand ativo=1";
                                             $total_faltas = $db->CampoUnico($sql);
                                             $notas_faltas_disciplina[$escola_serie_disciplina["ref_cod_disciplina"]] = array("media" => $media, "falta" => $total_faltas, "nm_disciplina" => $det_disciplina["nm_disciplina"]);
                                         }
                                     }
                                 }
                             }
                             if (is_array($notas_faltas_disciplina)) {
                                 $extra_curricular = 0;
                                 if ($falta_ch_globalizada) {
                                     $sql = "SELECT SUM(falta) FROM pmieducar.faltas WHERE ref_cod_matricula = {$cod_matricula}";
                                     $db5 = new clsBanco();
                                     $total_faltas = $db5->CampoUnico($sql);
                                 } else {
                                     $total_faltas = null;
                                 }
                                 $obj_serie = new clsPmieducarSerie($ref_cod_serie);
                                 $det_serie = $obj_serie->detalhe();
                                 $carga_horaria_serie = $det_serie["carga_horaria"];
                                 $obj_escola = new clsPmieducarEscola($ref_cod_escola);
                                 $det_escola = $obj_escola->detalhe();
                                 $ref_idpes = $det_escola["ref_idpes"];
                                 // busca informacoes da escola
                                 if ($ref_idpes) {
                                     $obj_escola = new clsPessoaJuridica($ref_idpes);
                                     $det_escola = $obj_escola->detalhe();
                                     $nm_escola = $det_escola["fantasia"];
                                     if ($det_escola) {
                                         $cidade = $det_escola["cidade"];
                                         $uf = $det_escola["sigla_uf"];
                                     }
                                 } else {
                                     if (class_exists("clsPmieducarEscolaComplemento")) {
                                         $obj_escola = new clsPmieducarEscolaComplemento($ref_cod_escola);
                                         $det_escola = $obj_escola->detalhe();
                                         $nm_escola = $det_escola["nm_escola"];
                                         $cidade = $det_escola["municipio"];
                                     }
                                 }
                                 //falta_ch_globalizada
                                 if ($det_curso["falta_ch_globalizada"] == 1) {
                                     $dias_letivos = $this->buscaDiasLetivos($ref_cod_escola);
                                 } else {
                                     $dias_letivos = null;
                                 }
                                 if ($matricula_reclassificacao == 1) {
                                     $descricao_reclassificacao = $this->verificaReclassificacao();
                                 } else {
                                     $descricao_reclassificacao = null;
                                 }
                                 $obj_historico = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, null, null, $pessoa_logada, $det_serie["nm_serie"], 2007, $carga_horaria_serie, $dias_letivos, $nm_escola, $cidade, $uf, $descricao_reclassificacao, $aprovado, null, null, 1, $total_faltas, $ref_cod_instituicao, 0, $extra_curricular, $cod_matricula);
                                 $cadastrou2 = $obj_historico->cadastra();
                                 if ($cadastrou2) {
                                     $obj_historico = new clsPmieducarHistoricoEscolar();
                                     $sequencial = $obj_historico->getMaxSequencial($this->ref_cod_aluno);
                                     foreach ($notas_faltas_disciplina as $nota_falta) {
                                         $obj_historico_disciplina = new clsPmieducarHistoricoDisciplinas(null, $this->ref_cod_aluno, $sequencial, $nota_falta["nm_disciplina"], $nota_falta["media"], $nota_falta["falta"]);
                                         $cadastrou3 = $obj_historico_disciplina->cadastra();
                                         if (!$cadastrou3) {
                                             die("<br><br><br><br>nao cadastrou disciplina");
                                         }
                                     }
                                 } else {
                                     die("<br><br><br><br>nao cadastrou historico");
                                 }
                             }
                         }
                     }
                 } elseif ($ref_cod_curso != 49 && $ref_cod_curso != 20 && $ref_cod_curso != 19) {
                     //fazer historico ejaaaa
                     //pegar matriculas do eja do aluno
                     $obj_matriculas = new clsPmieducarMatricula();
                     $obj_matriculas->setOrderby("cod_matricula");
                     $lst_matriculas = $obj_matriculas->lista(null, null, null, null, null, null, $this->ref_cod_aluno, array(1, 2), null, null, null, null, 1, 2007);
                     if (is_array($lst_matriculas) && count($lst_matriculas)) {
                         foreach ($lst_matriculas as $matricula) {
                             $liberar_historico = false;
                             $db = new clsBanco();
                             //fazer algo para ver se o he nao esta atualizado
                             $sql = "SELECT sequencial FROM pmieducar.historico_escolar WHERE ref_cod_aluno = {$matricula["ref_cod_aluno"]}\n\t\t\t\t\t\t\t\t\tAND ref_cod_matricula = {$matricula["cod_matricula"]} AND ano = 2007 AND ativo = 1\n\t\t\t\t\t\t\t\t\tAND (to_char(data_cadastro,'DD/MM/YYYY') < '20/02/2008'\n\t\t\t\t\t\t\t\t\t\tOR to_char(data_cadastro,'YYYY')::int = 2007) AND data_exclusao is null";
                             $existe_he_antigo = $db->CampoUnico($sql);
                             if (is_numeric($existe_he_antigo)) {
                                 $liberar_historico = true;
                             } else {
                                 //verificar se possui historico
                                 $sql = "SELECT 1 FROM pmieducar.historico_escolar WHERE ref_cod_aluno = {$matricula["ref_cod_aluno"]}\n\t\t\t\t\t\t\t\t\t\tAND ref_cod_matricula = {$matricula["cod_matricula"]} AND ano = 2007 AND ativo = 1";
                                 $existe_he = $db->CampoUnico($sql);
                                 if (!is_numeric($existe_he)) {
                                     $liberar_historico = true;
                                 }
                             }
                             if ($liberar_historico) {
                                 if (is_numeric($existe_he_antigo)) {
                                     $obj_historico = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $existe_he_antigo, $pessoa_logada);
                                     //									if (!$obj_historico->excluir()) {
                                     //										die("nao exclui");
                                     //									}
                                 }
                                 //fazer novo he
                                 //destruir he antigo
                                 $obj_curso = new clsPmieducarCurso($matricula["ref_cod_curso"]);
                                 $det_curso = $obj_curso->detalhe();
                                 $falta_ch_globalizada = $det_curso["falta_ch_globalizada"];
                                 $objTipoAvaliacao = new clsPmieducarTipoAvaliacao($det_curso["ref_cod_tipo_avaliacao"]);
                                 $detalhe_tipo_avaliacao = $objTipoAvaliacao->detalhe();
                                 $conceitual = $detalhe_tipo_avaliacao["conceitual"];
                                 $notas_faltas_disciplina = array();
                                 $obj_escola_serie_disciplina = new clsPmieducarEscolaSerieDisciplina();
                                 $lst_escola_serie_disciplina = $obj_escola_serie_disciplina->lista($matricula["ref_ref_cod_serie"], $matricula["ref_ref_cod_escola"], null, 1);
                                 foreach ($lst_escola_serie_disciplina as $escola_serie_disciplina) {
                                     $obj_dispensa = new clsPmieducarDispensaDisciplina($matricula["cod_matricula"], $matricula["ref_ref_cod_serie"], $matricula["ref_cod_escola"], $escola_serie_disciplina["ref_cod_disciplina"], null, null, null, null, null, 1);
                                     $det_disciplina = $obj_dispensa->detalhe();
                                     if (!is_array($det_disciplina)) {
                                         $obj_nota = new clsPmieducarNotaAluno();
                                         $obj_nota->setOrderby("modulo");
                                         $lst_nota = $obj_nota->lista(null, null, null, $matricula["ref_ref_cod_serie"], $matricula["ref_cod_escola"], $escola_serie_disciplina["ref_cod_disciplina"], $matricula["cod_matricula"], null, null, null, null, null, null, 1);
                                         if (is_array($lst_nota) && count($lst_nota)) {
                                             $nota_matricula = array_shift($lst_nota);
                                             $obj_tipo_av_val = new clsPmieducarTipoAvaliacaoValores($nota_matricula["ref_ref_cod_tipo_avaliacao"], $nota_matricula["ref_sequencial"]);
                                             $det_tipo_av_val = $obj_tipo_av_val->detalhe();
                                             if ($falta_ch_globalizada) {
                                                 $faltas = null;
                                             } else {
                                                 $sql = "select sum(faltas) from pmieducar.falta_aluno where\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref_cod_matricula={$matricula["cod_matricula"]} and ref_cod_disciplina={$escola_serie_disciplina["ref_cod_disciplina"]}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tand ativo=1";
                                                 $faltas = $db->CampoUnico($sql);
                                             }
                                             $obj_disciplina = new clsPmieducarDisciplina($escola_serie_disciplina["ref_cod_disciplina"]);
                                             $det_disciplina = $obj_disciplina->detalhe();
                                             $notas_faltas_disciplina[$escola_serie_disciplina["ref_cod_disciplina"]] = array("media" => $det_tipo_av_val["nome"], "falta" => $faltas, "nm_disciplina" => $det_disciplina["nm_disciplina"]);
                                         }
                                     }
                                 }
                                 if (is_array($notas_faltas_disciplina)) {
                                     $obj_escola2 = new clsPmieducarEscola($matricula["ref_ref_cod_escola"]);
                                     $det_escola2 = $obj_escola2->detalhe();
                                     $ref_cod_instituicao = $det_escola2["ref_cod_instituicao"];
                                     $extra_curricular = 1;
                                     if ($falta_ch_globalizada) {
                                         $sql = "SELECT SUM(falta) FROM pmieducar.faltas WHERE ref_cod_matricula = {$matricula["cod_matricula"]}";
                                         $db5 = new clsBanco();
                                         $total_faltas = $db5->CampoUnico($sql);
                                     } else {
                                         $total_faltas = null;
                                     }
                                     $obj_serie = new clsPmieducarSerie($matricula["ref_ref_cod_serie"]);
                                     $det_serie = $obj_serie->detalhe();
                                     $carga_horaria_serie = $det_serie["carga_horaria"];
                                     $obj_escola = new clsPmieducarEscola($matricula["ref_ref_cod_escola"]);
                                     $det_escola = $obj_escola->detalhe();
                                     $ref_idpes = $det_escola["ref_idpes"];
                                     // busca informacoes da escola
                                     if ($ref_idpes) {
                                         $obj_escola = new clsPessoaJuridica($ref_idpes);
                                         $det_escola = $obj_escola->detalhe();
                                         $nm_escola = $det_escola["fantasia"];
                                         if ($det_escola) {
                                             $cidade = $det_escola["cidade"];
                                             $uf = $det_escola["sigla_uf"];
                                         }
                                     } else {
                                         if (class_exists("clsPmieducarEscolaComplemento")) {
                                             $obj_escola = new clsPmieducarEscolaComplemento($matricula["ref_ref_cod_escola"]);
                                             $det_escola = $obj_escola->detalhe();
                                             $nm_escola = $det_escola["nm_escola"];
                                             $cidade = $det_escola["municipio"];
                                         }
                                     }
                                     //falta_ch_globalizada
                                     if ($det_curso["falta_ch_globalizada"] == 1) {
                                         //										$dias_letivos = $this->buscaDiasLetivos($matricula["ref_ref_cod_escola"]);
                                         $dias_letivos = null;
                                     } else {
                                         $dias_letivos = null;
                                     }
                                     if ($matricula["matricula_reclassificacao"] == 1) {
                                         $descricao_reclassificacao = $this->verificaReclassificacao($matricula["cod_matricula"]);
                                     } else {
                                         $descricao_reclassificacao = null;
                                     }
                                     $obj_historico = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, null, null, $pessoa_logada, $det_serie["nm_serie"], 2007, $carga_horaria_serie, $dias_letivos, $nm_escola, $cidade, $uf, $descricao_reclassificacao, $matricula["aprovado"], null, null, 1, $total_faltas, $ref_cod_instituicao, 0, $extra_curricular, $matricula["cod_matricula"]);
                                     $cadastrou2 = $obj_historico->cadastra();
                                     if ($cadastrou2) {
                                         $obj_historico = new clsPmieducarHistoricoEscolar();
                                         $sequencial = $obj_historico->getMaxSequencial($this->ref_cod_aluno);
                                         foreach ($notas_faltas_disciplina as $nota_falta) {
                                             $obj_historico_disciplina = new clsPmieducarHistoricoDisciplinas(null, $this->ref_cod_aluno, $sequencial, $nota_falta["nm_disciplina"], $nota_falta["media"], $nota_falta["falta"]);
                                             $cadastrou3 = $obj_historico_disciplina->cadastra();
                                             if (!$cadastrou3) {
                                                 die("<br><br><br><br>nao cadastrou disciplina");
                                             }
                                         }
                                     } else {
                                         die("<br><br><br><br>nao cadastrou historico");
                                     }
                                 }
                             }
                         }
                     }
                 }
             } elseif ($ref_cod_curso != 49 && $ref_cod_curso != 20 && $ref_cod_curso != 19) {
                 $sql = "SELECT ref_ref_cod_escola,ref_cod_curso from pmieducar.matricula where cod_matricula in (\n\t\t\t\t\t\t\tSELECT MAX(cod_matricula) as max_matricula\n\t\t\t\t\t\t\t\t\t\tfrom pmieducar.matricula WHERE ref_cod_aluno = {$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\tAND ano=2007 AND ativo=1 AND aprovado IN (1,2))";
                 $db = new clsBanco();
                 $db->Consulta($sql);
                 while ($db->ProximoRegistro()) {
                     list($ref_cod_escola, $ref_cod_curso) = $db->Tupla();
                 }
                 $obj_ano_letivo_modulo = new clsPmieducarAnoLetivoModulo();
                 $lst_ano_letivo_modulo = $obj_ano_letivo_modulo->lista(2007, $ref_cod_escola);
                 $qtd_modulos = count($lst_ano_letivo_modulo);
                 $obj_curso = new clsPmieducarCurso($ref_cod_curso);
                 $det_curso = $obj_curso->detalhe();
                 $falta_ch_globalizada = $det_curso["falta_ch_globalizada"];
                 $objTipoAvaliacao = new clsPmieducarTipoAvaliacao($det_curso["ref_cod_tipo_avaliacao"]);
                 $detalhe_tipo_avaliacao = $objTipoAvaliacao->detalhe();
                 $conceitual = $detalhe_tipo_avaliacao["conceitual"];
                 if ($qtd_modulos == 4 && !$conceitual) {
                     $sql_eh_falta_globalizada = "SELECT 1 FROM pmieducar.historico_escolar WHERE ref_cod_aluno = {$this->ref_cod_aluno} AND sequencial = {$existe_historico}\n\t\t\t\t\t\t\t\t\t\t\t AND faltas_globalizadas IS NOT NULL AND dias_letivos IS NULL";
                     $db = new clsBanco();
                     $busca_dias_letivos = $db->CampoUnico($sql_eh_falta_globalizada);
                     if (is_numeric($busca_dias_letivos)) {
                         $dias_letivos = $this->buscaDiasLetivos($ref_cod_escola);
                         if ($dias_letivos) {
                             $obj_he = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $existe_historico, $pessoa_logada, null, null, null, null, $dias_letivos);
                             if (!$obj_he->edita()) {
                                 die("nao editou dias letivos");
                             }
                         }
                     }
                     $sql = "SELECT MAX(cod_matricula),matricula_reclassificacao\n\t\t\t\t\t\t\t\t\t\t\tfrom pmieducar.matricula WHERE ref_cod_aluno = {$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t\t\tAND ano=2007 AND ativo=1 AND aprovado IN (1,2)\n\t\t\t\t\t\t\t\t\t\t\tgroup by matricula_reclassificacao";
                     $db = new clsBanco();
                     $db->Consulta($sql);
                     while ($db->ProximoRegistro()) {
                         list($cod_matricula, $matricula_reclassificacao) = $db->Tupla();
                     }
                     if ($matricula_reclassificacao == 1) {
                         $descricao_reclassificacao = $this->verificaReclassificacao();
                         if ($descricao_reclassificacao) {
                             $obj_he = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $existe_historico, $pessoa_logada, null, null, null, null, null, null, null, null, $descricao_reclassificacao);
                             if (!$obj_he->edita()) {
                                 die("nao editou reclassificacao");
                             }
                         }
                     }
                 }
             }
         }
     }
 }
    function renderHTML()
    {
        if ($_POST) {
            foreach ($_POST as $key => $value) {
                $this->{$key} = $value;
            }
        }
        if (empty($this->cursos)) {
            echo '<script>
	     			alert("Erro ao gerar relatório!\\nNenhum curso selecionado!");
	     			window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1));
	     		</script>';
            return true;
        }
        //Dias previstos do mes
        // Qual o primeiro dia do mes
        $primeiroDiaDoMes = mktime(0, 0, 0, $this->mes, 1, $this->ano);
        // Quantos dias tem o mes
        $NumeroDiasMes = date('t', $primeiroDiaDoMes);
        //informacoes primeiro dia do mes
        $dateComponents = getdate($primeiroDiaDoMes);
        // What is the name of the month in question?
        $NomeMes = $mesesDoAno[$dateComponents['mon']];
        // What is the index value (0-6) of the first day of the
        // month in question.
        $DiaSemana = $dateComponents['wday'];
        $cursos_in = '';
        $conc = '';
        foreach ($this->cursos as $curso) {
            $cursos_in .= "{$conc}{$curso}";
            $conc = ",";
        }
        $db = new clsbanco();
        $consulta = "SELECT (SELECT coalesce(min(s.idade_inicial),0) as min\n\t\t\t\t\t\t\t\t  FROM pmieducar.serie  s\n\t\t\t\t\t\t\t\t       ,pmieducar.turma t\n\t\t\t\t\t\t\t\t WHERE s.cod_serie     = t.ref_ref_cod_serie\n\t\t\t\t\t\t\t\t   AND s.ref_cod_curso in ({$cursos_in} )) as min\n\t\t\t\t\t\t\t\t,\n\t\t\t\t\t\t\t\t(SELECT coalesce(max(s.idade_final),0)  as max\n\t\t\t\t\t\t\t\t  FROM pmieducar.serie  s\n\t\t\t\t\t\t\t\t WHERE s.ref_cod_curso in ( {$cursos_in})) as max";
        $db->Consulta($consulta);
        $db->ProximoRegistro();
        $max_min = $db->Tupla();
        $consulta = "SELECT distinct\n\t\t\t\t\t       coalesce(s.idade_inicial,0) as min\n\t\t\t\t\t       ,coalesce(s.idade_final,0)  as max\n\t\t\t\t\t  FROM pmieducar.serie  s\n\t\t\t\t\t WHERE  s.ref_cod_curso in ( {$cursos_in} )";
        $faixa_min_max = array();
        $db->Consulta($consulta);
        while ($db->ProximoRegistro()) {
            $numeros[] = $db->Tupla();
        }
        $faixa_min_max = array($numeros[0][0], $numeros[count($numeros) - 1][1]);
        $consulta2 = "SELECT distinct\n\t\t\t\t\t         s.idade_inicial\n\t\t\t\t\t    FROM pmieducar.serie  s\n\t\t\t\t\t   WHERE  s.ref_cod_curso in ( {$cursos_in} )\n\n\t\t\t   \t\t   UNION\n\n\t\t\t\t\t  SELECT distinct\n\t\t\t\t\t         s.idade_final\n\t\t\t\t\t    FROM pmieducar.serie  s\n\t\t\t\t\t   WHERE s.ref_cod_curso in ( {$cursos_in} ) ";
        $idades = array();
        $db->Consulta($consulta2);
        while ($db->ProximoRegistro()) {
            $idades[] = array_shift($db->Tupla());
        }
        $consulta3 = "SELECT distinct\n\t\t\t\t\t         s.idade_inicial\n\t\t\t\t\t    FROM pmieducar.serie  s\n\t\t\t\t\t   WHERE s.ref_cod_curso in ( {$cursos_in} )";
        $db->Consulta($consulta3);
        while ($db->ProximoRegistro()) {
            $faixa[] = $db->Tupla();
        }
        $ultima_idade = null;
        while (sizeof($idades)) {
            $idade = array_shift($idades);
            if ($idade == $faixa_min_max[0]) {
                $ultima_idade = array_shift($idades);
                $this->array_ano_idade[] = array('ano' => $this->ano - $idade . " - " . ($this->ano - $ultima_idade), 'idade' => $idade . " - " . $ultima_idade, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                if (!empty($idades)) {
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ultima_idade - 1, 'idade' => $ultima_idade + 1, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ultima_idade - 2, 'idade' => $ultima_idade + 2, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ultima_idade - 3, 'idade' => $ultima_idade + 3, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $ultima_idade = $ultima_idade + 3;
                    while ($ultima_idade > $idades[0] + 3) {
                        $ultima_idade = array_shift($idades);
                    }
                } elseif (sizeof($this->array_ano_idade) == 1) {
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ultima_idade - 1, 'idade' => $ultima_idade + 1, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ultima_idade - 2, 'idade' => $ultima_idade + 2, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ultima_idade - 3, 'idade' => $ultima_idade + 3, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $ultima_idade = $ultima_idade + 3;
                }
            }
            foreach ($faixa as $key => $value) {
                for ($ct = $ultima_idade + 1; $ct <= $idade + 3; $ct++) {
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ct, 'idade' => (sizeof($idades) === 0 && $ct == $idade + 3 ? "" : "") . $ct, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $ultima_idade = $ct;
                }
                break;
            }
            $ultima_idade = idade > $ultima_idade ? $idade : $ultima_idade;
        }
        $altura2 = 300;
        $altura = 50;
        $expande = 24;
        $flag_defasado = 1;
        $fonte = 'arial';
        $corTexto = '#000000';
        $obj_lst_escola = new clsPmieducarEscola();
        $lst_escola = $obj_lst_escola->lista($this->ref_cod_escola, null, null, $this->ref_cod_instituicao, null, null, null, null, null, null, 1);
        if ($lst_escola) {
            $this->pdf = new clsPDF("Demonstrativo de Alunos Defasados Idade/Série - {$this->ano}", "Demonstrativo de Alunos Defasados Idade/Série - {$this->ano}", "A4", "", false, false);
            $this->pdf->largura = 842.0;
            $this->pdf->altura = 595.0;
            $obj_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao);
            $det_instituicao = $obj_instituicao->detalhe();
            $this->nm_instituicao = $det_instituicao['nm_instituicao'];
            for ($ct_analfabeto = 0; $ct_analfabeto <= 2; $ct_analfabeto++) {
                //	$total_geral_alunos = 0;
                //	$total_geral_turmas = 0;
                //				$total_turmas_serie = 0;
                //				$total_alunos_serie = 0;
                $this->pdf->OpenPage();
                $this->addCabecalho();
                $this->novaPagina($ct_analfabeto);
                if ($ct_analfabeto <= 1) {
                    $total_geral_alunos = 0;
                    $total_geral_turmas = 0;
                }
                foreach ($this->array_ano_idade as $key => $value) {
                    $this->array_ano_idade[$key]['total_geral'] = 0;
                    $this->array_ano_idade[$key]['total_serie'] = 0;
                }
                $altura_linha = 23;
                $inicio_escrita_y = 175;
                foreach ($this->cursos as $curso) {
                    $obj = new clsPmieducarSerie();
                    $obj->setOrderby("idade_inicial,idade_final");
                    $lista_serie_curso = $obj->lista(null, null, null, $curso, null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao);
                    //$obj_curso = new clsPmieducarCurso($curso);
                    //$det_curso = $obj_curso->detalhe();
                    if ($lista_serie_curso) {
                        foreach ($lista_serie_curso as $serie) {
                            foreach ($this->array_ano_idade as $key => $value) {
                                $this->array_ano_idade[$key]['total_serie'] = 0;
                            }
                            $total_turmas_serie = 0;
                            //$total_alunos_serie = 0;
                            $flagTurmas = 0;
                            $flagAlunos = 0;
                            foreach ($lst_escola as $escola) {
                                $this->ref_cod_escola = $escola['cod_escola'];
                                $obj_calendario = new clsPmieducarEscolaAnoLetivo();
                                $lista_calendario = $obj_calendario->lista($this->ref_cod_escola, $this->ano, null, null, null, null, null, null, null, 1, null);
                                if (!$lista_calendario) {
                                    continue;
                                }
                                /**
                                 * busca todas as matriculas de cada curso
                                 */
                                if (empty($serie['idade_inicial']) || empty($serie['idade_final'])) {
                                    continue;
                                }
                                //$subtotal_serie = 0;
                                $total_turmas_serie = 0;
                                //	$total_alunos_serie = 0;
                                if ($ct_analfabeto <= 1) {
                                    $obj_turma = new clsPmieducarTurma();
                                    if (!empty($_POST["ref_cod_escola"])) {
                                        $turmas = count($obj_turma->lista(null, null, null, $serie['cod_serie'], $this->ref_cod_escola, null, null, null, null, null, null, null, null, null, 1));
                                        $total_geral_turmas = $total_geral_turmas + $turmas;
                                    } else {
                                        if ($flagTurmas == 0) {
                                            $turmas = count($obj_turma->lista(null, null, null, $serie['cod_serie'], null, null, null, null, null, null, null, null, null, null, 1));
                                            $total_geral_turmas = $total_geral_turmas + $turmas;
                                        }
                                        $flagTurmas++;
                                    }
                                    //$total_geral_turmas = $total_geral_turmas +  $turmas;
                                    $total_turmas_serie = $turmas;
                                    $total_geral_turmas_ambos = $total_geral_turmas;
                                    $obj_matricula = new clsPmieducarMatricula();
                                    $lista_matricula_serie = $obj_matricula->lista(null, null, $this->ref_cod_escola, $serie['cod_serie'], null, null, null, array(1, 2, 3), null, null, null, null, 1, $this->ano, $curso, $this->ref_cod_instituicao, null, null, null, $ct_analfabeto, null, null, null, null, null, null, null, $this->mes, true);
                                    $total_geral_alunos += $obj_matricula->_total;
                                    $total_alunos_serie = $obj_matricula->_total;
                                    $total_geral_alunos_ambos = (int) $total_geral_alunos_ambos + $obj_matricula->_total;
                                    if ($ct_analfabeto == 1) {
                                        $analfabetos[$serie['cod_serie']] = $analfabetos[$serie['cod_serie']] + $total_alunos_serie;
                                    }
                                    $total_alunos_serie_ambos[$serie['cod_serie']] = (int) $total_alunos_serie_ambos[$serie['cod_serie']] + $obj_matricula->_total;
                                    $total_turmas_serie_ambos[$serie['cod_serie']] = $turmas;
                                }
                                if ($lista_matricula_serie && $ct_analfabeto <= 1) {
                                    /**
                                     * busca dados da matricula de um aluno de uma turma de uma serie =p
                                     */
                                    foreach ($lista_matricula_serie as $matricula) {
                                        //$obj_aluno = new clsPmieducarAluno();
                                        //$det_aluno = array_shift($obj_aluno->lista($matricula['ref_cod_aluno'],null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, true ));
                                        //$obj_fisica = new clsFisica($det_aluno['ref_idpes']);
                                        //$det_fisica = $obj_fisica->detalhe();
                                        if ($matricula['data_nasc']) {
                                            $ano_nasc = explode("-", $matricula['data_nasc']);
                                            //											$idade_aluno = date("Y") - $ano_nasc[0]; // <-- modificado
                                            $idade_aluno = $this->ano - $ano_nasc[0];
                                        }
                                        //$obj_matricula_turma = new clsPmieducarMatriculaTurma();
                                        //$det_matricula_turma = $obj_matricula_turma->lista($matricula['cod_matricula'],null,null,null,null,null,null,null,1,$serie['cod_serie'],$curso,$this->ref_cod_escola,$this->ref_cod_instituicao);
                                        foreach ($this->array_ano_idade as $key => $value) {
                                            if (strpos($value['idade'], "-") && is_numeric($idade_aluno)) {
                                                $idade = explode("-", $value['idade']);
                                                if ($idade_aluno > $serie['idade_final'] + $flag_defasado && $idade_aluno >= $idade[0] && $idade_aluno <= $idade[1] || $idade_aluno > $serie['idade_final'] + $flag_defasado && $key == count($this->array_ano_idade) - 1) {
                                                    $this->array_ano_idade[$key]['total_serie'] += 1;
                                                    $this->array_ano_idade[$key]['total_geral'] += 1;
                                                    $this->array_ano_idade[$key]['total_geral_ambos'] += 1;
                                                    break;
                                                }
                                            } elseif (is_numeric($idade_aluno)) {
                                                $idade = $value['idade'];
                                                if ($idade_aluno > $serie['idade_final'] + $flag_defasado && $idade_aluno == $idade || $idade_aluno >= $idade && $key == count($this->array_ano_idade) - 1) {
                                                    $this->array_ano_idade[$key]['total_serie'] += 1;
                                                    $this->array_ano_idade[$key]['total_geral'] += 1;
                                                    $this->array_ano_idade[$key]['total_geral_ambos'] += 1;
                                                    break;
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            /**
                             *  linha
                             */
                            $this->pdf->quadrado_relativo(30, $inicio_escrita_y, 782, $altura_linha);
                            //linha alfabetizados
                            $this->pdf->quadrado_relativo(30, $inicio_escrita_y, 695 + $expande, $altura_linha);
                            //linha numero de alunos
                            $this->pdf->quadrado_relativo(30, $inicio_escrita_y, 90 + $expande, $altura_linha);
                            //linha numero de turmas
                            $this->pdf->quadrado_relativo(30, $inicio_escrita_y, 60 + $expande, $altura_linha);
                            //$this->pdf->quadrado_relativo( 30, 125, 170 + $expande + 30, $altura);
                            //linha serie
                            $this->pdf->quadrado_relativo(30, $inicio_escrita_y, 55, $altura_linha);
                            //posicao serie
                            $serie_x = 35;
                            $this->pdf->escreve_relativo($serie['nm_serie'], $serie_x, $inicio_escrita_y + 5, 50, 50, $fonte, 6, $corTexto, 'left');
                            //posicao numero turmas
                            $turma_x = 30 + $expande;
                            $total = $ct_analfabeto <= 1 ? $total_turmas_serie : $total_turmas_serie_ambos[$serie['cod_serie']];
                            $this->pdf->escreve_relativo($total, $turma_x - 5, $inicio_escrita_y + 5, 100, 50, $fonte, 10, $corTexto, 'center');
                            //posicao numero alunos
                            $alunos_x = 40 + $expande;
                            if (empty($_POST["ref_cod_escola"])) {
                                $total = $total_alunos_serie_ambos[$serie['cod_serie']];
                                $total_alunos_serie = $total_alunos_serie_ambos[$serie['cod_serie']];
                                if ($ct_analfabeto == 1) {
                                    $total = $analfabetos[$serie['cod_serie']];
                                }
                            } else {
                                $total = $ct_analfabeto <= 1 ? $total_alunos_serie : $total_alunos_serie_ambos[$serie['cod_serie']];
                            }
                            $this->pdf->escreve_relativo($total, $alunos_x + 15, $inicio_escrita_y + 5, 100, 40, $fonte, 10, $corTexto, 'center');
                            //	$largura_quadrado = $incremental-5;
                            //$this->qt_anos = 1;
                            $largura_anos = 615;
                            //$this->idade_inicial = 6;
                            $array_ano_idade = array();
                            //$incremental = (int)($largura_anos/ $this->qt_anos);
                            if (sizeof($this->array_ano_idade)) {
                                $incremental = (int) ($largura_anos / sizeof($this->array_ano_idade));
                            } else {
                                $incremental = 0;
                            }
                            $reta_ano_x = $alunos_x + 80;
                            $largura_quadrado = $incremental - 5;
                            //$incremental = (int)($largura_anos/ $this->qt_anos);
                            //	$reta_ano_x = $alunos_x + 85;
                            $ajuste = 0;
                            //for($ct = $this->ano - $this->idade_inicial ;$ct > $this->ano - $this->idade_inicial - $this->qt_anos;$ct--)
                            foreach ($this->array_ano_idade as $key => $ano) {
                                //ajuste2
                                $ajuste = 5;
                                $total_valor = $ct_analfabeto <= 1 ? $ano["total_serie"] : $total_serie_ano["{$serie['cod_serie']}"][$key];
                                if ($ano['idade'] <= $serie['idade_final'] + $flag_defasado && $key < sizeof($this->array_ano_idade) - 1) {
                                    $this->pdf->quadrado_relativo($reta_ano_x, $inicio_escrita_y, $largura_quadrado + $ajuste + ($key == sizeof($this->array_ano_idade) - 1 ? -5 : 0), $altura_linha, 0.5, "#A1B3BD", "");
                                } else {
                                    $this->pdf->escreve_relativo($total_valor, $reta_ano_x + 1, $inicio_escrita_y + 5, $incremental, $altura_linha, $fonte, 10, $corTexto, 'center');
                                }
                                $total_serie_ano["{$serie['cod_serie']}"][$key] = (int) $total_serie_ano["{$serie['cod_serie']}"][$key] + $ano["total_serie"];
                                //$anos_x += $incremental;
                                $reta_ano_x += $incremental;
                                //reta
                                if ($key < sizeof($this->array_ano_idade) - 1) {
                                    $this->pdf->linha_relativa($reta_ano_x, $inicio_escrita_y, 0, $altura_linha);
                                } else {
                                    $largura_quadrado += 4.5;
                                }
                            }
                            $total_defasado_serie = 0;
                            foreach ($this->array_ano_idade as $key => $value) {
                                $total_defasado_serie += $this->array_ano_idade[$key]['total_serie'];
                            }
                            $total_alunos_serie = $total_alunos_serie == 0 ? 1 : $total_alunos_serie;
                            if ($ct_analfabeto <= 1) {
                                $total_serie_ano["{$serie['cod_serie']}"]["total_defasado_serie"] = (int) $total_serie_ano["{$serie['cod_serie']}"]["total_defasado_serie"] + $total_defasado_serie;
                                $total_defasado_serie_ambos = (int) $total_defasado_serie_ambos + $total_defasado_serie;
                            }
                            $total_defasado_serie = $ct_analfabeto <= 1 ? $total_defasado_serie : $total_serie_ano["{$serie['cod_serie']}"]["total_defasado_serie"];
                            //escreve total defasado serie
                            $this->pdf->escreve_relativo($total_defasado_serie, 750, $inicio_escrita_y + 5, 30, $altura, $fonte, 10, $corTexto, 'center');
                            if (empty($_POST["ref_cod_escola"])) {
                                if ($ct_analfabeto < 1) {
                                    $this->pdf->escreve_relativo(round($total_defasado_serie / $total_alunos_serie * 100) . "%", 780, $inicio_escrita_y + 5, 30, $altura, $fonte, 10, $corTexto, 'center');
                                } elseif ($ct_analfabeto == 1) {
                                    $total_alunos_serie = $analfabetos[$serie['cod_serie']];
                                    $this->pdf->escreve_relativo(round($total_defasado_serie / $total_alunos_serie * 100) . "%", 780, $inicio_escrita_y + 5, 30, $altura, $fonte, 10, $corTexto, 'center');
                                } else {
                                    $this->pdf->escreve_relativo(round($total_serie_ano["{$serie['cod_serie']}"]["total_defasado_serie"] / $total_alunos_serie_ambos[$serie['cod_serie']] * 100) . "%", 780, $inicio_escrita_y + 5, 30, $altura, $fonte, 10, $corTexto, 'center');
                                }
                            } else {
                                //escreve porcentagem
                                if ($ct_analfabeto <= 1) {
                                    if ($total_alunos_serie) {
                                        $this->pdf->escreve_relativo(round($total_defasado_serie / $total_alunos_serie * 100) . "%", 780, $inicio_escrita_y + 5, 30, $altura, $fonte, 10, $corTexto, 'center');
                                    } else {
                                        $this->pdf->escreve_relativo(0 . "%", 780, $inicio_escrita_y + 5, 30, $altura, $fonte, 10, $corTexto, 'center');
                                    }
                                } else {
                                    if ($total_alunos_serie_ambos[$serie['cod_serie']]) {
                                        $this->pdf->escreve_relativo(round($total_serie_ano["{$serie['cod_serie']}"]["total_defasado_serie"] / $total_alunos_serie_ambos[$serie['cod_serie']] * 100) . "%", 780, $inicio_escrita_y + 5, 30, $altura, $fonte, 10, $corTexto, 'center');
                                    } else {
                                        $this->pdf->escreve_relativo(0 . "%", 780, $inicio_escrita_y + 5, 30, $altura, $fonte, 10, $corTexto, 'center');
                                    }
                                }
                            }
                            $this->pdf->linha_relativa(780, $inicio_escrita_y, 0, 23);
                            $inicio_escrita_y += 20;
                            /**
                             *
                             */
                        }
                    }
                }
                /**
                 *  TOTAL
                 */
                $this->pdf->quadrado_relativo(30, $inicio_escrita_y, 782, $altura_linha);
                //linha alfabetizados
                $this->pdf->quadrado_relativo(30, $inicio_escrita_y, 695 + $expande, $altura_linha);
                //linha numero de alunos
                $this->pdf->quadrado_relativo(30, $inicio_escrita_y, 90 + $expande, $altura_linha);
                //linha numero de turmas
                $this->pdf->quadrado_relativo(30, $inicio_escrita_y, 60 + $expande, $altura_linha);
                //$this->pdf->quadrado_relativo( 30, 125, 170 + $expande + 30, $altura);
                //linha serie
                $this->pdf->quadrado_relativo(30, $inicio_escrita_y, 55, $altura_linha);
                //posicao serie
                $serie_x = 35;
                if ($ct_analfabeto <= 1) {
                    $texto = $ct_analfabeto == 0 ? "Total\nAlfabetizado" : "Total\nNão-Alfabetizado";
                } else {
                    $texto = "Total Geral";
                }
                $this->pdf->escreve_relativo($texto, $serie_x, $inicio_escrita_y + 5, 50, 50, $fonte, 6, $corTexto, 'left');
                //posicao numero turmas
                $turma_x = 25 + $expande;
                $this->pdf->escreve_relativo($total_geral_turmas, $turma_x, $inicio_escrita_y + 5, 100, 50, $fonte, 10, $corTexto, 'center');
                //posicao numero alunos
                $alunos_x = 40 + $expande;
                $total_geral_alunos = $ct_analfabeto <= 1 ? $total_geral_alunos : $total_geral_alunos_ambos;
                $this->pdf->escreve_relativo($total_geral_alunos, $alunos_x + 15, $inicio_escrita_y + 5, 100, 40, $fonte, 10, $corTexto, 'center');
                $total_defasados = 0;
                $campo_total = $ct_analfabeto <= 1 ? "total_geral" : "total_geral_ambos";
                foreach ($this->array_ano_idade as $key => $value) {
                    $total_defasados += $this->array_ano_idade[$key]["{$campo_total}"];
                }
                if ($total_geral_alunos > 0) {
                    $media = $total_defasados / $total_geral_alunos * 100;
                } else {
                    $media = 0;
                }
                $this->pdf->escreve_relativo($total_defasados, 750, $inicio_escrita_y + 5, 30, $altura, $fonte, 10, $corTexto, 'center');
                $this->pdf->escreve_relativo($media . "%", 780, $inicio_escrita_y + 5, 30, $altura, $fonte, 10, $corTexto, 'center');
                //$this->qt_anos = 1;
                $largura_anos = 615;
                //$this->idade_inicial = 6;
                $array_ano_idade = array();
                //$incremental = (int)($largura_anos/ $this->qt_anos);
                if (sizeof($this->array_ano_idade) > 0) {
                    $incremental = (int) ($largura_anos / sizeof($this->array_ano_idade));
                } else {
                    $incremental = 0;
                }
                $reta_ano_x = $alunos_x + 80;
                $largura_quadrado = $incremental - 5;
                //$incremental = (int)($largura_anos/ $this->qt_anos);
                $reta_ano_x = $alunos_x + 85;
                $ajuste = 0;
                //for($ct = $this->ano - $this->idade_inicial ;$ct > $this->ano - $this->idade_inicial - $this->qt_anos;$ct--)
                $campo_total = $ct_analfabeto <= 1 ? "total_geral" : "total_geral_ambos";
                foreach ($this->array_ano_idade as $key => $ano) {
                    //ajuste2
                    $this->pdf->escreve_relativo($ano["{$campo_total}"], $reta_ano_x - 5, $inicio_escrita_y + 5, $incremental, $altura_linha, $fonte, 10, $corTexto, 'center');
                    //$this->pdf->quadrado_relativo( $reta_ano_x - $ajuste,$inicio_escrita_y, $largura_quadrado + $ajuste + ($key == sizeof($array_ano_idade)-1? 5 : 0), $altura_linha,0.5,"#A1B3BD","");
                    $ajuste = 5;
                    //$anos_x += $incremental;
                    $reta_ano_x += $incremental;
                    //reta
                    if ($key < sizeof($this->array_ano_idade) - 1) {
                        $this->pdf->linha_relativa($reta_ano_x - 5, $inicio_escrita_y, 0, $altura_linha);
                    } else {
                        $largura_quadrado += 4.5;
                    }
                }
                $this->pdf->linha_relativa(780, $inicio_escrita_y, 0, 23);
                $inicio_escrita_y += 20;
                /**
                 *
                 */
                //	}//* *akiii
                if ($ct_analfabeto == 1) {
                    $this->rodape();
                }
                $this->pdf->ClosePage();
                /**
                 *
                 */
            }
        }
        $this->get_link = $this->pdf->GetLink();
        //header( "location: " . $this->pdf->GetLink() );
        $this->pdf->CloseFile();
        echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>";
        echo "<html><center>Se o download não iniciar automaticamente <br /><a target='blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n\t\t\t<span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\n\t\t\tClique na Imagem para Baixar o instalador<br><br>\n\t\t\t<a href=\"http://www.adobe.com.br/products/acrobat/readstep2.html\" target=\"new\"><br><img src=\"imagens/acrobat.gif\" width=\"88\" height=\"31\" border=\"0\"></a>\n\t\t\t</span>\n\t\t\t</center>";
    }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Faltas/Notas Aluno - Detalhe";
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->ref_cod_matricula = $_GET["ref_cod_matricula"];
     $this->ref_cod_turma = $_GET["ref_cod_turma"];
     $this->ref_sequencial_matricula_turma = $_GET["sequencial"];
     $obj_matricula_turma = new clsPmieducarMatriculaTurma();
     //		echo $this->ref_cod_matricula." ".$this->ref_cod_turma;
     $lst_matricula_turma = $obj_matricula_turma->lista($this->ref_cod_matricula, $this->ref_cod_turma, null, null, null, null, null, null, 1, null, null, null, null, null, null, null, null, $this->ref_sequencial_matricula_turma);
     if (is_array($lst_matricula_turma)) {
         $registro = array_shift($lst_matricula_turma);
     }
     if (!$registro) {
         header("location: educar_falta_nota_aluno_lst.php");
         die;
     }
     if (class_exists("clsPmieducarTurma")) {
         $obj_ref_ref_cod_turma = new clsPmieducarTurma($registro["ref_cod_turma"]);
         $det_ref_ref_cod_turma = $obj_ref_ref_cod_turma->detalhe();
         $nm_turma = $det_ref_ref_cod_turma["nm_turma"];
     } else {
         $registro["ref_cod_turma"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarTurma\n-->";
     }
     if (class_exists("clsPmieducarSerie")) {
         $obj_ref_cod_serie = new clsPmieducarSerie($registro["ref_ref_cod_serie"]);
         $det_ref_cod_serie = $obj_ref_cod_serie->detalhe();
         $nm_serie = $det_ref_cod_serie["nm_serie"];
     } else {
         $registro["ref_cod_serie"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarSerie\n-->";
     }
     if (class_exists("clsPmieducarCurso")) {
         $obj_ref_cod_curso = new clsPmieducarCurso($registro["ref_cod_curso"]);
         $det_ref_cod_curso = $obj_ref_cod_curso->detalhe();
         $nm_curso = $det_ref_cod_curso["nm_curso"];
         $padrao_ano_escolar = $det_ref_cod_curso["padrao_ano_escolar"];
         $falta_ch_globalizada = $det_ref_cod_curso["falta_ch_globalizada"];
         if ($padrao_ano_escolar) {
             $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo();
             $lst_ano_letivo = $obj_ano_letivo->lista($registro["ref_ref_cod_escola"], null, null, null, 1, null, null, null, null, 1);
             if (is_array($lst_ano_letivo)) {
                 $det_ano_letivo = array_shift($lst_ano_letivo);
                 $ano_letivo = $det_ano_letivo["ano"];
                 $obj_ano_letivo_modulo = new clsPmieducarAnoLetivoModulo();
                 $lst_ano_letivo_modulo = $obj_ano_letivo_modulo->lista($ano_letivo, $registro["ref_ref_cod_escola"]);
                 if (is_array($lst_ano_letivo_modulo)) {
                     $qtd_modulos = count($lst_ano_letivo_modulo);
                 }
             }
         } else {
             $obj_turma_modulo = new clsPmieducarTurmaModulo();
             $lst_turma_modulo = $obj_turma_modulo->lista($registro["ref_cod_turma"]);
             if (is_array($lst_turma_modulo)) {
                 $qtd_modulos = count($lst_turma_modulo);
             }
         }
     } else {
         $registro["ref_cod_curso"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarCurso\n-->";
     }
     if (class_exists("clsPmieducarInstituicao")) {
         $obj_cod_instituicao = new clsPmieducarInstituicao($registro["ref_cod_instituicao"]);
         $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe();
         $registro["ref_cod_instituicao"] = $obj_cod_instituicao_det["nm_instituicao"];
     } else {
         $registro["ref_cod_instituicao"] = "Erro na gera&ccedil;&atilde;o";
         echo "<!--\nErro\nClasse n&atilde;o existente: clsPmieducarInstituicao\n-->";
     }
     if (class_exists("clsPmieducarEscola")) {
         $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_ref_cod_escola"]);
         $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
         $nm_escola = $det_ref_cod_escola["nome"];
     } else {
         $registro["ref_ref_cod_escola"] = "Erro na gera&ccedil;&atilde;o";
         echo "<!--\nErro\nClasse n&atilde;o existente: clsPmieducarEscola\n-->";
     }
     if (class_exists("clsPmieducarAluno")) {
         $obj_aluno = new clsPmieducarAluno();
         $lst_aluno = $obj_aluno->lista($registro["ref_cod_aluno"], null, null, null, null, null, null, null, null, null, 1);
         if (is_array($lst_aluno)) {
             $det_aluno = array_shift($lst_aluno);
             $registro["ref_cod_aluno"] = $det_aluno["nome_aluno"];
         }
     } else {
         $registro["ref_cod_aluno"] = "Erro na gera&ccedil;&atilde;o";
         echo "<!--\nErro\nClasse n&atilde;o existente: clsPmieducarAluno\n-->";
     }
     if ($registro["ref_cod_aluno"]) {
         $this->addDetalhe(array("Aluno", "{$registro["ref_cod_aluno"]}"));
     }
     if ($registro["ref_cod_matricula"]) {
         $this->addDetalhe(array("Matr&iacute;cula", "{$registro["ref_cod_matricula"]}"));
     }
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if ($nivel_usuario == 1) {
         if ($registro["ref_cod_instituicao"]) {
             $this->addDetalhe(array("Institui&ccedil;&atilde;o", "{$registro["ref_cod_instituicao"]}"));
         }
     }
     if ($nivel_usuario == 1 || $nivel_usuario == 2) {
         if ($nm_escola) {
             $this->addDetalhe(array("Escola", "{$nm_escola}"));
         }
     }
     if ($nm_curso) {
         $this->addDetalhe(array("Curso", "{$nm_curso}"));
     }
     if ($nm_serie) {
         $this->addDetalhe(array("S&eacute;rie", "{$nm_serie}"));
     }
     if ($nm_turma) {
         $this->addDetalhe(array("Turma", "{$nm_turma}"));
     }
     if ($qtd_modulos) {
         $this->addDetalhe(array("Quantidade de M&oacute;dulos", "{$qtd_modulos}"));
     }
     $obj_matricula = new clsPmieducarMatricula($registro["ref_cod_matricula"]);
     $det_matricula = $obj_matricula->detalhe();
     $modulo = $det_matricula["modulo"];
     $aprovado = $det_matricula["aprovado"];
     $ano_matricula = $det_matricula["ano"];
     $max_qtd_nota = 0;
     $min_qtd_nota = 10;
     //************************************* DETALHE - MATRICULADO NUMA SERIE *************************************//
     if ($registro["ref_ref_cod_serie"]) {
         $obj_dispensa = new clsPmieducarDispensaDisciplina();
         $lst_dispensa = $obj_dispensa->lista($registro["ref_cod_matricula"], $registro["ref_ref_cod_serie"], $registro["ref_ref_cod_escola"], null, null, null, null, null, null, null, null, 1);
         if (is_array($lst_dispensa)) {
             foreach ($lst_dispensa as $key => $disciplina) {
                 $dispensa[$disciplina["ref_cod_disciplina"]] = $disciplina["ref_cod_disciplina"];
             }
         }
         $obj_esd = new clsPmieducarEscolaSerieDisciplina();
         $obj_esd->setOrderby("nm_disciplina");
         $lst_disciplinas = $obj_esd->lista($registro["ref_ref_cod_serie"], $registro["ref_ref_cod_escola"], null, 1, true);
         if ($lst_disciplinas) {
             foreach ($lst_disciplinas as $disciplinas) {
                 $obj_nota_aluno = new clsPmieducarNotaAluno();
                 $qtd_notas = $obj_nota_aluno->getQtdNotas(null, null, $disciplinas["ref_cod_disciplina"], $this->ref_cod_matricula);
                 if ($max_qtd_nota < $qtd_notas) {
                     $max_qtd_nota = $qtd_notas;
                 }
                 if ($min_qtd_nota > $qtd_notas) {
                     $min_qtd_nota = $qtd_notas;
                 }
             }
         }
         if (is_array($lst_disciplinas)) {
             $tabela = "<table>\n\t\t\t\t\t\t       <tr align='center'>\n\t\t\t\t\t\t           <td rowspan='2' bgcolor='#a1b3bd'><b>Nome</b></td>";
             for ($i = 1; $i <= $max_qtd_nota; $i++) {
                 if ($qtd_modulos < $i) {
                     $tabela .= "<td colspan='2' bgcolor='#a1b3bd'><b>Exame</b></td>";
                 } else {
                     $tabela .= "<td colspan='2' bgcolor='#a1b3bd'><b>M&oacute;dulo {$i}</b></td>";
                 }
             }
             $tabela .= "</tr>";
             $tabela .= "<tr align=center>";
             for ($i = 1; $i <= $max_qtd_nota; $i++) {
                 if ($qtd_modulos < $i) {
                     $tabela .= "<td colspan='2' bgcolor='#a1b3bd'><b>Nota</b></td>";
                 } else {
                     $tabela .= "<td bgcolor='#a1b3bd'><b>Nota</b></td><td bgcolor='#a1b3bd'><b>Faltas</b></td>";
                 }
             }
             $tabela .= "</tr>";
             $cont = 0;
             $qtd_disciplinas = count($lst_disciplinas);
             $prim_disciplina = false;
             foreach ($lst_disciplinas as $valor) {
                 //					echo "<pre>"; print_r($lst_disciplinas); die();
                 $parar = false;
                 if (!strcmp($valor["nm_disciplina"], "Matemática")) {
                     $parar = true;
                 }
                 if (!$dispensa[$valor["ref_cod_disciplina"]]) {
                     if ($cont % 2 == 0) {
                         $color = " bgcolor='#E4E9ED' ";
                     } else {
                         $color = " bgcolor='#FFFFFF' ";
                     }
                     unset($notas_aluno);
                     $obj_nota_aluno = new clsPmieducarNotaAluno();
                     $obj_nota_aluno->setOrderby("modulo ASC");
                     $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, $registro["ref_ref_cod_serie"], $registro["ref_ref_cod_escola"], $valor["ref_cod_disciplina"], $registro["ref_cod_matricula"], null, null, null, null, null, null, 1);
                     if (is_array($lst_nota_aluno)) {
                         foreach ($lst_nota_aluno as $key => $nota_aluno) {
                             if ($nota_aluno['nota']) {
                                 $notas_aluno[] = $nota_aluno["nota"];
                             } else {
                                 $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores($nota_aluno["ref_ref_cod_tipo_avaliacao"], $nota_aluno["ref_sequencial"]);
                                 $det_avaliacao_valores = $obj_avaliacao_valores->detalhe();
                                 $notas_aluno[] = $det_avaliacao_valores["nome"];
                             }
                         }
                     }
                     unset($faltas_aluno);
                     if ($falta_ch_globalizada) {
                         $obj_faltas = new clsPmieducarFaltas();
                         $obj_faltas->setOrderby("sequencial asc");
                         $lst_faltas = $obj_faltas->lista($registro["ref_cod_matricula"]);
                         if (is_array($lst_faltas)) {
                             foreach ($lst_faltas as $key => $faltas) {
                                 $faltas_aluno[] = $faltas['falta'];
                             }
                         }
                     } else {
                         $obj_falta_aluno = new clsPmieducarFaltaAluno();
                         $obj_falta_aluno->setOrderby("cod_falta_aluno ASC");
                         $lst_falta_aluno = $obj_falta_aluno->lista(null, null, null, $registro["ref_ref_cod_serie"], $registro["ref_ref_cod_escola"], $valor["ref_cod_disciplina"], $registro["ref_cod_matricula"], null, null, null, null, null, 1);
                         if (is_array($lst_falta_aluno)) {
                             foreach ($lst_falta_aluno as $key => $falta_aluno) {
                                 $faltas_aluno[] = $falta_aluno["faltas"];
                             }
                         }
                     }
                     $obj_disciplina = new clsPmieducarDisciplina($valor["ref_cod_disciplina"]);
                     $det_disciplina = $obj_disciplina->detalhe();
                     $nm_disciplina = $det_disciplina["nm_disciplina"];
                     $apura_falta = $det_disciplina["apura_falta"];
                     $tabela .= "<tr align='left'>\n\t\t\t\t\t\t\t\t\t    <td {$color} align='left'>{$nm_disciplina}</td>";
                     for ($i = 0; $i < $max_qtd_nota; $i++) {
                         if ($qtd_modulos - 1 < $i) {
                             if ($notas_aluno[$i]) {
                                 $notas_aluno[$i] = number_format($notas_aluno[$i], 2, ",", ".");
                                 $tabela .= "<td align='center' colspan='2' {$color} align='left'>{$notas_aluno[$i]}</td>";
                             } else {
                                 $tabela .= "<td align='center' colspan='2' {$color} align='left'>-</td>";
                             }
                         } else {
                             if ($notas_aluno[$i]) {
                                 $tabela .= "<td align='center' {$color} align='left'>{$notas_aluno[$i]}</td>";
                             } else {
                                 $tabela .= "<td align='center' {$color} align='left'>-</td>";
                             }
                             if ($falta_ch_globalizada && !$prim_disciplina) {
                                 $tabela .= "<td align='center' rowspan='{$qtd_disciplinas}' {$color} align='left'>{$faltas_aluno[$i]}</td>";
                             } else {
                                 if (!$falta_ch_globalizada) {
                                     if (is_numeric($faltas_aluno[$i])) {
                                         $tabela .= "<td align='center' {$color} align='left'>{$faltas_aluno[$i]}</td>";
                                     } else {
                                         $tabela .= "<td align='center' {$color} align='left'>-</td>";
                                     }
                                 }
                             }
                         }
                     }
                     $prim_disciplina = true;
                     $tabela .= "</tr>";
                     $cont++;
                 }
             }
             if (!$ano_letivo || $ano_letivo == $ano_matricula) {
                 if ($max_qtd_nota > 0) {
                     $tabela .= "<tr align='center'>\n\t\t\t\t\t\t\t\t\t    <td align='center'></td>";
                     for ($i = 1; $i <= $max_qtd_nota; $i++) {
                         //if ( ($max_qtd_nota != $min_qtd_nota) && ($min_qtd_nota < $i) && ($qtd_modulos >= $modulo) && false)
                         if (!$det_ref_cod_curso['edicao_final']) {
                             $tabela .= "<td colspan='2'></td>";
                         } else {
                             $tabela .= "<td align='center' colspan='2' bgcolor='#a1b3bd' align='center'><a href='educar_falta_nota_aluno_cad.php?ref_cod_matricula={$registro["ref_cod_matricula"]}&ref_cod_turma={$registro["ref_cod_turma"]}&ref_sequencial_matricula_turma={$registro["sequencial"]}&modulo={$i}'>Editar</a></td>";
                         }
                     }
                     $tabela .= "</tr>";
                 }
             }
             $tabela .= "</table>";
         }
     } else {
         $obj_disciplinas = new clsPmieducarDisciplina();
         $obj_disciplina->setOrderby("nm_disciplina");
         $lst_disciplinas = $obj_disciplinas->lista(null, null, null, null, null, null, null, null, null, null, null, null, 1, null, $registro["ref_cod_curso"]);
         foreach ($lst_disciplinas as $disciplinas) {
             $obj_nota_aluno = new clsPmieducarNotaAluno();
             $qtd_notas = $obj_nota_aluno->getQtdNotas(null, null, null, $this->ref_cod_matricula, $disciplinas["cod_disciplina"]);
             if ($max_qtd_nota < $qtd_notas) {
                 $max_qtd_nota = $qtd_notas;
             }
         }
         if (is_array($lst_disciplinas)) {
             $tabela = "<table>\n\t\t\t\t\t\t       <tr align='center'>\n\t\t\t\t\t\t           <td rowspan='2' bgcolor='#a1b3bd'><b>Nome</b></td>";
             for ($i = 1; $i <= $max_qtd_nota; $i++) {
                 if ($qtd_modulos < $i) {
                     $tabela .= "<td colspan='2' bgcolor='#a1b3bd'><b>Exame</b></td>";
                 } else {
                     $tabela .= "<td colspan='2' bgcolor='#a1b3bd'><b>M&oacute;dulo {$i}</b></td>";
                 }
             }
             $tabela .= "</tr>";
             $tabela .= "<tr align=center>";
             for ($i = 1; $i <= $max_qtd_nota; $i++) {
                 if ($qtd_modulos < $i) {
                     $tabela .= "<td colspan='2' bgcolor='#a1b3bd'><b>Nota</b></td>";
                 } else {
                     $tabela .= "<td bgcolor='#a1b3bd'><b>Nota</b></td><td bgcolor='#a1b3bd'><b>Faltas</b></td>";
                 }
             }
             $tabela .= "</tr>";
             $cont = 0;
             $qtd_disciplinas = count($lst_disciplinas);
             $prim_disciplina = false;
             foreach ($lst_disciplinas as $valor) {
                 if ($cont % 2 == 0) {
                     $color = " bgcolor='#E4E9ED' ";
                 } else {
                     $color = " bgcolor='#FFFFFF' ";
                 }
                 unset($notas_aluno);
                 $obj_nota_aluno = new clsPmieducarNotaAluno();
                 $obj_nota_aluno->setOrderby("modulo ASC");
                 $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, null, null, null, $registro["ref_cod_matricula"], null, null, null, null, null, null, 1, null, $valor["cod_disciplina"]);
                 if (is_array($lst_nota_aluno)) {
                     foreach ($lst_nota_aluno as $key => $nota_aluno) {
                         if ($nota_aluno['nota']) {
                             $notas_aluno[] = $nota_aluno["nota"];
                         } else {
                             $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores($nota_aluno["ref_ref_cod_tipo_avaliacao"], $nota_aluno["ref_sequencial"]);
                             $det_avaliacao_valores = $obj_avaliacao_valores->detalhe();
                             $notas_aluno[] = $det_avaliacao_valores["nome"];
                         }
                     }
                 }
                 unset($faltas_aluno);
                 if ($falta_ch_globalizada) {
                     $obj_faltas = new clsPmieducarFaltas();
                     $lst_faltas = $obj_faltas->lista($registro["ref_cod_matricula"]);
                     if (is_array($lst_faltas)) {
                         foreach ($lst_faltas as $key => $faltas) {
                             $faltas_aluno[] = $faltas['falta'];
                         }
                     }
                 } else {
                     $obj_falta_aluno = new clsPmieducarFaltaAluno();
                     $obj_falta_aluno->setOrderby("cod_falta_aluno ASC");
                     $lst_falta_aluno = $obj_falta_aluno->lista(null, null, null, null, null, null, $registro["ref_cod_matricula"], null, null, null, null, null, 1, null, $valor["cod_disciplina"]);
                     if (is_array($lst_falta_aluno)) {
                         foreach ($lst_falta_aluno as $key => $falta_aluno) {
                             $faltas_aluno[] = $falta_aluno["faltas"];
                         }
                     }
                 }
                 $nm_disciplina = $valor["nm_disciplina"];
                 $apura_falta = $valor["apura_falta"];
                 $tabela .= "<tr align='center'>\n\t\t\t\t\t\t\t\t    <td {$color} align='center'>{$nm_disciplina}</td>";
                 for ($i = 0; $i < $max_qtd_nota; $i++) {
                     if ($qtd_modulos - 1 < $i) {
                         if ($notas_aluno[$i]) {
                             $notas_aluno[$i] = number_format($notas_aluno[$i], 2, ",", ".");
                             $tabela .= "<td align='center' colspan='2' {$color} align='left'>{$notas_aluno[$i]}</td>";
                         } else {
                             $tabela .= "<td align='center' colspan='2' {$color} align='left'>-</td>";
                         }
                     } else {
                         if ($notas_aluno[$i]) {
                             $tabela .= "<td align='center' {$color} align='left'>{$notas_aluno[$i]}</td>";
                         } else {
                             $tabela .= "<td align='center' {$color} align='left'>-</td>";
                         }
                         if ($falta_ch_globalizada && !$prim_disciplina) {
                             $tabela .= "<td align='center' rowspan='{$qtd_disciplinas}' {$color} align='left'>{$faltas_aluno[$i]}</td>";
                         } else {
                             if (!$falta_ch_globalizada) {
                                 if (is_numeric($faltas_aluno[$i])) {
                                     $tabela .= "<td align='center' {$color} align='left'>{$faltas_aluno[$i]}</td>";
                                 } else {
                                     $tabela .= "<td align='center' {$color} align='left'>-</td>";
                                 }
                             }
                         }
                     }
                 }
                 $prim_disciplina = true;
                 $tabela .= "</tr>";
                 $cont++;
             }
             if ($max_qtd_nota > 0) {
                 $tabela .= "<tr align='center'>\n\t\t\t\t\t\t\t\t    <td align='center'></td>";
                 for ($i = 1; $i <= $max_qtd_nota; $i++) {
                     //if ( ($max_qtd_nota != $min_qtd_nota) && ($min_qtd_nota < $i) && ($qtd_modulos <= $modulo) )
                     if (!$det_ref_cod_curso['edicao_final']) {
                         $tabela .= "<td colspan='2'></td>";
                     } else {
                         $tabela .= "<td align='center' colspan='2' bgcolor='#a1b3bd' align='center'><a href='educar_falta_nota_aluno_cad.php?ref_cod_matricula={$registro["ref_cod_matricula"]}&ref_cod_turma={$registro["ref_cod_turma"]}&ref_sequencial_matricula_turma={$registro["sequencial"]}&modulo={$i}'>Editar</a></td>";
                     }
                 }
                 $tabela .= "</tr>";
             }
             $tabela .= "</table>";
         }
     }
     if ($tabela) {
         $this->addDetalhe(array("Disciplina", "{$tabela}"));
     }
     if ($aprovado) {
         if ($aprovado == 1) {
             $aprovado_ = "Aprovado";
         } elseif ($aprovado == 2) {
             $aprovado_ = "Reprovado";
         } elseif ($aprovado == 3) {
             if ($qtd_modulos < $modulo) {
                 $aprovado_ = "Em Exame";
             } else {
                 $aprovado_ = "Em Andamento";
             }
         }
         $this->addDetalhe(array("Situa&ccedil;&atilde;o", "{$aprovado_}"));
     }
     if ($obj_permissoes->permissao_cadastra(642, $this->pessoa_logada, 7)) {
         if ($qtd_modulos >= $modulo && $aprovado == 3) {
             $this->array_botao = array("Nova Nota/Falta");
             $this->array_botao_url = array("educar_falta_nota_aluno_cad.php?ref_cod_matricula={$registro["ref_cod_matricula"]}&ref_cod_turma={$registro["ref_cod_turma"]}&ref_sequencial_matricula_turma={$registro["sequencial"]}");
         } elseif ($qtd_modulos < $modulo && $aprovado == 3) {
             $this->array_botao = array("Nota Exame");
             if ($qtd_modulos < $max_qtd_nota) {
                 $this->array_botao_url = array("educar_falta_nota_aluno_cad.php?ref_cod_matricula={$registro["ref_cod_matricula"]}&ref_cod_turma={$registro["ref_cod_turma"]}&ref_sequencial_matricula_turma={$registro["sequencial"]}&modulo={$max_qtd_nota}");
             } else {
                 $this->array_botao_url = array("educar_falta_nota_aluno_cad.php?ref_cod_matricula={$registro["ref_cod_matricula"]}&ref_cod_turma={$registro["ref_cod_turma"]}&ref_sequencial_matricula_turma={$registro["sequencial"]}");
             }
         }
     }
     $this->url_cancelar = "educar_falta_nota_aluno_lst.php";
     $this->largura = "100%";
 }
 function cadastraSNotasFaltas()
 {
     if (is_array($this->disciplina_modulo)) {
         //				$obj = new clsPmieducarNotaAluno();
         //				$lst_obj = $obj->lista( null, null, $this->ref_cod_tipo_avaliacao, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, $this->ref_cod_matricula, null, null, null, null, null, null, 1, $this->modulo );
         //				if (!is_array($lst_obj) && count($lst_obj))
         //				{
         foreach ($this->disciplina_modulo as $avaliacao) {
             if (is_numeric($avaliacao["nota"])) {
                 $obj = new clsPmieducarNotaAluno(null, $avaliacao["nota"], $this->ref_cod_tipo_avaliacao, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $avaliacao["ref_cod_disciplina"], $this->ref_cod_matricula, null, $this->pessoa_logada, null, null, 1, $this->modulo);
             } else {
                 $avaliacao["nota"] = str_replace(".", "", $avaliacao["nota"]);
                 $avaliacao["nota"] = str_replace(",", ".", $avaliacao["nota"]);
                 $obj = new clsPmieducarNotaAluno(null, null, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $avaliacao["ref_cod_disciplina"], $this->ref_cod_matricula, null, $this->pessoa_logada, null, null, 1, $this->modulo, null, $avaliacao["nota"]);
             }
             if (is_numeric($avaliacao["nota"])) {
                 $cadastrou = $obj->cadastra();
                 //					if( $cadastrou && ($this->situacao != 7) )
                 if ($cadastrou && $this->qtd_modulos >= $this->modulo) {
                     if (!$this->falta_ch_globalizada && is_numeric($avaliacao["faltas"])) {
                         $obj = new clsPmieducarFaltaAluno(null, null, $this->pessoa_logada, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $avaliacao["ref_cod_disciplina"], $this->ref_cod_matricula, $avaliacao["faltas"], null, null, 1, $this->modulo);
                         $cadastrou1 = $obj->cadastra();
                         if (!$cadastrou1) {
                             $this->mensagem = "Cadastro n&atilde;o realizado.<br>";
                             echo "<!--\nErro ao cadastrar clsPmieducarFaltaAluno\nvalores obrigatorios\nis_numeric( {$this->pessoa_logada} ) && is_numeric( {$this->ref_ref_cod_serie} ) && is_numeric( {$this->ref_ref_cod_escola} ) && is_numeric( {$avaliacao["ref_cod_disciplina"]} ) && is_numeric( {$this->ref_cod_matricula} ) && is_numeric( {$avaliacao["faltas"]} ) )\n-->";
                             return false;
                         }
                     }
                 } elseif (!$cadastrou) {
                     $this->mensagem = "Cadastro n&atilde;o realizado.<br>";
                     echo "<!--\nErro ao cadastrar clsPmieducarNotaAluno\nvalores obrigatorios\nis_numeric( {$avaliacao["nota"]} ) && is_numeric( {$this->ref_cod_tipo_avaliacao} ) && is_numeric( {$this->ref_ref_cod_serie} ) && is_numeric( {$this->ref_ref_cod_escola} ) && is_numeric( {$avaliacao["ref_cod_disciplina"]} ) && is_numeric( {$this->ref_cod_matricula} ) && is_numeric( {$this->pessoa_logada} )\n-->";
                     return false;
                 }
             }
         }
         if ($cadastrou) {
             $obj_matricula = new clsPmieducarMatricula($this->ref_cod_matricula, null, null, null, $this->pessoa_logada);
             $obj_matricula->avancaModulo();
         }
         if ($cadastrou && $this->qtd_modulos >= $this->modulo && $this->falta_ch_globalizada && is_numeric($this->total_faltas)) {
             $obj = new clsPmieducarFaltas($this->ref_cod_matricula, $this->modulo, $this->pessoa_logada, $this->total_faltas);
             if ($obj->existe()) {
                 $cadastrou1 = $obj->edita();
             } else {
                 $cadastrou1 = $obj->cadastra();
             }
             if (!$cadastrou1) {
                 $this->mensagem = "Cadastro n&atilde;o realizado.<br>";
                 echo "<!--\nErro ao cadastrar clsPmieducarFaltas\nvalores obrigatorios\nis_numeric( {$this->ref_cod_matricula} ) && is_numeric( {$this->modulo} ) && is_numeric( {$this->pessoa_logada} ) && is_numeric( {$this->total_faltas} )\n-->";
                 return false;
             }
         }
         //				}
     } else {
         $this->mensagem = "Cadastro n&atilde;o realizado (N&atilde;o foi gerado o Array de notas e faltas das disciplinas).<br>";
         return false;
     }
 }
 protected function getMatriculas()
 {
     if ($this->canGetMatriculas()) {
         $matriculas = new clsPmieducarMatricula();
         $matriculas->setOrderby('ano DESC, ref_ref_cod_serie DESC, cod_matricula DESC, aprovado');
         $matriculas = $matriculas->lista(null, null, null, null, null, null, $this->getRequest()->aluno_id, null, null, null, null, null, 1);
         $attrs = array('cod_matricula' => 'id', 'ref_cod_instituicao' => 'instituicao_id', 'ref_ref_cod_escola' => 'escola_id', 'ref_cod_curso' => 'curso_id', 'ref_ref_cod_serie' => 'serie_id', 'ref_cod_aluno' => 'aluno_id', 'nome' => 'aluno_nome', 'aprovado' => 'situacao', 'ano');
         $matriculas = Portabilis_Array_Utils::filterSet($matriculas, $attrs);
         foreach ($matriculas as $index => $matricula) {
             $turma = $this->loadTurmaByMatriculaId($matricula['id']);
             $matriculas[$index]['aluno_nome'] = $this->toUtf8($matricula['aluno_nome'], array('transform' => true));
             $matriculas[$index]['turma_id'] = $turma['id'];
             $matriculas[$index]['turma_nome'] = $turma['nome'];
             $matriculas[$index]['escola_nome'] = $this->loadEscolaNome($matricula['escola_id']);
             $matriculas[$index]['curso_nome'] = $this->loadCursoNome($matricula['curso_id']);
             $matriculas[$index]['serie_nome'] = $this->loadSerieNome($matricula['serie_id']);
             $matriculas[$index]['ultima_enturmacao'] = $this->loadNomeTurmaOrigem($matricula['id']);
             $matriculas[$index]['data_entrada'] = $this->loadTransferenciaDataEntrada($matricula['id']);
             $matriculas[$index]['data_saida'] = $this->loadTransferenciaDataSaida($matricula['id']);
             $matriculas[$index]['situacao'] = App_Model_MatriculaSituacao::getInstance()->getValue($matricula['situacao']);
             $matriculas[$index]['user_can_access'] = Portabilis_Utils_User::canAccessEscola($matricula['escola_id']);
             $matriculas[$index]['transferencia_em_aberto'] = $this->possuiTransferenciaEmAberto($matricula['id']);
         }
         return array('matriculas' => $matriculas);
     }
 }
 function Gerar()
 {
     if ($_POST) {
         foreach ($_POST as $campo => $val) {
             $this->{$campo} = $this->{$campo} ? $this->{$campo} : $val;
         }
     }
     $this->campoOculto('ref_cod_turma', $this->ref_cod_turma);
     $this->campoOculto('ref_ref_cod_escola', $this->ref_ref_cod_escola);
     $this->campoOculto('ref_ref_cod_serie', $this->ref_ref_cod_serie);
     $this->campoOculto('ref_cod_curso', $this->ref_cod_curso);
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if ($nivel_usuario == 1) {
         $obj_cod_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao);
         $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe();
         $nm_instituicao = $obj_cod_instituicao_det['nm_instituicao'];
         $this->campoRotulo('nm_instituicao', 'Institui&ccedil;&atilde;o', $nm_instituicao);
     }
     if ($nivel_usuario == 1 || $nivel_usuario == 2) {
         if ($this->ref_ref_cod_escola) {
             $obj_ref_cod_escola = new clsPmieducarEscola($this->ref_ref_cod_escola);
             $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
             $nm_escola = $det_ref_cod_escola['nome'];
             $this->campoRotulo('nm_escola', 'Escola', $nm_escola);
         }
     }
     if ($this->ref_cod_curso) {
         $obj_ref_cod_curso = new clsPmieducarCurso($this->ref_cod_curso);
         $det_ref_cod_curso = $obj_ref_cod_curso->detalhe();
         $nm_curso = $det_ref_cod_curso['nm_curso'];
         $this->campoRotulo('nm_curso', 'Curso', $nm_curso);
     }
     if ($this->ref_ref_cod_serie) {
         $obj_ref_cod_serie = new clsPmieducarSerie($this->ref_ref_cod_serie);
         $det_ref_cod_serie = $obj_ref_cod_serie->detalhe();
         $nm_serie = $det_ref_cod_serie["nm_serie"];
         $this->campoRotulo('nm_serie', 'S&eacute;rie', $nm_serie);
         // busca o ano em q a escola esta em andamento
         $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo();
         $lst_ano_letivo = $obj_ano_letivo->lista($this->ref_ref_cod_escola, NULL, NULL, NULL, 1, NULL, NULL, NULL, NULL, 1);
         if (is_array($lst_ano_letivo)) {
             $det_ano_letivo = array_shift($lst_ano_letivo);
             $ano_letivo = $det_ano_letivo['ano'];
         } else {
             $this->mensagem = 'Não foi possível encontrar o ano letivo em andamento da escola.';
             return FALSE;
         }
     }
     if ($this->ref_cod_turma) {
         $obj_turma = new clsPmieducarTurma($this->ref_cod_turma);
         $det_turma = $obj_turma->detalhe();
         $nm_turma = $det_turma['nm_turma'];
         $this->campoRotulo('nm_turma', 'Turma', $nm_turma);
     }
     // Inlui o aluno
     $this->campoQuebra();
     if ($_POST['matriculas_turma']) {
         $this->matriculas_turma = unserialize(urldecode($_POST['matriculas_turma']));
     }
     $alunosEnturmados = false;
     if (is_numeric($this->ref_cod_turma) && !$_POST) {
         $obj_matriculas_turma = new clsPmieducarMatriculaTurma();
         $obj_matriculas_turma->setOrderby('sequencial_fechamento, nome_aluno');
         $lst_matriculas_turma = $obj_matriculas_turma->lista(NULL, $this->ref_cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, array(1, 2, 3), NULL, NULL, $ano_letivo, NULL, TRUE, NULL, 1, TRUE);
         if (is_array($lst_matriculas_turma)) {
             $alunosEnturmados = true;
             foreach ($lst_matriculas_turma as $key => $campo) {
                 $this->matriculas_turma[$campo['ref_cod_matricula']]['sequencial_'] = $campo['sequencial'];
             }
         }
     }
     if ($_POST['ref_cod_matricula']) {
         $obj_matriculas_turma = new clsPmieducarMatriculaTurma($_POST['ref_cod_matricula'], $this->ref_cod_turma);
         $sequencial = $obj_matriculas_turma->buscaSequencialMax();
         $this->matriculas_turma[$_POST['ref_cod_matricula']]['sequencial_'] = $sequencial;
         unset($this->ref_cod_matricula);
     }
     if ($this->matriculas_turma) {
         $this->campoRotulo('titulo', 'Matr&iacute;culas', "<b>&nbsp;Alunos matriculados&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Marque alunos para desenturmar</b><label style='display: block; width: 350px; margin-left: 196px;'><input type='checkbox' name='CheckTodos' onClick='marcarCheck(" . '"check_desenturma[]"' . ");'/>Marcar Todos</label>");
         foreach ($this->matriculas_turma as $matricula => $campo) {
             $obj_matricula = new clsPmieducarMatricula($matricula);
             $det_matricula = $obj_matricula->detalhe();
             $obj_aluno = new clsPmieducarAluno();
             $lst_aluno = $obj_aluno->lista($det_matricula['ref_cod_aluno']);
             $det_aluno = array_shift($lst_aluno);
             $nm_aluno = $det_aluno['nome_aluno'];
             $this->campoTextoInv('ref_cod_matricula_' . $matricula, '', $nm_aluno, 30, 255, FALSE, FALSE, TRUE, '', '', '', '', 'ref_cod_matricula');
             $this->campoCheck('check_desenturma[' . $matricula . ']', '', $matricula);
         }
     }
     $this->campoOculto('matriculas_turma', serialize($this->matriculas_turma));
     // Aluno
     $opcoes = array();
     $obj_matriculas_turma = new clsPmieducarMatriculaTurma();
     $alunos = $obj_matriculas_turma->alunosNaoEnturmados($this->ref_ref_cod_escola, $this->ref_ref_cod_serie, $this->ref_cod_curso, $ano_letivo);
     if (is_array($alunos)) {
         for ($i = 0; $i < count($alunos); $i++) {
             $obj_matricula = new clsPmieducarMatricula($alunos[$i]);
             $det_matricula = $obj_matricula->detalhe();
             $obj_aluno = new clsPmieducarAluno();
             $lst_aluno = $obj_aluno->lista($det_matricula['ref_cod_aluno']);
             $det_aluno = array_shift($lst_aluno);
             $opcoes[$alunos[$i]] = $det_aluno['nome_aluno'];
         }
     }
     if (count($opcoes)) {
         $this->inputsHelper()->date('data_enturmacao', array('label' => 'Data da enturmação', 'value' => date('Y-m-d')));
         asort($opcoes);
         foreach ($opcoes as $key => $aluno) {
             $this->campoCheck('ref_cod_matricula[' . $key . ']', 'Aluno', $key, $aluno, NULL, NULL, NULL);
         }
     } else {
         if ($alunosEnturmados) {
             $this->campoRotulo('rotulo_1', '-', 'Todos os alunos matriculados na série já se encontram enturmados.');
         } else {
             $this->campoRotulo('rotulo_1', '-', 'Não há alunos enturmados.');
         }
     }
     $this->campoQuebra();
 }
 function Novo()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7, "educar_matricula_det.php?cod_matricula={$this->ref_cod_matricula}");
     //		$obj_matricula = new clsPmieducarMatricula();
     //		$lst_matricula = $obj_matricula->lista( null,null,null,null,null,null,$this->ref_cod_aluno,null,null,null,null,null,1 );
     //		if ( is_array($lst_matricula) )
     //		{
     //			$det_matricula = array_shift($lst_matricula);
     //			$this->ref_cod_matricula_saida = $det_matricula["cod_matricula"];
     if ($this->transferencia_tipo == 2) {
         $this->data_transferencia = date("Y-m-d");
         $this->ativo = 1;
         $obj_matricula = new clsPmieducarMatricula($this->ref_cod_matricula);
         $det_matricula = $obj_matricula->detalhe();
         $aprovado = $det_matricula["aprovado"];
         if ($aprovado == 3) {
             $obj = new clsPmieducarMatricula($this->ref_cod_matricula, null, null, null, $this->pessoa_logada, null, null, 4, null, null, 1);
             $editou = $obj->edita();
             if (!$editou) {
                 $this->mensagem = "N&atilde;o foi poss&iacute;vel editar a Matr&iacute;cula do Aluno.<br>";
                 return false;
             }
             $obj_matricula_turma = new clsPmieducarMatriculaTurma();
             $lst_matricula_turma = $obj_matricula_turma->lista($this->ref_cod_matricula, null, null, null, null, null, null, null, 1);
             if ($lst_matricula_turma) {
                 $det_matricula_turma = array_shift($lst_matricula_turma);
                 $obj_matricula_turma = new clsPmieducarMatriculaTurma($this->ref_cod_matricula, $det_matricula_turma['ref_cod_turma'], $this->pessoa_logada, null, null, null, 0, null, $det_matricula_turma['sequencial']);
                 if (!$obj_matricula_turma->edita()) {
                     $this->mensagem = "N&atilde;o foi poss&iacute;vel desativar a Matr&iacute;cula Turma do Aluno.<br>";
                     return false;
                 }
             }
         }
     }
     $obj = new clsPmieducarTransferenciaSolicitacao(null, $this->ref_cod_transferencia_tipo, null, $this->pessoa_logada, null, $this->ref_cod_matricula, $this->observacao, null, null, $this->ativo, $this->data_transferencia);
     $cadastrou = $obj->cadastra();
     if ($cadastrou) {
         $this->mensagem .= "Cadastro efetuado com sucesso.<br>";
         header("Location: educar_matricula_det.php?cod_matricula={$this->ref_cod_matricula}");
         die;
         return true;
     }
     //		}
     //		else
     //		{
     //			$this->mensagem = "N&atilde;o foi poss&iacute;vel encontrar a Matr&iacute;cula do Aluno.<br>";
     //			return false;
     //		}
     $this->mensagem = "Cadastro n&atilde;o realizado.<br>";
     echo "<!--\nErro ao cadastrar clsPmieducarTransferenciaSolicitacao\nvalores obrigatorios\nis_numeric( {$this->ref_cod_transferencia_tipo} ) && is_numeric( {$this->pessoa_logada} ) && is_numeric( {$this->ref_cod_aluno} )\n-->";
     return false;
 }
 function renderHTML()
 {
     if ($_POST) {
         foreach ($_POST as $key => $value) {
             $this->{$key} = $value;
         }
     }
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     if ($this->ref_ref_cod_serie) {
         $this->ref_cod_serie = $this->ref_ref_cod_serie;
     }
     $fonte = 'arial';
     $corTexto = '#000000';
     if ($this->escola_sem_avaliacao == 1) {
         $this->escola_sem_avaliacao = true;
     } elseif ($this->escola_sem_avaliacao == 2) {
         $this->escola_sem_avaliacao = false;
     } else {
         $this->escola_sem_avaliacao = null;
     }
     $obj_escola_instituicao = new clsPmieducarEscola();
     $lst_escola_instituicao = $obj_escola_instituicao->lista($this->ref_cod_escola, null, null, $this->ref_cod_instituicao, null, null, null, null, null, null, 1, null, $this->escola_sem_avaliacao);
     $this->pdf = new clsPDF("Alunos Matriculados - Sintético - {$this->ano}", "Alunos Matriculados - Sintético", "A4", "", false, false);
     if ($this->is_padrao || $this->ano == 2007) {
         $this->semestre = null;
     }
     if (is_array($lst_escola_instituicao) && count($lst_escola_instituicao)) {
         foreach ($lst_escola_instituicao as $escola) {
             $page_open = false;
             $this->ref_cod_escola = $escola['cod_escola'];
             if ($this->ref_cod_escola) {
                 $obj_escola = new clsPmieducarEscola($this->ref_cod_escola);
                 $det_escola = $obj_escola->detalhe();
                 $this->nm_escola = $det_escola['nome'];
                 $obj_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao);
                 $det_instituicao = $obj_instituicao->detalhe();
                 $this->nm_instituicao = $det_instituicao['nm_instituicao'];
                 if ($det_escola['ref_idpes']) {
                     $obj_endereco_escola = new clsEndereco($det_escola['ref_idpes']);
                     $det_enderedo_escola = $obj_endereco_escola->detalhe();
                     $this->nm_localidade = $this->nm_municipio = $det_enderedo_escola['cidade'];
                     if (!$det_enderedo_escola) {
                         $obj_endereco_externo_escola = new clsEnderecoExterno($det_escola['ref_idpes']);
                         $det_enderedo_externo_escola = $obj_endereco_externo_escola->detalhe();
                         $this->nm_localidade = $this->nm_municipio = $det_enderedo_externo_escola['cidade'];
                     }
                 } else {
                     $obj_escola_complemento = new clsPmieducarEscolaComplemento($this->ref_cod_escola);
                     $det_escola_complemento = $obj_escola_complemento->detalhe();
                     $this->nm_localidade = $this->nm_municipio = $det_escola_complemento['municipio'];
                 }
             }
             $total_geral_escola_nao_enturmado_feminino = 0;
             $total_geral_escola_nao_enturmado_masculino = 0;
             $total_geral_escola_enturmado_feminino = 0;
             $total_geral_escola_enturmado_masculino = 0;
             $obj_cursos = new clsPmieducarCurso();
             $obj_cursos->setOrderby("cod_curso asc");
             $lst_cursos = $obj_cursos->lista($this->ref_cod_curso, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 1, null, $this->ref_cod_instituicao);
             if ($lst_cursos) {
                 foreach ($lst_cursos as $curso) {
                     $obj_serie_curso = new clsPmieducarSerie();
                     $obj_serie_curso->setOrderby('etapa_curso asc');
                     $lst_serie_curso = $obj_serie_curso->lista($this->ref_cod_serie, null, null, $curso['cod_curso'], null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao, null, null, null, $this->ref_cod_escola);
                     $existe_matriculas = false;
                     if ($lst_serie_curso) {
                         $total = 0;
                         foreach ($lst_serie_curso as $key_serie => $serie) {
                             $obj_turmas = new clsPmieducarTurma();
                             $lst_turmas = $obj_turmas->lista(null, null, null, $serie['cod_serie'], $escola['cod_escola'], null, null, null, null, null, null, null, null, null, 1, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, true);
                             if (!$lst_turmas) {
                                 $obj_turmas = new clsPmieducarTurma();
                                 $lst_turmas = $obj_turmas->lista(null, null, null, null, null, null, null, null, null, null, null, null, null, null, 1, null, null, null, null, null, null, null, null, null, null, null, null, null, $escola['cod_escola'], $serie['cod_serie']);
                             }
                             if ($lst_turmas) {
                                 if (!$page_open) {
                                     $x_quadrado = 30;
                                     $this->page_y = 80;
                                     $altura_caixa = 20;
                                     $this->pdf->OpenPage();
                                     $this->addCabecalho();
                                     $this->addCabecalho2();
                                     $page_open = true;
                                 }
                                 $existe_matriculas = true;
                                 $total_enturmados_turma_masculino = 0;
                                 $total_enturmados_turma_feminino = 0;
                                 $total_nao_enturmados_turma_masculino = 0;
                                 $total_nao_enturmados_turma_feminino = 0;
                                 foreach ($lst_turmas as $key_turma => $turma) {
                                     if ($turma['hora_inicial']) {
                                         if ($turma['hora_inicial'] <= '12:00') {
                                             $turno = 'Matutino';
                                         } elseif ($turma['hora_inicial'] > '12:00' && $turma['hora_inicial'] <= '18:00') {
                                             $turno = 'Vespert.';
                                         } else {
                                             $turno = 'Noturno';
                                         }
                                     }
                                     $this->pdf->quadrado_relativo($x_quadrado, $this->page_y, 535, $altura_caixa);
                                     $this->pdf->escreve_relativo("{$escola['cod_escola']}", 25, $this->page_y + 5, 45, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     $this->pdf->linha_relativa(60, $this->page_y, 0, $altura_caixa, '0.1');
                                     $this->pdf->escreve_relativo("{$curso['nm_curso']}", 67, $this->page_y + 5, 258, $altura_caixa, $fonte, 8, $corTexto, 'left');
                                     $this->pdf->linha_relativa(250, $this->page_y, 0, $altura_caixa, '0.1');
                                     $this->pdf->escreve_relativo("{$serie['nm_serie']} / {$turma['nm_turma']}", 250, $this->page_y + 2, 70, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     $this->pdf->linha_relativa(320, $this->page_y, 0, $altura_caixa, '0.1');
                                     $this->pdf->escreve_relativo("{$turno}", 323, $this->page_y + 5, 258, $altura_caixa, $fonte, 8, $corTexto, 'left');
                                     $this->pdf->linha_relativa(360, $this->page_y, 0, $altura_caixa, '0.1');
                                     $obj_matriculas_turma = new clsPmieducarMatriculaTurma();
                                     $lst_matriculas_turma = $obj_matriculas_turma->lista(null, $turma['cod_turma'], null, null, null, null, null, null, 1, $serie['cod_serie'], $curso['cod_curso'], $escola['cod_escola'], $this->ref_cod_instituicao, null, null, array(1, 2, 3), null, null, $this->ano, null, null, null, 1, true, null, null, null, null, $this->semestre);
                                     $enturmados_turma_masculino = 0;
                                     $enturmados_turma_feminino = 0;
                                     if ($lst_matriculas_turma) {
                                         $total_enturmados_turma_geral = count($lst_matriculas_turma);
                                         //aqui verificar aluno que estao na multiseriada
                                         foreach ($lst_matriculas_turma as $matricula) {
                                             $obj_matricula = new clsPmieducarMatricula($matricula['ref_cod_matricula']);
                                             $det_matricula = $obj_matricula->detalhe();
                                             $obj_aluno = new clsPmieducarAluno($det_matricula['ref_cod_aluno']);
                                             $det_aluno = $obj_aluno->detalhe();
                                             $obj_pessoa = new clsFisica($det_aluno['ref_idpes']);
                                             $det_pessoa = $obj_pessoa->detalhe();
                                             /**
                                              * verifica se o aluno possui transferencia
                                              * e nao exibe na enturmacao
                                              */
                                             //$obj_transf = new clsPmieducarTransferenciaSolicitacao();
                                             //$lst_transf = $obj_transf->lista(null,null,null,null,null,$matricula['ref_cod_matricula'],null,null,null,null,null,null,null,null,null,null,$this->ref_cod_escola,$this->ref_ref_cod_serie);
                                             //if($lst_transf)
                                             //	continue;
                                             if (strtoupper($det_pessoa['sexo']) == 'M') {
                                                 $enturmados_turma_masculino++;
                                             } else {
                                                 $enturmados_turma_feminino++;
                                             }
                                         }
                                     }
                                     $total_enturmados_turma_masculino += $enturmados_turma_masculino;
                                     $total_enturmados_turma_feminino += $enturmados_turma_feminino;
                                     $total_geral_escola_enturmado_masculino += $enturmados_turma_masculino;
                                     $total_geral_escola_enturmado_feminino += $enturmados_turma_feminino;
                                     /***************************INVERTIDO ABAIXO*******************************************************/
                                     //enturmados
                                     /*$this->pdf->escreve_relativo( "{$enturmados_turma_feminino}", 355, $this->page_y + 5 , 40, $altura_caixa, $fonte, 8, $corTexto, 'center' );
                                     		$this->pdf->escreve_relativo( "{$enturmados_turma_masculino}", 385, $this->page_y + 5 , 40, $altura_caixa, $fonte, 8, $corTexto, 'center' );*/
                                     $this->pdf->escreve_relativo("{$enturmados_turma_masculino}", 355, $this->page_y + 5, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     $this->pdf->escreve_relativo("{$enturmados_turma_feminino}", 385, $this->page_y + 5, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     /**************************************************************************************************/
                                     $this->pdf->escreve_relativo($enturmados_turma_masculino + $enturmados_turma_feminino, 425, $this->page_y + 5, 30, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     $this->pdf->linha_relativa(460, $this->page_y, 0, $altura_caixa, '0.1');
                                     $this->pdf->linha_relativa(390, $this->page_y, 0, $altura_caixa, '0.1');
                                     $this->pdf->linha_relativa(420, $this->page_y, 0, $altura_caixa, '0.1');
                                     //$obj_matriculas = new clsPmieducarMatricula();
                                     //									$lst_matriculas = $obj_matriculas->lista(null, null, $escola['cod_escola'], $serie['cod_serie'], null, null, null, null, null, null, null, null, 1, $this->ano, $curso['cod_curso'], $this->ref_cod_instituicao );
                                     if (!$executou) {
                                         $obj_nao_enturmados = new clsPmieducarMatriculaTurma();
                                         $lst_nao_enturmados = $obj_nao_enturmados->dadosAlunosNaoEnturmados($escola['cod_escola'], $serie['cod_serie'], $curso['cod_curso'], $this->ano, true);
                                         $executou = true;
                                         //$total_nao_enturmados_turma_masculino = $total_nao_enturmados_turma_feminino = 0;
                                         if ($lst_nao_enturmados) {
                                             foreach ($lst_nao_enturmados as $matricula) {
                                                 ////$obj_aluno = new clsPmieducarAluno($matricula['ref_cod_aluno']);
                                                 //$det_aluno = $obj_aluno->detalhe();
                                                 //$obj_pessoa = new clsFisica($det_aluno['ref_idpes']);
                                                 //$det_pessoa = $obj_pessoa->detalhe();
                                                 if (strtoupper($matricula['sexo']) == 'M') {
                                                     $total_nao_enturmados_turma_masculino++;
                                                 } else {
                                                     $total_nao_enturmados_turma_feminino++;
                                                 }
                                             }
                                         }
                                     }
                                     if ($this->page_y + $altura_caixa >= 800) {
                                         $this->page_y = 80;
                                         $this->pdf->ClosePage();
                                         $this->pdf->OpenPage();
                                         $page_open = true;
                                         $this->addCabecalho();
                                         $this->addCabecalho2();
                                     }
                                     $this->page_y += $altura_caixa;
                                 }
                                 if ($key_serie < count($lst_serie_curso)) {
                                     $mult = count($lst_turmas);
                                     $centraliza = $altura_caixa * ($mult + 1) / 2;
                                     $this->pdf->quadrado_relativo(460, $this->page_y - $altura_caixa * $mult, 105, $altura_caixa * $mult);
                                     $this->pdf->linha_relativa(498, $this->page_y - $altura_caixa * $mult, 0, $altura_caixa * $mult, '0.1');
                                     //nao enturmados
                                     $total_geral_escola_nao_enturmado_feminino += $tot_fem = $total_nao_enturmados_turma_feminino;
                                     $total_geral_escola_nao_enturmado_masculino += $tot_masc = $total_nao_enturmados_turma_masculino;
                                     /**********************************INVERTIDO********************************************/
                                     /*$this->pdf->escreve_relativo( $tot_fem , 463, $this->page_y + 5 - $centraliza , 35, $altura_caixa, $fonte, 8, $corTexto, 'center' );
                                     		$this->pdf->escreve_relativo( $tot_masc, 500, $this->page_y + 5 - $centraliza, 35, $altura_caixa, $fonte, 8, $corTexto, 'center' );*/
                                     $this->pdf->escreve_relativo($tot_masc, 463, $this->page_y + 5 - $centraliza, 35, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     $this->pdf->escreve_relativo($tot_fem, 500, $this->page_y + 5 - $centraliza, 35, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     /***************************************************************************************/
                                     $this->pdf->linha_relativa(538, $this->page_y - $altura_caixa * $mult, 0, $altura_caixa * $mult, '0.1');
                                     $this->pdf->escreve_relativo($tot_fem + $tot_masc, 530, $this->page_y + 5 - $centraliza, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                 }
                             }
                         }
                     }
                 }
             }
             if ($page_open) {
                 //total geral
                 $this->pdf->quadrado_relativo(320, $this->page_y, 40, $altura_caixa);
                 $this->pdf->escreve_relativo("TOTAL", 327, $this->page_y + 5, 258, $altura_caixa, $fonte, 9, $corTexto, 'left');
                 $this->pdf->quadrado_relativo(360, $this->page_y, 205, $altura_caixa);
                 /***************************************INVERTIDO******************************************/
                 //enturmados
                 /*$this->pdf->escreve_relativo( "{$total_geral_escola_enturmado_feminino}", 355, $this->page_y + 5 , 40, $altura_caixa, $fonte, 8, $corTexto, 'center' );
                 		$this->pdf->escreve_relativo( "{$total_geral_escola_enturmado_masculino}", 385, $this->page_y + 5 , 40, $altura_caixa, $fonte, 8, $corTexto, 'center' );*/
                 $this->pdf->escreve_relativo("{$total_geral_escola_enturmado_masculino}", 355, $this->page_y + 5, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                 $this->pdf->escreve_relativo("{$total_geral_escola_enturmado_feminino}", 385, $this->page_y + 5, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                 /******************************************************************************************/
                 $this->pdf->escreve_relativo($total_geral_escola_enturmado_feminino + $total_geral_escola_enturmado_masculino, 425, $this->page_y + 5, 30, $altura_caixa, $fonte, 8, $corTexto, 'center');
                 $this->pdf->linha_relativa(460, $this->page_y, 0, $altura_caixa, '0.1');
                 $this->pdf->linha_relativa(390, $this->page_y, 0, $altura_caixa, '0.1');
                 $this->pdf->linha_relativa(420, $this->page_y, 0, $altura_caixa, '0.1');
                 $this->pdf->linha_relativa(498, $this->page_y, 0, $altura_caixa, '0.1');
                 /***************************************INVERTIDO******************************************/
                 //nao enturmados
                 /*$this->pdf->escreve_relativo( "$total_geral_escola_nao_enturmado_feminino", 463, $this->page_y + 5 , 35, $altura_caixa, $fonte, 8, $corTexto, 'center' );
                 		$this->pdf->escreve_relativo( "$total_geral_escola_nao_enturmado_masculino", 500, $this->page_y + 5, 35, $altura_caixa, $fonte, 8, $corTexto, 'center' );*/
                 $this->pdf->escreve_relativo("{$total_geral_escola_nao_enturmado_masculino}", 463, $this->page_y + 5, 35, $altura_caixa, $fonte, 8, $corTexto, 'center');
                 $this->pdf->escreve_relativo("{$total_geral_escola_nao_enturmado_feminino}", 500, $this->page_y + 5, 35, $altura_caixa, $fonte, 8, $corTexto, 'center');
                 /******************************************************************************************/
                 $this->pdf->linha_relativa(538, $this->page_y, 0, $altura_caixa, '0.1');
                 $this->pdf->escreve_relativo($total_geral_escola_nao_enturmado_masculino + $total_geral_escola_nao_enturmado_feminino, 530, $this->page_y + 5, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                 if ($page_open && $existe_matriculas) {
                     $this->pdf->ClosePage();
                     $page_open = false;
                 }
             }
         }
         $this->pdf->CloseFile();
         $this->get_link = $this->pdf->GetLink();
         echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>";
         echo "<html><center>Se o download não iniciar automaticamente <br /><a target='_blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n\t\t\t\t<span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\n\t\t\t\tClique na Imagem para Baixar o instalador<br><br>\n\t\t\t\t<a href=\"http://www.adobe.com.br/products/acrobat/readstep2.html\" target=\"new\"><br><img src=\"imagens/acrobat.gif\" width=\"88\" height=\"31\" border=\"0\"></a>\n\t\t\t\t</span>\n\t\t\t\t</center>";
     } else {
         echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');}</script>";
         echo "<script>\n\t\t\t\t\t\t\talert('Nenhuma informação a ser apresentada');\n\t\t\t\t\t\t\twindow.parent.fechaExpansivel('div_dinamico_'+(window.parent.DOM_divs.length-1));\n\t\t\t\t\t  </script>";
     }
 }
 function finalizarAnoLetivo()
 {
     /**
      * VERIFICA se n�o existem matriculas em andamento
      */
     $obj_matriculas = new clsPmieducarMatricula();
     $existe_matricula_andamento_com_curso = $obj_matriculas->lista(null, null, $this->ref_cod_escola, null, null, null, null, 3, null, null, null, null, 1, $this->ano, null, null, 1, null, null, null, null, null, null, null, null, false);
     if ($existe_matricula_andamento_com_curso) {
         echo "<script>\n\t\t\t\t\talert('Não foi possível finalizar o ano letivo existem matrículas em andamento!');\n\t\t\t\t\twindow.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}';\n\t\t\t\t  </script>";
     }
     $obj_matriculas = new clsPmieducarMatricula(null, null, $this->ref_cod_escola, null, $this->pessoa_logada, null, null, null, null, null, 1, $this->ano);
     $existe_matricula_andamento = $obj_matriculas->lista(null, null, $this->ref_cod_escola, null, null, null, null, 3, null, null, null, null, 1, $this->ano, null, null, 1, null, null, null, null, null, null, null, null, true);
     if ($existe_matricula_andamento) {
         $editou = $obj_matriculas->aprova_matricula_andamento_curso_sem_avaliacao();
         if (!editou) {
             echo "<script>\n\t\t\t\t\t\talert('Não foi possível finalizar o ano letivo.\\nErro ao editar matriculas de curso sem avaliação!');\n\t\t\t\t\t\twindow.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}';\n\t\t\t\t\t  </script>";
         }
     }
     /**
      *  FINALIZA ano letivo
      */
     $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo($this->ref_cod_escola, $this->ano, $this->pessoa_logada, $this->pessoa_logada, 2, null, null, 1);
     if (!$obj_ano_letivo->edita()) {
         echo "<script>\n\t\t\t\t\talert('Erro ao finalizar o ano letivo!');\n\t\t\t\t\twindow.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}#ano_letivo';\n\t\t\t\t  </script>";
     } else {
         echo "<script>\n\t\t\t\t\talert('Ano letivo finalizado com sucesso!');\n\t\t\t\t\twindow.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}#ano_letivo';\n\t\t\t\t  </script>";
     }
 }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = 'Listagem - Selecione a turma para realizar a transferência';
     $this->ref_cod_matricula = $_GET['ref_cod_matricula'];
     if (!$this->ref_cod_matricula) {
         header('Location: educar_matricula_lst.php');
         die;
     }
     $obj_matricula = new clsPmieducarMatricula($this->ref_cod_matricula);
     $det_matricula = $obj_matricula->detalhe();
     $this->ref_cod_curso = $det_matricula['ref_cod_curso'];
     $this->ref_cod_serie = $det_matricula['ref_ref_cod_serie'];
     $this->ref_cod_escola = $det_matricula['ref_ref_cod_escola'];
     $this->ref_cod_turma = $_GET['ref_cod_turma'];
     $this->addBanner('imagens/nvp_top_intranet.jpg', 'imagens/nvp_vert_intranet.jpg', 'Intranet');
     $this->addCabecalhos(array('Turma'));
     // Busca dados da matricula
     $obj_ref_cod_matricula = new clsPmieducarMatricula();
     $detalhe_aluno = array_shift($obj_ref_cod_matricula->lista($this->ref_cod_matricula));
     $obj_aluno = new clsPmieducarAluno();
     $det_aluno = array_shift($obj_aluno->lista($detalhe_aluno['ref_cod_aluno'], NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1));
     $obj_escola = new clsPmieducarEscola($this->ref_cod_escola, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
     $det_escola = $obj_escola->detalhe();
     if ($det_escola['nome']) {
         $this->campoRotulo('nm_escola', 'Escola', $det_escola['nome']);
     }
     $this->campoRotulo('nm_pessoa', 'Nome do Aluno', $det_aluno['nome_aluno']);
     // Filtros de foreign keys
     $opcoes = array('' => 'Selecione');
     // Opções de turma
     $objTemp = new clsPmieducarTurma();
     $lista = $objTemp->lista(NULL, NULL, NULL, $this->ref_cod_serie, $this->ref_cod_escola, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, $this->ref_cod_curso);
     if (is_array($lista) && count($lista)) {
         foreach ($lista as $registro) {
             $opcoes[$registro['cod_turma']] = $registro['nm_turma'];
         }
     }
     $this->campoLista('ref_cod_turma_', 'Turma', $opcoes, $this->ref_cod_turma);
     // outros filtros
     $this->campoOculto('ref_cod_matricula', $this->ref_cod_matricula);
     $this->campoOculto('ref_cod_serie', '');
     $this->campoOculto('ref_cod_turma', '');
     $this->campoOculto('ref_cod_escola', '');
     // Paginador
     $this->limite = 20;
     $this->offset = $_GET['pagina_' . $this->nome] ? $_GET['pagina_' . $this->nome] * $this->limite - $this->limite : 0;
     $obj_matricula_turma = new clsPmieducarTurma();
     $obj_matricula_turma->setOrderby('data_cadastro ASC');
     $obj_matricula_turma->setLimite($this->limite, $this->offset);
     $lista = $obj_matricula_turma->lista($this->ref_cod_turma, NULL, NULL, $this->ref_cod_serie, $this->ref_cod_escola, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, $this->ref_cod_curso, NULL, NULL, NULL, NULL, NULL, NULL, TRUE);
     if (is_numeric($this->ref_cod_serie) && is_numeric($this->ref_cod_curso) && is_numeric($this->ref_cod_escola)) {
         $sql = "\nSELECT\n  t.cod_turma, t.ref_usuario_exc, t.ref_usuario_cad, t.ref_ref_cod_serie,\n  t.ref_ref_cod_escola, t.ref_cod_infra_predio_comodo, t.nm_turma, t.sgl_turma,\n  t.max_aluno, t.multiseriada, t.data_cadastro, t.data_exclusao, t.ativo,\n  t.ref_cod_turma_tipo, t.hora_inicial, t.hora_final, t.hora_inicio_intervalo,\n  t.hora_fim_intervalo, t.ref_cod_regente, t.ref_cod_instituicao_regente,\n  t.ref_cod_instituicao, t.ref_cod_curso, t.ref_ref_cod_serie_mult,\n  t.ref_ref_cod_escola_mult\nFROM\n  pmieducar.turma t\nWHERE\n  t.ref_ref_cod_serie_mult = {$this->ref_cod_serie}\n  AND t.ref_ref_cod_escola={$this->ref_cod_escola}\n  AND t.ativo = '1'\n  AND t.ref_ref_cod_escola = '{$this->ref_cod_escola}'";
         $db = new clsBanco();
         $db->Consulta($sql);
         $lista_aux = array();
         while ($db->ProximoRegistro()) {
             $lista_aux[] = $db->Tupla();
         }
         if (is_array($lista_aux) && count($lista_aux)) {
             if (is_array($lista) && count($lista)) {
                 $lista = array_merge($lista, $lista_aux);
             } else {
                 $lista = $lista_aux;
             }
         }
         $total = count($lista);
     } else {
         $total = $obj_matricula_turma->_total;
     }
     $tmp_obj = new clsPmieducarMatriculaTurma();
     $det_obj = $tmp_obj->lista($this->ref_cod_matricula, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
     if ($det_obj) {
         $det_obj = array_shift($det_obj);
     }
     // Monta a lista
     if (is_array($lista) && count($lista)) {
         foreach ($lista as $registro) {
             if ($registro['cod_turma'] != $det_obj['ref_cod_turma']) {
                 $script = sprintf('onclick="enturmar(\'%s\',\'%s\',\'%s\',\'%s\');"', $this->ref_cod_escola, $registro['ref_ref_cod_serie'], $this->ref_cod_matricula, $registro['cod_turma']);
                 $this->addLinhas(array(sprintf('<a href="#" %s>%s</a>', $script, $registro['nm_turma'])));
             }
         }
     }
     $this->addPaginador2("educar_matricula_turma_lst.php", $total, $_GET, $this->nome, $this->limite);
     $obj_permissoes = new clsPermissoes();
     $this->array_botao[] = 'Voltar';
     $this->array_botao_url[] = "educar_matricula_det.php?cod_matricula={$this->ref_cod_matricula}";
     $this->largura = '100%';
 }
 function Gerar()
 {
     if ($_POST) {
         foreach ($_POST as $campo => $val) {
             $this->{$campo} = $this->{$campo} ? $this->{$campo} : $val;
         }
     }
     $this->campoOculto('ref_cod_turma', $this->ref_cod_turma);
     $this->campoOculto('ref_ref_cod_escola', $this->ref_ref_cod_escola);
     $this->campoOculto('ref_ref_cod_serie', $this->ref_ref_cod_serie);
     $this->campoOculto('ref_cod_curso', $this->ref_cod_curso);
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if ($nivel_usuario == 1) {
         $obj_cod_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao);
         $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe();
         $nm_instituicao = $obj_cod_instituicao_det['nm_instituicao'];
         $this->campoRotulo('nm_instituicao', 'Institui&ccedil;&atilde;o', $nm_instituicao);
     }
     if ($nivel_usuario == 1 || $nivel_usuario == 2) {
         if ($this->ref_ref_cod_escola) {
             $obj_ref_cod_escola = new clsPmieducarEscola($this->ref_ref_cod_escola);
             $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
             $nm_escola = $det_ref_cod_escola['nome'];
             $this->campoRotulo('nm_escola', 'Escola', $nm_escola);
         }
     }
     if ($this->ref_cod_curso) {
         $obj_ref_cod_curso = new clsPmieducarCurso($this->ref_cod_curso);
         $det_ref_cod_curso = $obj_ref_cod_curso->detalhe();
         $nm_curso = $det_ref_cod_curso['nm_curso'];
         $this->campoRotulo('nm_curso', 'Curso', $nm_curso);
     }
     if ($this->ref_ref_cod_serie) {
         $obj_ref_cod_serie = new clsPmieducarSerie($this->ref_ref_cod_serie);
         $det_ref_cod_serie = $obj_ref_cod_serie->detalhe();
         $nm_serie = $det_ref_cod_serie["nm_serie"];
         $this->campoRotulo('nm_serie', 'S&eacute;rie', $nm_serie);
         // busca o ano em q a escola esta em andamento
         $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo();
         $lst_ano_letivo = $obj_ano_letivo->lista($this->ref_ref_cod_escola, NULL, NULL, NULL, 1, NULL, NULL, NULL, NULL, 1);
         if (is_array($lst_ano_letivo)) {
             $det_ano_letivo = array_shift($lst_ano_letivo);
             $ano_letivo = $det_ano_letivo['ano'];
         } else {
             $this->mensagem = 'Não foi possível encontrar o ano letivo em andamento da escola.';
             return FALSE;
         }
     }
     if ($this->ref_cod_turma) {
         $obj_turma = new clsPmieducarTurma($this->ref_cod_turma);
         $det_turma = $obj_turma->detalhe();
         $nm_turma = $det_turma['nm_turma'];
         $this->campoRotulo('nm_turma', 'Turma', $nm_turma);
     }
     // Inlui o aluno
     $this->campoQuebra();
     if ($_POST['matriculas_turma']) {
         $this->matriculas_turma = unserialize(urldecode($_POST['matriculas_turma']));
     }
     if (is_numeric($this->ref_cod_turma) && !$_POST) {
         $obj_matriculas_turma = new clsPmieducarMatriculaTurma();
         $obj_matriculas_turma->setOrderby('nome_aluno');
         $lst_matriculas_turma = $obj_matriculas_turma->lista(NULL, $this->ref_cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, NULL, NULL, NULL, array(1, 2, 3), NULL, NULL, $ano_letivo, NULL, TRUE, NULL, 1, TRUE);
         if (is_array($lst_matriculas_turma)) {
             foreach ($lst_matriculas_turma as $key => $campo) {
                 $this->matriculas_turma[$campo['ref_cod_matricula']]['sequencial_'] = $campo['sequencial'];
             }
         }
     }
     if ($_POST['ref_cod_matricula']) {
         $obj_matriculas_turma = new clsPmieducarMatriculaTurma($_POST['ref_cod_matricula'], $this->ref_cod_turma);
         $sequencial = $obj_matriculas_turma->buscaSequencialMax();
         $this->matriculas_turma[$_POST['ref_cod_matricula']]['sequencial_'] = $sequencial;
         unset($this->ref_cod_matricula);
     }
     if ($this->matriculas_turma) {
         foreach ($this->matriculas_turma as $matricula => $campo) {
             $obj_matricula = new clsPmieducarMatricula($matricula);
             $det_matricula = $obj_matricula->detalhe();
             $obj_aluno = new clsPmieducarAluno();
             $lst_aluno = $obj_aluno->lista($det_matricula['ref_cod_aluno']);
             $det_aluno = array_shift($lst_aluno);
             $nm_aluno = $det_aluno['nome_aluno'];
             $this->campoTextoInv('ref_cod_matricula_' . $matricula, '', $nm_aluno, 30, 255, FALSE, FALSE, FALSE, '', '', '', '', 'ref_cod_matricula');
         }
     }
     $this->campoOculto('matriculas_turma', serialize($this->matriculas_turma));
     // Aluno
     $opcoes = array();
     $obj_matriculas_turma = new clsPmieducarMatriculaTurma();
     $alunos = $obj_matriculas_turma->alunosNaoEnturmados($this->ref_ref_cod_escola, $this->ref_ref_cod_serie, $this->ref_cod_curso, $ano_letivo);
     if (is_array($alunos)) {
         for ($i = 0; $i < count($alunos); $i++) {
             $obj_matricula = new clsPmieducarMatricula($alunos[$i]);
             $det_matricula = $obj_matricula->detalhe();
             $obj_aluno = new clsPmieducarAluno();
             $lst_aluno = $obj_aluno->lista($det_matricula['ref_cod_aluno']);
             $det_aluno = array_shift($lst_aluno);
             $opcoes[$alunos[$i]] = $det_aluno['nome_aluno'];
         }
     }
     if (count($opcoes)) {
         asort($opcoes);
         foreach ($opcoes as $key => $aluno) {
             $this->campoCheck('ref_cod_matricula[' . $key . ']', 'Aluno', $key, $aluno, NULL, NULL, NULL);
         }
     } else {
         $this->campoRotulo('rotulo_1', '-', 'Todos os alunos matriculados na série já se encontram enturmados.');
     }
     $this->campoQuebra();
 }
 if ($_GET['idpes']) {
     $ref_idpes = $_GET['idpes'];
 } else {
     $cpf = idFederal2int($_GET['cpf']);
     $obj_pessoa_fisica = new clsPessoaFisica(NULL, $cpf);
     $lst_pessoa_fisica = $obj_pessoa_fisica->lista(NULL, $cpf);
     if (!$lst_pessoa_fisica) {
         echo $xml . '</dados></query>';
         die;
     }
     $ref_idpes = $lst_pessoa_fisica[0]['idpes'];
     $xml .= sprintf('<ref_idpes>%d</ref_idpes>', $ref_idpes) . PHP_EOL;
     $xml .= sprintf('<cpf>%s</cpf>', $cpf) . PHP_EOL;
 }
 if ($cod_aluno) {
     $obj_matricula = new clsPmieducarMatricula();
     $lst_matricula = $obj_matricula->lista(NULL, NULL, NULL, NULL, NULL, NULL, $cod_aluno);
 }
 if (!empty($ref_idpes)) {
     $obj_aluno = new clsPmieducarAluno();
     $lista_aluno = $obj_aluno->lista(NULL, NULL, NULL, NULL, NULL, $ref_idpes, NULL, NULL, NULL, NULL);
     if ($lista_aluno) {
         $det_aluno = array_shift($lista_aluno);
     }
 }
 if ($det_aluno['cod_aluno']) {
     $cod_aluno = $det_aluno['cod_aluno'];
     $ref_cod_aluno_beneficio = $det_aluno['ref_cod_aluno_beneficio'];
     $ref_cod_religiao = $det_aluno['ref_cod_religiao'];
     $caminho_foto = $det_aluno['caminho_foto'];
 }
Example #29
0
 function listaAnos()
 {
     if (!$this->cod_escola) {
         return false;
     }
     $existe = false;
     $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo();
     $obj_ano_letivo->setOrderby("ano");
     $lista_ano_letivo = $obj_ano_letivo->lista($this->cod_escola, null, null, null, null, null, null, null, null, 1);
     $tabela = "<table border=0 cellpadding=2 width='100%'>";
     if ($lista_ano_letivo) {
         //echo'<pre>';
         //print_r($lista_ano_letivo);
         $existe = true;
         $tabela .= "<tr bgcolor={$cor}><td colspan='2'><b>Anos letivos</b></td></tr><tr><td>";
         $tabela .= "<table cellpadding=\"2\" cellspacing=\"2\" border=\"0\" align=\"left\" width='60%'>";
         $tabela .= "<tr bgcolor='#A1B3BD'><th width='90'>Ano<a name='ano_letivo'/></th><th width='70'>Iniciar</th><th width='70'>Finalizar</th><th width='150'>Editar</th></tr>";
         $cor = $cor == "#FFFFFF" ? "#E4E9ED" : "#FFFFFF";
         $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo();
         $existe_ano_andamento = $obj_ano_letivo->lista($this->cod_escola, null, null, null, 1, null, null, null, null, 1);
         foreach ($lista_ano_letivo as $ano) {
             $incluir = $excluir = "";
             //se nao existe ano em andamento permite inicializar um ano letivo
             if (!$existe_ano_andamento && $ano['andamento'] != 2) {
                 $incluir = "<td><a href='#' onclick=\"preencheForm('{$ano['ano']}','{$ano['ref_cod_escola']}','iniciar');\"><img src=\"imagens/i-educar/nvp_bot_iniciar_ano.gif\" border=0 style='padding-left:10px;'></a></td>";
             } else {
                 $incluir = "<td width='130'>&nbsp;</td>";
             }
             //verifica se o ano nao possui matricula em andamento para permitir finalizar o ano
             $obj_matricula_ano = new clsPmieducarMatricula();
             $matricula_em_andamento = $obj_matricula_ano->lista(null, null, $this->cod_escola, null, null, null, null, 3, null, null, null, null, 1, $ano['ano'], null, null, 1, null, 1, null, null, null, null, null, null, false);
             if (!$matricula_em_andamento && $existe_ano_andamento && $ano['andamento'] == 1) {
                 $excluir = "<td><a href='#' onclick=\"preencheForm('{$ano['ano']}','{$ano['ref_cod_escola']}','finalizar');\" ><img src=\"imagens/i-educar/nvp_bot_finalizar_ano.gif\" border=0 style='padding-left:10px;'></a></td>";
             } else {
                 $excluir = "<td width='130'>&nbsp;</td>";
             }
             $editar = "";
             //"<td align='center'> - </td>";
             if ($ano['andamento'] == 2) {
                 $incluir = "<td colspan='3' align='center'><span class='formlttd'><b>--- Ano Finalizado ---</b></span></td>";
             } else {
                 $editar = "<td><a href='#' onclick=\"preencheForm('{$ano['ano']}','{$ano['ref_cod_escola']}','editar');\" ><img src=\"imagens/i-educar/nvp_bot_editar_ano.gif\" alt=\"Editar Ano Letivo\" border=0 style='padding-left:10px;'></a></td>";
             }
             $tabela .= "<tr bgcolor='{$cor}'><td style='padding-left:20px'><img src=\"imagens/noticia.jpg\" border='0'> {$ano['ano']}</td>{$incluir}{$excluir}{$editar}</tr>";
         }
         $tabela .= "</table></td></tr>";
         $tabela .= "<tr>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<span class='formlttd'><b>*Somente &eacute; poss&iacute;vel finalizar um ano letivo ap&oacute;s n&atilde;o existir mais nenhuma matr&iacute;cula em andamento.</b></span>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>";
         $tabela .= "<tr>\n\t\t\t\t\t\t\t<td>\n\t\t\t\t\t\t\t\t<form name='acao_ano_letivo' action='educar_iniciar_ano_letivo.php' method='post'>\n\t\t\t\t\t\t\t\t\t<input type='hidden' name='ano' id='ano'>\n\t\t\t\t\t\t\t\t\t<input type='hidden' name='ref_cod_escola' id='ref_cod_escola'>\n\t\t\t\t\t\t\t\t\t<input type='hidden' name='tipo_acao' id='tipo_acao'>\n\t\t\t\t\t\t\t\t</form>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>";
     }
     $tabela .= "</table>";
     return $existe == true ? $tabela : false;
 }
 function Gerar()
 {
     /**
      * Busca nome do aluno
      */
     if (class_exists("clsPmieducarMatricula")) {
         $obj_ref_cod_matricula = new clsPmieducarMatricula();
         $detalhe_aluno = $obj_ref_cod_matricula->lista($this->ref_cod_matricula);
         if ($detalhe_aluno) {
             $detalhe_aluno = array_shift($detalhe_aluno);
         }
     } else {
         $registro["ref_cod_matricula"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarMatricula\n-->";
     }
     $obj_aluno = new clsPmieducarAluno();
     $det_aluno = array_shift($det_aluno = $obj_aluno->lista($detalhe_aluno['ref_cod_aluno'], null, null, null, null, null, null, null, null, null, 1));
     $this->campoRotulo("nm_pessoa", "Nome do Aluno", $det_aluno['nome_aluno']);
     /**
      *
      */
     // primary keys
     $this->campoOculto("ref_cod_matricula", $this->ref_cod_matricula);
     $this->campoOculto("ref_cod_tipo_ocorrencia_disciplinar", $this->ref_cod_tipo_ocorrencia_disciplinar);
     $this->campoOculto("sequencial", $this->sequencial);
     $this->campoData("data_cadastro", "Data Atual", $this->data_cadastro, true);
     $this->campoHora("hora_cadastro", "Horas", $this->hora_cadastro, true);
     // foreign keys
     /*	$opcoes = array( "" => "Selecione" );
     		if( class_exists( "clsPmieducarMatricula" ) )
     		{
     			$objTemp = new clsPmieducarMatricula();
     			$lista = $objTemp->lista();
     			if ( is_array( $lista ) && count( $lista ) )
     			{
     				foreach ( $lista as $registro )
     				{
     					$opcoes["{$registro['cod_matricula']}"] = "{$registro['ref_ref_cod_escola']}";
     				}
     			}
     		}
     		else
     		{
     			echo "<!--\nErro\nClasse clsPmieducarMatricula nao encontrada\n-->";
     			$opcoes = array( "" => "Erro na geracao" );
     		}
     		$this->campoLista( "ref_cod_matricula", "Matricula", $opcoes, $this->ref_cod_matricula );
     		*/
     //$opcoes = array('' => 'Selecione um aluno clicando na lupa');
     //$this->campoListaPesq("nm_aluno", "Aluno", $opcoes,$this->ref_cod_matricula,"educar_pesquisa_matricula_lst.php","",false,"","",null,"","",true);
     //$this->campoOculto("ref_cod_aluno", $this->ref_cod_aluno);
     $opcoes = array("" => "Selecione");
     if (class_exists("clsPmieducarTipoOcorrenciaDisciplinar")) {
         $objTemp = new clsPmieducarTipoOcorrenciaDisciplinar();
         $lista = $objTemp->lista(null, null, null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao);
         if (is_array($lista) && count($lista)) {
             foreach ($lista as $registro) {
                 $opcoes["{$registro['cod_tipo_ocorrencia_disciplinar']}"] = "{$registro['nm_tipo']}";
             }
         }
     } else {
         echo "<!--\nErro\nClasse clsPmieducarTipoOcorrenciaDisciplinar nao encontrada\n-->";
         $opcoes = array("" => "Erro na geracao");
     }
     $this->campoLista("ref_cod_tipo_ocorrencia_disciplinar", "Tipo Ocorrencia Disciplinar", $opcoes, $this->ref_cod_tipo_ocorrencia_disciplinar);
     // text
     $this->campoMemo("observacao", "Observac&atilde;o", $this->observacao, 60, 10, true);
     $this->campoCheck("visivel_pais", "Visível aos pais", $this->visivel_pais, "Marque este campo, caso deseje que os pais do aluno possam visualizar tal ocorrência disciplinar.");
     // data
 }