예제 #1
0
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Matrícula - Detalhe";
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->ref_cod_matricula = $_GET["cod_matricula"];
     $obj_matricula = new clsPmieducarMatricula();
     $lst_matricula = $obj_matricula->lista($this->ref_cod_matricula);
     if ($lst_matricula) {
         $registro = array_shift($lst_matricula);
     }
     if (!$registro) {
         header("Location: educar_matricula_lst.php?ref_cod_aluno=" . $registro['ref_cod_aluno']);
         die;
     }
     // 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'];
     // Série
     $obj_serie = new clsPmieducarSerie($registro['ref_ref_cod_serie']);
     $det_serie = $obj_serie->detalhe();
     $registro['ref_ref_cod_serie'] = $det_serie['nm_serie'];
     // Nome 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 aluno
     $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);
         $nm_aluno = $det_aluno['nome_aluno'];
     }
     // Nome da turma
     $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();
         $nm_turma = $det_turma['nm_turma'];
     }
     if ($registro['cod_matricula']) {
         $this->addDetalhe(array('Número Matrícula', $registro['cod_matricula']));
     }
     if ($nm_aluno) {
         $this->addDetalhe(array('Aluno', $nm_aluno));
     }
     if ($registro['ref_cod_instituicao']) {
         $this->addDetalhe(array('Instituição', $registro['ref_cod_instituicao']));
     }
     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érie', $registro['ref_ref_cod_serie']));
     }
     if ($nm_turma) {
         $this->addDetalhe(array('Turma', $nm_turma));
     }
     if ($registro['ref_cod_reserva_vaga']) {
         $this->addDetalhe(array('Número Reserva Vaga', $registro['ref_cod_reserva_vaga']));
     }
     if ($registro['aprovado']) {
         if ($registro['aprovado'] == 1) {
             $aprovado = 'Aprovado';
         } elseif ($registro['aprovado'] == 2) {
             $aprovado = 'Reprovado';
         } elseif ($registro['aprovado'] == 3) {
             $aprovado = 'Em Andamento';
         } elseif ($registro['aprovado'] == 4) {
             $aprovado = 'Transferido';
         } elseif ($registro['aprovado'] == 5) {
             $aprovado = 'Reclassificado';
         } elseif ($registro['aprovado'] == 6) {
             $aprovado = 'Abandono';
         } elseif ($registro['aprovado'] == 7) {
             $aprovado = 'Em Exame';
         }
         $this->addDetalhe(array('Situação', $aprovado));
     }
     $this->addDetalhe(array('Formando', $registro['formando'] == 0 ? 'Não' : 'Sim'));
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7)) {
         // verifica se existe transferencia
         if ($registro['aprovado'] != 4 && $registro['aprovado'] != 6) {
             $obj_transferencia = new clsPmieducarTransferenciaSolicitacao();
             $lst_transferencia = $obj_transferencia->lista(NULL, NULL, NULL, NULL, NULL, $registro['cod_matricula'], NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, $registro['ref_cod_aluno'], FALSE);
             // verifica se existe uma solicitacao de transferencia INTERNA
             if (is_array($lst_transferencia)) {
                 $det_transferencia = array_shift($lst_transferencia);
             }
             $data_transferencia = $det_transferencia['data_transferencia'];
         }
         if ($registro['aprovado'] == 3 && (!is_array($lst_transferencia) && !isset($data_transferencia))) {
             $this->array_botao[] = 'Cancelar Matrícula';
             $this->array_botao_url_script[] = "if(confirm(\"Deseja realmente cancelar esta matrícula?\"))go(\"educar_matricula_cad.php?cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}\")";
             $this->array_botao[] = 'Ocorrências Disciplinares';
             $this->array_botao_url_script[] = "go(\"educar_matricula_ocorrencia_disciplinar_lst.php?ref_cod_matricula={$registro['cod_matricula']}\")";
             // Apenas libera a dispensa de disciplina quando o aluno estiver enturmado
             if ($registro['ref_ref_cod_serie'] && isset($nm_turma)) {
                 $this->array_botao[] = 'Dispensa de Componentes Curriculares';
                 $this->array_botao_url_script[] = "go(\"educar_dispensa_disciplina_lst.php?ref_cod_matricula={$registro['cod_matricula']}\")";
             }
             $this->array_botao[] = 'Enturmar';
             $this->array_botao_url_script[] = "go(\"educar_matricula_turma_lst.php?ref_cod_matricula={$registro['cod_matricula']}\")";
             $this->array_botao[] = 'Abandono';
             $this->array_botao_url_script[] = "if(confirm(\"Deseja confirmar o abandono desta matrícula?\"))go(\"educar_matricula_abandono_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}\");";
             if ($registro['ref_ref_cod_serie']) {
                 $this->array_botao[] = 'Reclassificar';
                 $this->array_botao_url_script[] = "go(\"educar_matricula_reclassificar_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}\")";
             }
         }
         if ($registro['aprovado'] != 4 && $registro['aprovado'] != 6) {
             if (is_array($lst_transferencia) && !isset($data_transferencia)) {
                 $this->array_botao[] = 'Cancelar Solicitação Transferência';
                 $this->array_botao_url_script[] = "go(\"educar_transferencia_solicitacao_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}&cancela=true\")";
             } else {
                 if ($registro['ref_ref_cod_serie']) {
                     $this->array_botao[] = 'Solicitar Transferência';
                     $this->array_botao_url_script[] = "go(\"educar_transferencia_solicitacao_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}\")";
                 }
             }
             if ($registro['aprovado'] == 3 && (!is_array($lst_transferencia) && !isset($data_transferencia))) {
                 if ($registro['formando'] == 0) {
                     $this->array_botao[] = 'Formando';
                     $this->array_botao_url_script[] = "if(confirm(\"Deseja marcar a matrícula como formando?\"))go(\"educar_matricula_formando_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}&formando=1\")";
                 } else {
                     $this->array_botao[] = "Desmarcar como Formando";
                     $this->array_botao_url_script[] = "if(confirm(\"Deseja desmarcar a matrícula como formando?\"))go(\"educar_matricula_formando_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}&formando=0\")";
                 }
             }
         }
         if ($registro['aprovado'] == 4 || $det_transferencia) {
             $this->array_botao[] = 'Imprimir Atestado Frequência';
             $this->array_botao_url_script[] = "showExpansivelImprimir(400, 200,  \"educar_relatorio_atestado_frequencia.php?cod_matricula={$registro['cod_matricula']}\",[], \"Relatório Atestado de Freqüência\")";
         }
     }
     $this->url_cancelar = 'educar_matricula_lst.php?ref_cod_aluno=' . $registro['ref_cod_aluno'];
     $this->largura = '100%';
 }
    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 Excluir()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_excluir(578, $this->pessoa_logada, 7, 'educar_aluno_det.php?cod_aluno=' . $this->ref_cod_aluno);
     if (!$this->desativaEnturmacoesMatricula($this->cod_matricula)) {
         return false;
     }
     $obj_matricula = new clsPmieducarMatricula($this->cod_matricula);
     $det_matricula = $obj_matricula->detalhe();
     $ref_cod_serie = $det_matricula['ref_ref_cod_serie'];
     $obj_sequencia = new clsPmieducarSequenciaSerie();
     $lst_sequencia = $obj_sequencia->lista(NULL, $ref_cod_serie, NULL, NULL, NULL, NULL, NULL, NULL, 1);
     // Coloca as matrículas anteriores em andamento
     $obj_transferencia_antiga = new clsPmieducarTransferenciaSolicitacao();
     $lista_transferencia = $obj_transferencia_antiga->lista(null, null, null, null, null, $this->cod_matricula);
     if (is_array($lista_transferencia)) {
         foreach ($lista_transferencia as $transf) {
             $obj_mat = new clsPmieducarMatricula($transf['ref_cod_matricula_saida']);
             $obj_mat = $obj_mat->detalhe();
             if ($obj_mat['aprovado'] == 4) {
                 $obj_mat = new clsPmieducarMatricula($transf['ref_cod_matricula_saida'], null, null, null, $this->pessoa_logada, null, null, 3);
                 $obj_mat->edita();
                 $obj_transf = new clsPmieducarTransferenciaSolicitacao($transf['cod_transferencia_solicitacao']);
                 $obj_transf->desativaEntradaTransferencia();
             }
         }
     }
     // Verifica se a série da matrícula cancelada é sequência de alguma outra série
     if (is_array($lst_sequencia)) {
         $det_sequencia = array_shift($lst_sequencia);
         $ref_serie_origem = $det_sequencia['ref_serie_origem'];
         $obj_matricula = new clsPmieducarMatricula();
         $lst_matricula = $obj_matricula->lista(NULL, NULL, NULL, $ref_serie_origem, NULL, NULL, $this->ref_cod_aluno, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, 0);
         // Verifica se o aluno tem matrícula na série encontrada
         if (is_array($lst_matricula)) {
             $det_matricula = array_shift($lst_matricula);
             $ref_cod_matricula = $det_matricula['cod_matricula'];
             $obj = new clsPmieducarMatricula($ref_cod_matricula, NULL, NULL, NULL, $this->pessoa_logada, NULL, NULL, NULL, NULL, NULL, 1, NULL, 1);
             $editou1 = $obj->edita();
             if (!$editou1) {
                 $this->mensagem = 'Não foi possível editar a "Última Matrícula da Sequência".<br />';
                 return FALSE;
             }
         }
     }
     $obj = new clsPmieducarMatricula($this->cod_matricula, NULL, NULL, NULL, $this->pessoa_logada, NULL, NULL, NULL, NULL, NULL, 0);
     $excluiu = $obj->excluir();
     if ($excluiu) {
         $this->mensagem .= 'Exclusão efetuada com sucesso.<br />';
         header('Location: educar_aluno_det.php?cod_aluno=' . $this->ref_cod_aluno);
         die;
     }
     $this->mensagem = 'Exclusão não realizada.<br />';
     return FALSE;
 }
예제 #4
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 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 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>";
             }
         }
     }
 }
예제 #7
0
     $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'];
 }
 $xml .= sprintf('<cod_aluno>%d</cod_aluno>', $cod_aluno) . PHP_EOL;
예제 #8
0
 function montaTabelaMatricula()
 {
     $sql = sprintf('SELECT
           cod_matricula
         FROM
           pmieducar.matricula
         WHERE
           ref_cod_aluno = %d
           AND ativo = 1
         ORDER BY
           cod_matricula DESC', $this->cod_aluno);
     $db = new clsBanco();
     $db->Consulta($sql);
     if ($db->Num_Linhas()) {
         while ($db->ProximoRegistro()) {
             list($ref_cod_matricula) = $db->Tupla();
             if (is_numeric($ref_cod_matricula)) {
                 $obj_matricula = new clsPmieducarMatricula();
                 $obj_matricula->setOrderby('ano ASC');
                 $lst_matricula = $obj_matricula->lista($ref_cod_matricula);
                 if ($lst_matricula) {
                     $registro = array_shift($lst_matricula);
                 }
                 $table .= sprintf('<table class="tableDetalhe">
            <tr class="formdktd">
              <td colspan="2"><strong>Matrícula - Ano %d</strong></td>
            </tr>', $registro['ano']);
                 $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'];
                 $obj_serie = new clsPmieducarSerie($registro['ref_ref_cod_serie']);
                 $det_serie = $obj_serie->detalhe();
                 $nm_serie = $det_serie['nm_serie'];
                 $obj_cod_instituicao = new clsPmieducarInstituicao($registro['ref_cod_instituicao']);
                 $obj_cod_instituicao_det = $obj_cod_instituicao->detalhe();
                 $nm_instituicao = $obj_cod_instituicao_det['nm_instituicao'];
                 $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'];
                 $obj_mat_turma = new clsPmieducarMatriculaTurma();
                 $det_mat_turma = $obj_mat_turma->lista($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();
                     $nm_turma = $det_turma['nm_turma'];
                 } else {
                     $nm_turma = '';
                 }
                 $transferencias = array();
                 if ($registro['aprovado'] == 1) {
                     $aprovado = 'Aprovado';
                 } elseif ($registro['aprovado'] == 2) {
                     $aprovado = 'Reprovado';
                 } elseif ($registro['aprovado'] == 3) {
                     $aprovado = 'Em Andamento';
                 } elseif ($registro['aprovado'] == 4) {
                     if (is_numeric($registro['cod_matricula'])) {
                         $aprovado = 'Transferido';
                         $sql = sprintf('SELECT
                     ref_cod_matricula_entrada,
                     ref_cod_matricula_saida,
                     to_char(data_transferencia, \'DD/MM/YYYY\') AS dt_transferencia
                   FROM
                     pmieducar.transferencia_solicitacao
                   WHERE
                     (ref_cod_matricula_entrada = %d
                     OR ref_cod_matricula_saida = %d)
                     AND ativo = 1', $registro['cod_matricula'], $registro['cod_matricula']);
                         $db2 = new clsBanco();
                         $db2->Consulta($sql);
                         if ($db2->Num_Linhas()) {
                             while ($db2->ProximoRegistro()) {
                                 list($ref_cod_matricula_entrada, $ref_cod_matricula_saida, $dt_transferencia) = $db2->Tupla();
                                 if ($ref_cod_matricula_saida == $registro['cod_matricula']) {
                                     $transferencias[] = array('data_trans' => $dt_transferencia, 'desc' => 'Data Transferência Saída');
                                 } elseif ($ref_cod_matricula_entrada == $registro['cod_matricula']) {
                                     $transferencias[] = array('data_trans' => $dt_transferencia, 'desc' => 'Data Transferência Admissão');
                                 }
                             }
                         }
                     }
                 } elseif ($registro['aprovado'] == 5) {
                     $aprovado = 'Reclassificado';
                 } elseif ($registro['aprovado'] == 6) {
                     $aprovado = 'Abandono';
                 } elseif ($registro['aprovado'] == 7) {
                     $aprovado = 'Em Exame';
                 }
                 $formando = $registro['formando'] == 0 ? 'Não' : 'Sim';
                 $table .= sprintf('<tr class="formlttd"><td>Número da Matrícula</td><td>%s</td></tr>', $registro['cod_matricula']);
                 $table .= sprintf('<tr class="formmdtd"><td>Instituição</td><td>%s</td></tr>', $nm_instituicao);
                 $table .= sprintf('<tr class="formlttd"><td>Escola</td><td>%s</td></tr>', $nm_escola);
                 $table .= sprintf('<tr class="formmdtd"><td>Série</td><td>%s</td></tr>', $nm_serie);
                 $table .= sprintf('<tr class="formlttd"><td>Turma</td><td>%s</td></tr>', $nm_turma);
                 $table .= sprintf('<tr class="formmdtd"><td>Situação</td><td>%s</td></tr>', $aprovado);
                 $class = 'formmdtd';
                 if (is_array($transferencias)) {
                     asort($transferencias);
                     foreach ($transferencias as $trans) {
                         $table .= sprintf('<tr class="%s"><td>%s</td><td>%s</td></tr>', $class, $trans['desc'], $trans['data_trans']);
                         $class = $class == 'formmdtd' ? 'formlttd' : 'formmdtd';
                     }
                 }
                 if ($registro['aprovado'] < 4) {
                     if (is_numeric($registro["cod_matricula"])) {
                         $sql = sprintf('SELECT
                     to_char(data_transferencia, \'DD/MM/YYYY\')
                   FROM
                     pmieducar.transferencia_solicitacao
                   WHERE
                     ref_cod_matricula_entrada = %d
                     AND ativo = 1', $registro['cod_matricula']);
                         $db2 = new clsBanco();
                         $data_transferencia = $db2->CampoUnico($sql);
                         if ($data_transferencia) {
                             $table .= sprintf('
               <tr class="%s">
                 <td>Data Transferência Admissão</td>
                 <td>%s</td>
               </tr>', $class, $data_transferencia);
                             $class = $class == 'formmdtd' ? 'formlttd' : 'formmdtd';
                         }
                     }
                 }
                 $table .= sprintf('<tr class="%s"><td>Formando</td><td>%s</td></tr>', $class == 'formmdtd' ? 'formlttd' : 'formmdtd', $formando);
                 $table .= '</table>';
             }
         }
     } else {
         return '<strong>O aluno não está matriculado em nenhuma escola</strong>';
     }
     return $table;
 }
    function renderHTML()
    {
        if ($_POST) {
            foreach ($_POST as $key => $value) {
                $this->{$key} = $value;
            }
        }
        if (!$_POST) {
            echo '<script>
	     			alert("Erro ao gerar relatório!\\nNão existem dados!");
	     			window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1));
	     		</script>';
            return true;
        }
        if (empty($this->cursos)) {
            echo '<script>
	     			alert("Erro ao gerar relatório!\\nNenhum curso selecionado!");
	     			window.location = window.location;
	     		</script>';
            return true;
        }
        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'];
        }
        $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) {
            echo '<script>
	     			alert("Escola não possui calendário definido para este ano");
	     			window.location = window.location;
	     		</script>';
            return true;
        }
        //$calendario = array_shift($lista_calendario);
        $obj_cal_ano_letivo = new clsPmieducarCalendarioAnoLetivo();
        $lst_cal_ano_letivo = $obj_cal_ano_letivo->lista(null, $this->ref_cod_escola, null, null, $this->ano, null, null, null, null, 1, null, $this->ref_cod_instituicao);
        $calendario = array_shift($lst_cal_ano_letivo);
        $obj_calendario_dia = new clsPmieducarCalendarioDia();
        $lista_dias = $obj_calendario_dia->lista($calendario['cod_calendario_ano_letivo'], $this->mes, null, null, null, null, null, null, null, 1);
        $dias_mes = array();
        if ($lista_dias) {
            foreach ($lista_dias as $dia) {
                $obj_motivo = new clsPmieducarCalendarioDiaMotivo($dia['ref_cod_calendario_dia_motivo']);
                $det_motivo = $obj_motivo->detalhe();
                $dias_mes[$dia['dia']] = strtolower($det_motivo['tipo']);
            }
        }
        //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'];
        //total de dias uteis + dias extra-letivos - dia nao letivo - fim de semana
        $this->totalDiasUteis = 0;
        $obj_ano_letivo_modulo = new clsPmieducarAnoLetivoModulo();
        $inicio_ano = $obj_ano_letivo_modulo->menorData($this->ano, $this->ref_cod_escola);
        $inicio_ano = explode("-", $inicio_ano);
        for ($dia = 1; $dia <= $NumeroDiasMes; $dia++) {
            if ($DiaSemana >= 7) {
                $DiaSemana = 0;
            }
            if ($this->mes == $inicio_ano[1]) {
                if ($dia >= $inicio_ano[2]) {
                    if ($DiaSemana != 0 && $DiaSemana != 6) {
                        if (!(key_exists($dia, $dias_mes) && $dias_mes[$dia] == strtolower('n'))) {
                            $this->totalDiasUteis++;
                        }
                    } elseif (key_exists($dia, $dias_mes) && $dias_mes[$dia] == strtolower('e')) {
                        $this->totalDiasUteis++;
                    }
                }
            } else {
                if ($DiaSemana != 0 && $DiaSemana != 6) {
                    if (!(key_exists($dia, $dias_mes) && $dias_mes[$dia] == strtolower('n'))) {
                        $this->totalDiasUteis++;
                    }
                } elseif (key_exists($dia, $dias_mes) && $dias_mes[$dia] == strtolower('e')) {
                    $this->totalDiasUteis++;
                }
            }
            $DiaSemana++;
        }
        $cursos_in = '';
        $conc = '';
        foreach ($this->cursos as $curso) {
            $cursos_in .= "{$conc}{$curso}";
            $conc = ",";
        }
        $this->pdf = new clsPDF("Movimentação Mensal de Alunos - {$this->ano}", "Movimentação Mensal de Alunos - {$this->ano}", "A4", "", false, false);
        $this->pdf->largura = 842.0;
        $this->pdf->altura = 595.0;
        $fonte = 'arial';
        $corTexto = '#000000';
        $altura_linha = 23;
        $inicio_escrita_y = 175;
        $this->pdf->OpenPage();
        $this->addCabecalho();
        $this->novoCabecalho();
        $quantidade_total = array();
        foreach ($this->cursos as $curso) {
            //busca todas as series de um curso
            $obj_serie_cursos = new clsPmieducarSerie();
            $lista_serie_cursos = $obj_serie_cursos->lista(null, null, null, $curso, null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao);
            $total_turmas_curso = 0;
            $total_curso = array();
            for ($a = 0; $a < 30; $a++) {
                $total_curso[$a] = 0;
            }
            if ($lista_serie_cursos) {
                for ($a = 0; $a < 30; $a++) {
                    $total_serie[$a] = 0;
                }
                foreach ($lista_serie_cursos as $serie) {
                    $total_serie = array();
                    //nome da serie
                    $nm_serie = $serie['nm_serie'];
                    //MATRICULA INICIAL
                    //busca todas turmas de cada serie
                    $obj_serie_turmas = new clsPmieducarTurma();
                    $obj_serie_turmas->setOrderby("nm_turma");
                    $lista_serie_turmas = $obj_serie_turmas->lista(null, null, null, $serie['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);
                    //total de turmas de uma serie
                    $total_turmas_curso += $total_turmas_serie = $obj_serie_turmas->_total;
                    if ($lista_serie_turmas) {
                        $quantidades = array();
                        foreach ($lista_serie_turmas as $turma) {
                            //professor regente da turma
                            $obj_servidor = new clsPessoa_($turma['ref_cod_regente']);
                            $det_sevidor = $obj_servidor->detalhe();
                            $nm_servidor = $det_sevidor['nome'];
                            //nome da turma de uma serie
                            $nm_turma = $turma['nm_turma'];
                            if ($turma['hora_inicial'] <= '12:00') {
                                $turno = 'M';
                            } elseif ($turma['hora_inicial'] > '12:00' && $turma['hora_inicial'] <= '18:00') {
                                $turno = 'V';
                            } else {
                                $turno = 'N';
                            }
                            $depurar = false;
                            if (trim($turma["nm_turma"]) == "202") {
                                //								$depurar=true;
                            }
                            /**
                             * busca todos os alunos que foram matriculados nos meses anteriores ao atual
                             */
                            $obj_matriculas = new clsPmieducarMatriculaTurma();
                            //$lista_matriculas = $obj_matriculas->lista(null,$turma['cod_turma'],null,null,null,null,null,null,1,$serie['cod_serie'],$curso,$this->ref_cod_escola,$this->ref_cod_instituicao,null,null,array( 1, 2, 3 ),((int)$this->mes === 1 ) ? $this->mes + 1: $this->mes,null,$this->ano );
                            //$lista_matriculas = $obj_matriculas->lista(null,$turma['cod_turma'],null,null,null,null,null,null,null,$serie['cod_serie'],$curso,$this->ref_cod_escola,$this->ref_cod_instituicao,null,null,null,((int)$this->mes === 1 ) ? $this->mes + 1: $this->mes,null,$this->ano );
                            $lista_matriculas = $obj_matriculas->lista(null, $turma['cod_turma'], null, null, null, null, null, null, null, $serie['cod_serie'], $curso, $this->ref_cod_escola, $this->ref_cod_instituicao, null, null, null, null, null, $this->ano, null, null, null, null, true, null, $this->mes, null, null, null, null, $depurar);
                            $total_matriculas_turma = $obj_matriculas->_total;
                            $total_matriculas_turma_masculino = 0;
                            $total_matriculas_turma_feminino = 0;
                            if ($lista_matriculas) {
                                foreach ($lista_matriculas 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();
                                    if (strtoupper($det_pessoa['sexo']) == 'M') {
                                        $total_matriculas_turma_masculino++;
                                    } else {
                                        $total_matriculas_turma_feminino++;
                                    }
                                }
                            }
                            //quantidades matricula inicial
                            //							M
                            $quantidades[0] = $total_matriculas_turma_masculino;
                            //							F
                            $quantidades[1] = $total_matriculas_turma_feminino;
                            //							T
                            $quantidades[2] = $total_matriculas_turma;
                            $db3 = new clsBanco();
                            if (trim($turma["nm_turma"]) == "304") {
                                //								echo "<pre>"; print_r($quantidades);// die();
                            }
                            /*Array
                            (
                                [0] => 15
                                [1] => 14
                                [2] => 29
                            )
                            EL. ENTURMACAO 48743          2
                            EL. TRANSFERENCIA 48775                    1
                            AD ENTURMACAO 48816       4
                            EL. TRANSFERENCIA 54097                    1
                            AD ENTURMACAO 54962       4
                            AD ENTURMACAO 55101       4
                            AD TRANSFERENCIA 57059          3
                            AD TRANSFERENCIA 57070          3*/
                            //							echo $turma["cod_turma"]."<br>";
                            //sql para pegar o numero de alunos que
                            // abandonaram e diminuir da soma final
                            /*$sql = "SELECT COUNT(0) FROM
                            					pmieducar.matricula m,
                            					pmieducar.matricula_turma mt,
                            					pmieducar.aluno a,
                            					cadastro.fisica f
                            				WHERE
                            					mt.ref_cod_turma = {$turma["cod_turma"]}
                            					AND mt.ativo = 1
                            					AND mt.ref_cod_matricula = m.cod_matricula
                            					AND m.ref_cod_aluno = a.cod_aluno
                            					AND a.ref_idpes = f.idpes
                            					AND sexo = 'M'
                            					AND ano = {$this->ano}
                            					AND m.aprovado not in(1,2,3)
                            					AND ( to_char(mt.data_cadastro,'MM')::int = '{$this->mes}'
                            						  OR to_char(mt.data_exclusao,'MM')::int = '{$this->mes}')";
                            		$diminui_masc = (int)$db3->CampoUnico($sql);
                            		if ($depurar) {
                            			echo $sql."<br>";
                            		}
                            		$sql = "SELECT COUNT(0) FROM
                            					pmieducar.matricula m,
                            					pmieducar.matricula_turma mt,
                            					pmieducar.aluno a,
                            					cadastro.fisica f
                            				WHERE
                            					mt.ref_cod_turma = {$turma["cod_turma"]}
                            					AND mt.ativo = 1
                            					AND mt.ref_cod_matricula = m.cod_matricula
                            					AND m.ref_cod_aluno = a.cod_aluno
                            					AND a.ref_idpes = f.idpes
                            					AND sexo = 'F'
                            					AND ano = {$this->ano}
                            					AND m.aprovado not in(1,2,3)
                            					AND ( to_char(mt.data_cadastro,'MM')::int = '{$this->mes}'
                            							OR to_char(mt.data_exclusao,'MM')::int = '{$this->mes}')";
                            		$diminui_fem = (int)$db3->CampoUnico($sql);			*/
                            //							$depurar = false;
                            if ($depurar || $turma["nm_turma"] == "304") {
                                //								die($sql);
                                //								$depurar = true;
                            }
                            //							$diminui_fem = $diminui_masc = 0;
                            //							ENTURMACAO
                            /**
                             * seleciona todas as matriculas com data_* no mes atual
                             */
                            $sql_complemento = "OR (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tEXISTS (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tSELECT 1 FROM pmieducar.transferencia_solicitacao ts WHERE ts.ativo = 1 AND\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t to_char(ts.data_transferencia,'MM')::int = {$this->mes} AND\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t ts.ref_cod_matricula_saida = m.cod_matricula\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t)";
                            $sql_complemento = "";
                            if ($depurar) {
                                //								$sql_complemento1 = "AND m.cod_matricula NOT IN (48743, 48775, 48816, 54097, 54962, 55101, 57059, 57070)";
                                //								$sql_complemento1 = "AND m.cod_matricula NOT IN (48743, 48775, 48816, 54097, 54962, 55101, 57059)";
                            }
                            $db = new clsBanco();
                            $consulta = "SELECT\n\t\t\t\t\t\t\t\t\t\t\tDISTINCT mt.ref_cod_matricula, mt.sequencial, mt.ativo\n\t\t\t\t\t\t\t\t\t\t FROM\n\t\t\t\t\t\t\t\t\t\t \tpmieducar.matricula_turma mt\n\t\t\t\t\t\t\t\t\t\t \t,pmieducar.matricula m\n\t\t\t\t\t\t\t\t\t\t WHERE\n\t\t\t\t\t\t\t\t\t\t \tmt.ref_cod_matricula = m.cod_matricula\n\t\t\t\t\t\t\t\t\t\t \tAND m.ano = {$this->ano}\n\t\t\t\t\t\t\t\t\t\t \tAND m.ativo = 1\n\t\t\t\t\t\t\t\t\t\t \tAND mt.ref_cod_turma = {$turma["cod_turma"]}\n\t\t\t\t\t\t\t\t\t\t \tAND (\tto_char(mt.data_cadastro,'MM')::int = {$this->mes}\n\t\t\t\t\t\t\t\t\t\t \t\tOR\n\t\t\t\t\t\t\t\t\t\t \t\t\tto_char(mt.data_exclusao,'MM')::int = {$this->mes}\n\t\t\t\t\t\t\t\t\t\t \t\t\t{$sql_complemento}\n\t\t\t\t\t\t\t\t\t\t \t\t)\n\t\t\t\t\t\t\t\t\t\t \tORDER BY\n\t\t\t\t\t\t\t\t\t\t \t\t1, 2, ativo";
                            $depurar = false;
                            if ($depurar || trim($turma["nm_turma"]) == "202") {
                                //								$depurar = true;
                            }
                            $db->Consulta($consulta);
                            $total_admitido_enturmacao = 0;
                            $total_admitido_enturmacao_masc = 0;
                            $total_admitido_enturmacao_fem = 0;
                            $total_eliminado_enturmacao = 0;
                            $total_eliminado_enturmacao_masc = 0;
                            $total_eliminado_enturmacao_fem = 0;
                            $total_reclassificacao = 0;
                            $total_admitido_reclassificao = 0;
                            $total_admitido_reclassificao_masc = 0;
                            $total_admitido_reclassificao_fem = 0;
                            $total_eliminado_reclassificacao = 0;
                            $total_eliminado_reclassificacao_masc = 0;
                            $total_eliminado_reclassificacao_fem = 0;
                            $total_transferencia = 0;
                            $total_admitido_transferencia = 0;
                            $total_admitido_transferencia_masc = 0;
                            $total_admitido_transferencia_fem = 0;
                            $total_eliminado_transferencia = 0;
                            $total_eliminado_transferencia_masc = 0;
                            $total_eliminado_transferencia_fem = 0;
                            $total_abandono = 0;
                            //$diminui_fem + $diminui_masc;
                            $total_abandono_masc = 0;
                            //$diminui_masc;
                            $total_abandono_fem = 0;
                            //$diminui_fem;
                            $diminui_fem = $diminui_masc = 0;
                            $total_aprovado = 0;
                            $total_aprovado_masc = 0;
                            $total_aprovado_fem = 0;
                            $matriculas_transferencia = array();
                            if ($db->Num_Linhas()) {
                                $db2 = new clsBanco();
                                while ($db->ProximoRegistro()) {
                                    list($cod_matricula, $sequencial, $ativo) = $db->Tupla();
                                    //									$depurar=false;
                                    if ($cod_matricula == 48743) {
                                        //										die("<br><br><br><br><br><br>".$ativo." ,______");
                                        //										$depurar=true;
                                    }
                                    $obj_matricula = new clsPmieducarMatricula($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();
                                    $sexo = strtoupper($det_pessoa['sexo']);
                                    $consulta = "SELECT ativo\n\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma mt1\n\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = '{$cod_matricula}'\n\t\t\t\t\t\t\t\t\t\t\t\t    AND sequencial = {$sequencial}\n\t\t\t\t\t\t\t\t\t\t\t\t\tAND ref_cod_turma = '{$turma['cod_turma']}'\n\t\t\t\t\t\t\t\t\t\t\t\t    AND (data_cadastro, COALESCE(data_exclusao,now())) = ( SELECT data_cadastro, COALESCE(data_exclusao,now())\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t FROM pmieducar.matricula_turma mt2\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE ref_cod_matricula IN ( SELECT cod_matricula\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  \t\t\t\t\t\t\t   FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  \t\t\t\t\t\t\t  WHERE ano = '{$this->ano}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  \t\t\t\t\t\t\t    AND ref_cod_aluno = ( SELECT DISTINCT ref_cod_aluno\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  \t\t\t\t\t\t\t  \t\t\t\t\t        FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  \t\t\t\t\t\t\t  \t\t\t\t\t       WHERE cod_matricula = '{$cod_matricula}' ) )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tORDER BY data_cadastro desc,data_exclusao desc\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tLIMIT 1 )\n\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t   )\n\t\t\t\t\t\t\t\t\t\t\t\tORDER BY data_cadastro desc,data_exclusao desc,ativo ";
                                    /*OR to_char( data_exclusao,'MM')::int = '{$this->mes}'*/
                                    $eh_ultima_matricula = $db2->CampoUnico($consulta);
                                    /**
                                     * nao eh a ultima matricula
                                     */
                                    //02-07-07
                                    //f(!is_numeric($eh_ultima_matricula) || $eh_ultima_matricula == 0 /*&& $eh_ultima_matricula != 0 && $eh_ultima_matricula != 1*/)
                                    if (!is_numeric($eh_ultima_matricula)) {
                                        $foi_admitido_transferencia = false;
                                        $foi_eliminado_transferencia = false;
                                        if ($cod_matricula == 48743) {
                                            //											die("<br><br><br><br><br><br>".$ativo." ,______");
                                            //											$depurar=true;
                                        }
                                        /**
                                         * verifica se for a primeira enturmacao
                                         * se ela esta marcada como reclassificacao
                                         */
                                        //echo "$cod_matricula-$sequencial<br>";
                                        $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma mt1\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND sequencial = {$sequencial}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ref_cod_turma = {$turma['cod_turma']}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND (data_cadastro, COALESCE(data_exclusao,now())) = ( SELECT data_cadastro, COALESCE(data_exclusao,now())\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t FROM pmieducar.matricula_turma mt2\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ref_cod_turma = {$turma['cod_turma']}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tORDER BY data_cadastro asc,data_exclusao asc\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tLIMIT 1 )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  )\n\t\t\t\t\t\t\t\t\t\t\t\t\tORDER BY data_cadastro asc,data_exclusao asc,ativo ";
                                        /*OR to_char( data_exclusao,'MM')::int = '{$this->mes}' */
                                        $eh_primeira_enturmacao_desta_matricula = $db2->CampoUnico($consulta);
                                        $consulta = "SELECT matricula_reclassificacao\n\t\t\t\t\t\t\t\t\t\t               FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t              WHERE cod_matricula = {$cod_matricula}";
                                        $matricula_reclassificacao = $db2->CampoUnico($consulta);
                                        //ref_cod_matricula_saida
                                        $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.transferencia_solicitacao\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula_entrada = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND ativo = 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t      OR to_char( data_exclusao,'MM')::int = '{$this->mes}' )";
                                        $existe_transferencia = $db2->CampoUnico($consulta);
                                        /**
                                         * verifica se eh a primeira matricula do aluno
                                         */
                                        $obj_matricula_aluno = new clsPmieducarMatricula();
                                        $lst_matricula_aluno = $obj_matricula_aluno->lista(null, null, null, null, null, null, $det_aluno['cod_aluno'], null, null, null, null, null, $this->ano);
                                        $eh_primeira_matricula_do_aluno = count($lst_matricula_aluno) == 1 ? 1 : 0;
                                        $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND matricula_transferencia = true AND to_char(data_cadastro,'MM')::int = {$this->mes}";
                                        $primeira_matricula_eh_transferencia = $db2->CampoUnico($consulta);
                                        $consulta = "SELECT max(sequencial)\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = {$cod_matricula}";
                                        $max_sequencial = $db2->CampoUnico($consulta);
                                        if (is_numeric($primeira_matricula_eh_transferencia)) {
                                            $matriculas_transferencia[$cod_matricula] = $cod_matricula;
                                            $total_admitido_transferencia++;
                                            if ($depurar) {
                                                echo "AD TRANSFERENCIA {$cod_matricula}  aquiiii<br>";
                                                $matriculas[] = $cod_matricula;
                                            }
                                            if ($sexo == 'M') {
                                                $total_admitido_transferencia_masc++;
                                            } else {
                                                $total_admitido_transferencia_fem++;
                                            }
                                        }
                                        if ($eh_primeira_enturmacao_desta_matricula && $matricula_reclassificacao) {
                                            if ($depurar) {
                                                $matriculas[] = $cod_matricula;
                                            }
                                            $total_admitido_reclassificao++;
                                            if ($sexo == 'M') {
                                                $total_admitido_reclassificao_masc++;
                                            } else {
                                                $total_admitido_reclassificao_fem++;
                                            }
                                        } elseif ($eh_primeira_enturmacao_desta_matricula && $existe_transferencia || $eh_primeira_enturmacao_desta_matricula && $eh_primeira_matricula_do_aluno && $primeira_matricula_eh_transferencia) {
                                            if (is_numeric($existe_transferencia) && $existe_transferencia == 1) {
                                                if ($depurar) {
                                                    echo "AD TRANSFERENCIA {$cod_matricula}  1<br>";
                                                    $matriculas[] = $cod_matricula;
                                                }
                                                if (!is_numeric(array_search($cod_matricula, $matriculas_transferencia))) {
                                                    $total_admitido_transferencia++;
                                                    if ($sexo == 'M') {
                                                        $total_admitido_transferencia_masc++;
                                                    } else {
                                                        $total_admitido_transferencia_fem++;
                                                    }
                                                    $foi_admitido_transferencia = true;
                                                }
                                            }
                                        } else {
                                            if (!is_numeric($primeira_matricula_eh_transferencia) && $ativo == 1) {
                                                if ($depurar) {
                                                    echo "AD ENTURMACAO {$cod_matricula}             1<br>";
                                                    $matriculas[] = $cod_matricula;
                                                }
                                                $total_admitido_enturmacao++;
                                                if ($sexo == 'M') {
                                                    $total_admitido_enturmacao_masc++;
                                                } else {
                                                    $total_admitido_enturmacao_fem++;
                                                }
                                            }
                                        }
                                        /**
                                         * verifica se eh a ultima enturmacao desta matricula
                                         */
                                        $consulta = "SELECT ref_cod_turma\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma mt1\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND sequencial = {$sequencial}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t AND (ref_cod_turma,sequencial) = (SELECT ref_cod_turma, max(sequencial)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t FROM pmieducar.matricula_turma mt2\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tgroup by ref_cod_turma,data_cadastro\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\torder by data_cadastro desc limit 1)";
                                        $ultima_turma_enturmacao = $db2->CampoUnico($consulta);
                                        if ($ultima_turma_enturmacao == $turma['cod_turma']) {
                                            $consulta = "SELECT aprovado\n\t\t\t\t\t\t\t\t\t\t\t               FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t\t              WHERE cod_matricula = {$cod_matricula}";
                                            $situacao = $db2->CampoUnico($consulta);
                                            $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.transferencia_solicitacao\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula_saida = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t    AND (ativo = 1 OR data_transferencia IS NOT NULL)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t      OR to_char( data_exclusao,'MM')::int = '{$this->mes}' )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND(to_char(data_transferencia,'MM')::int = '{$this->mes}' OR data_transferencia IS NULL)";
                                            $existe_transferencia = $db2->CampoUnico($consulta);
                                            if ($situacao <= 3 && is_numeric($existe_transferencia)) {
                                                //if($turma['cod_turma'] == 757)
                                                //	echo "1-$cod_matricula-$matricula_reclassificacao<br>";
                                                if ($ativo == 0) {
                                                    $total_eliminado_enturmacao++;
                                                    if ($depurar) {
                                                        echo "EL. ENTURMACAO {$cod_matricula}           1<br>";
                                                    }
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_enturmacao_masc++;
                                                    } else {
                                                        $total_eliminado_enturmacao_fem++;
                                                    }
                                                }
                                            } else {
                                                if ($situacao == 5) {
                                                    $total_eliminado_reclassificacao++;
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_reclassificacao_masc++;
                                                    } else {
                                                        $total_eliminado_reclassificacao_fem++;
                                                    }
                                                }
                                                if ($situacao == 4 && is_numeric($existe_transferencia)) {
                                                    $total_eliminado_transferencia++;
                                                    if ($depurar) {
                                                        echo "EL. TRANSFERENCIA " . $cod_matricula . "                    1<br>";
                                                    }
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_transferencia_masc++;
                                                    } else {
                                                        $total_eliminado_transferencia_fem++;
                                                    }
                                                    /**
                                                     * se for a primeira enturmacao mesmo que tenha
                                                     * sido eliminado deve contabilizar uma
                                                     * admissao por enturmacao
                                                     */
                                                    if ($eh_primeira_enturmacao_desta_matricula && !$primeira_matricula_eh_transferencia && !$foi_admitido_transferencia) {
                                                        //if($turma['cod_turma'] == 40)
                                                        //echo "1-$cod_matricula<br>";
                                                        echo "AD ENTURMACAO {$cod_matricula}             aaaaaaaaaaaaaa<br>";
                                                        $total_admitido_enturmacao++;
                                                        if ($sexo == 'M') {
                                                            $total_admitido_enturmacao_masc++;
                                                        } else {
                                                            $total_admitido_enturmacao_fem++;
                                                        }
                                                    }
                                                } elseif ($situacao == 6) {
                                                    $total_abandono++;
                                                    if ($sexo == 'M') {
                                                        $total_abandono_masc++;
                                                    } else {
                                                        $total_abandono_fem++;
                                                    }
                                                } elseif ($situacao == 1) {
                                                    $total_aprovado++;
                                                    if ($sexo == 'M') {
                                                        $total_aprovado_masc++;
                                                    } else {
                                                        $total_aprovado_fem++;
                                                    }
                                                } elseif ($situacao == 4 && !is_numeric($existe_transferencia) && is_numeric($eh_primeira_enturmacao_desta_matricula) && !$primeira_matricula_eh_transferencia) {
                                                    //if($turma['cod_turma'] == 450)
                                                    //	echo "1-$cod_matricula<br>";
                                                    if ($depurar) {
                                                        echo "AD ENTURMACAO {$cod_matricula}       2<br>";
                                                        $matriculas[] = $cod_matricula;
                                                    }
                                                    $total_admitido_enturmacao++;
                                                    if ($sexo == 'M') {
                                                        $total_admitido_enturmacao_masc++;
                                                    } else {
                                                        $total_admitido_enturmacao_fem++;
                                                    }
                                                }
                                            }
                                        } else {
                                            if ($ativo == 0) {
                                                if ($sequencial <= $max_sequencial) {
                                                    //if($turma['cod_turma'] == 757)
                                                    //echo "2-$cod_matricula-$matricula_reclassificacao<br>";
                                                    $total_eliminado_enturmacao++;
                                                    if ($depurar) {
                                                        echo "EL. ENTURMACAO {$cod_matricula}          2<br>";
                                                    }
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_enturmacao_masc++;
                                                    } else {
                                                        $total_eliminado_enturmacao_fem++;
                                                    }
                                                    if (is_numeric($eh_primeira_enturmacao_desta_matricula) && !$existe_transferencia && !$matricula_reclassificacao) {
                                                        if ($depurar) {
                                                            echo "AD ENTURMACAO {$cod_matricula}       3<br>";
                                                            $matriculas[] = $cod_matricula;
                                                        }
                                                        $total_admitido_enturmacao++;
                                                        if ($sexo == 'M') {
                                                            $total_admitido_enturmacao_masc++;
                                                        } else {
                                                            $total_admitido_enturmacao_fem++;
                                                        }
                                                    }
                                                } elseif (is_numeric($eh_primeira_enturmacao_desta_matricula)) {
                                                    if ($primeira_matricula_eh_transferencia) {
                                                        if ($depurar) {
                                                            echo "AD TRANSFERENCIAAA {$cod_matricula}            2<BR>";
                                                            $matriculas[] = $cod_matricula;
                                                        }
                                                        if (!is_numeric(array_search($cod_matricula, $matriculas_transferencia))) {
                                                            $total_admitido_transferencia++;
                                                            if ($sexo == 'M') {
                                                                $total_admitido_transferencia_masc++;
                                                            } else {
                                                                $total_admitido_transferencia_fem++;
                                                            }
                                                        }
                                                    } elseif (!$existe_transferencia && !$matricula_reclassificacao) {
                                                        if ($depurar) {
                                                            echo "AD ENTURMACAO {$cod_matricula}       3<br>";
                                                            $matriculas[] = $cod_matricula;
                                                        }
                                                        $total_admitido_enturmacao++;
                                                        if ($sexo == 'M') {
                                                            $total_admitido_enturmacao_masc++;
                                                        } else {
                                                            $total_admitido_enturmacao_fem++;
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    } else {
                                        //echo "ref_cod_matricula = $cod_matricula
                                        //AND sequencial = $sequencial";
                                        $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma mt1\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND sequencial = {$sequencial}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ref_cod_turma = {$turma['cod_turma']}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND (data_cadastro, COALESCE(data_exclusao,now())) = ( SELECT data_cadastro, COALESCE(data_exclusao,now())\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t FROM pmieducar.matricula_turma mt2\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tORDER BY data_cadastro asc,data_exclusao asc\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tLIMIT 1 )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tORDER BY data_cadastro asc,data_exclusao asc,ativo ";
                                        /*OR to_char( data_exclusao,'MM')::int = '{$this->mes}'*/
                                        $eh_primeira_enturmacao_desta_matricula = $db2->CampoUnico($consulta);
                                        $consulta = "SELECT matricula_reclassificacao\n\t\t\t\t\t\t\t\t\t\t               FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t              WHERE cod_matricula = {$cod_matricula}";
                                        $matricula_reclassificacao = $db2->CampoUnico($consulta);
                                        /**
                                         * verifica se eh a primeira matricula do aluno
                                         */
                                        $obj_matricula_aluno = new clsPmieducarMatricula();
                                        $lst_matricula_aluno = $obj_matricula_aluno->lista(null, null, null, null, null, null, $det_aluno['cod_aluno']);
                                        $eh_primeira_matricula_do_aluno = count($lst_matricula_aluno) == 1 ? 1 : 0;
                                        $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND matricula_transferencia = true";
                                        $primeira_matricula_eh_transferencia = $db2->CampoUnico($consulta);
                                        if (is_numeric($primeira_matricula_eh_transferencia)) {
                                            $matriculas_transferencia[$cod_matricula] = $cod_matricula;
                                            $total_admitido_transferencia++;
                                            if ($sexo == 'M') {
                                                $total_admitido_transferencia_masc++;
                                            } else {
                                                $total_admitido_transferencia_fem++;
                                            }
                                        }
                                        if ($eh_primeira_enturmacao_desta_matricula && $matricula_reclassificacao) {
                                            $total_admitido_reclassificao++;
                                            if ($depurar) {
                                                $matriculas[] = $cod_matricula;
                                            }
                                            if ($sexo == 'M') {
                                                $total_admitido_reclassificao_masc++;
                                            } else {
                                                $total_admitido_reclassificao_fem++;
                                            }
                                        } else {
                                            $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.transferencia_solicitacao\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula_entrada = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t    AND ativo = 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t      OR to_char( data_exclusao,'MM')::int = '{$this->mes}' )";
                                            $existe_transferencia = (int) $db2->CampoUnico($consulta);
                                            //if($turma['cod_turma'] == 33 && $existe_transferencia)
                                            //	echo "$cod_matricula<br>";
                                            if (is_numeric($eh_primeira_enturmacao_desta_matricula) && $existe_transferencia && $existe_transferencia == 1 || is_numeric($eh_primeira_enturmacao_desta_matricula) && $eh_primeira_matricula_do_aluno && $primeira_matricula_eh_transferencia) {
                                                if ($depurar) {
                                                    echo "AD TRANSFERENCIA {$cod_matricula}          3<br>";
                                                    $matriculas[] = $cod_matricula;
                                                }
                                                if (!is_numeric(array_search($cod_matricula, $matriculas_transferencia))) {
                                                    $total_admitido_transferencia++;
                                                    if ($sexo == 'M') {
                                                        $total_admitido_transferencia_masc++;
                                                    } else {
                                                        $total_admitido_transferencia_fem++;
                                                    }
                                                }
                                            } else {
                                                //if($det_matricula['aprovado'] != 4)
                                                //												{
                                                //if($turma['cod_turma'] == 450)
                                                //echo "2-$cod_matricula<br>";
                                                if (!is_numeric($primeira_matricula_eh_transferencia)) {
                                                    $total_admitido_enturmacao++;
                                                    if ($depurar) {
                                                        echo "AD ENTURMACAO {$cod_matricula}       4<br>";
                                                        $matriculas[] = $cod_matricula;
                                                    }
                                                    if ($sexo == 'M') {
                                                        $total_admitido_enturmacao_masc++;
                                                    } else {
                                                        $total_admitido_enturmacao_fem++;
                                                    }
                                                }
                                            }
                                        }
                                        /**
                                         * verifica se eh a ultima enturmacao desta matricula
                                         */
                                        $consulta = "SELECT ref_cod_turma\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma mt1\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND sequencial = {$sequencial}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND sequencial = (SELECT max(sequencial)\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma mt2\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = {$cod_matricula})\n\t\t\t\t\t\t\t\t\t\t\t\t\torder by data_cadastro desc limit 1";
                                        $ultima_turma_enturmacao = $db2->CampoUnico($consulta);
                                        //echo "$cod_matricula - $ultima_turma_enturmacao == {$turma['cod_turma']}";
                                        if ($ultima_turma_enturmacao == $turma['cod_turma']) {
                                            $consulta = "SELECT aprovado\n\t\t\t\t\t\t\t\t\t\t\t               FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t\t              WHERE cod_matricula = {$cod_matricula}";
                                            $situacao = $db2->CampoUnico($consulta);
                                            if ($situacao <= 3) {
                                                if ($ativo == 0) {
                                                    //if($turma['cod_turma'] == 757)
                                                    //echo "3-$cod_matricula-$matricula_reclassificacao<br>";
                                                    $total_eliminado_enturmacao++;
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_enturmacao_masc++;
                                                    } else {
                                                        $total_eliminado_enturmacao_fem++;
                                                    }
                                                } else {
                                                    $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.transferencia_solicitacao\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula_saida = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t    AND (ativo = 1 OR data_transferencia IS NOT NULL)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t      OR to_char( data_exclusao,'MM')::int = '{$this->mes}' )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND(to_char(data_transferencia,'MM')::int = '{$this->mes}' OR data_transferencia IS NULL)";
                                                    $existe_transferencia = $db2->CampoUnico($consulta);
                                                    if (is_numeric($existe_transferencia) && $existe_transferencia == 1) {
                                                        $total_eliminado_transferencia++;
                                                        if ($depurar) {
                                                            echo "EL TRANSFERENCIA " . $cod_matricula . "              2<br>";
                                                        }
                                                        if ($sexo == 'M') {
                                                            $total_eliminado_transferencia_masc++;
                                                        } else {
                                                            $total_eliminado_transferencia_fem++;
                                                        }
                                                    }
                                                    //echo '<br>->'.$existe_transferencia = $db->CampoUnico($consulta);
                                                    //echo '<-<br>';
                                                }
                                            } else {
                                                //echo $turma['cod_turma'].'b';
                                                //echo "enter.$cod_matricula";
                                                $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.transferencia_solicitacao\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula_saida = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND (ativo = 1 OR data_transferencia IS NOT NULL)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t      OR to_char( data_exclusao,'MM')::int = '{$this->mes}' )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND(to_char(data_transferencia,'MM')::int = '{$this->mes}' OR data_transferencia IS NULL)";
                                                $existe_transferencia = $db2->CampoUnico($consulta);
                                                //echo $situacao.'<br>';
                                                //if($turma['cod_turma'] == 33)
                                                //echo "$cod_matricula<br>";
                                                if ($situacao == 5) {
                                                    $total_eliminado_reclassificacao++;
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_reclassificacao_masc++;
                                                    } else {
                                                        $total_eliminado_reclassificacao_fem++;
                                                    }
                                                } elseif (is_numeric($existe_transferencia) && $existe_transferencia == 1) {
                                                    $total_eliminado_transferencia++;
                                                    if ($depurar) {
                                                        echo "EL TRANSFERENCIA " . $cod_matricula . "           3<br>";
                                                    }
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_transferencia_masc++;
                                                    } else {
                                                        $total_eliminado_transferencia_fem++;
                                                    }
                                                } elseif ($situacao == 6) {
                                                    $total_abandono++;
                                                    if ($sexo == 'M') {
                                                        $total_abandono_masc++;
                                                    } else {
                                                        $total_abandono_fem++;
                                                    }
                                                } elseif ($situacao == 1 || $situacao == 2) {
                                                    $total_aprovado++;
                                                    if ($sexo == 'M') {
                                                        $total_aprovado_masc++;
                                                    } else {
                                                        $total_aprovado_fem++;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            //							die(implode(",",$matriculas));
                            //ADMITIDOS ativo = 1
                            //admitido por enturmacao no mes atual
                            //QUANTIDADES ENTURMACAO ADMITIDOS
                            //M
                            $quantidades[3] = $total_admitido_enturmacao_masc;
                            //F
                            $quantidades[4] = $total_admitido_enturmacao_fem;
                            //T
                            $quantidades[5] = $total_admitido_enturmacao;
                            //ELIMINADOS ativo = 0
                            //QUANTIDADES ENTURMACAO ELIMINADOS
                            //M
                            $quantidades[6] = $total_eliminado_enturmacao_masc;
                            //F
                            $quantidades[7] = $total_eliminado_enturmacao_fem;
                            //T
                            $quantidades[8] = $total_eliminado_enturmacao;
                            //RECLASSIFICACAO
                            //ADMITIDOS
                            //$obj_matriculas->_total = 0;
                            //$primeiroDiaDoMes = mktime(0,0,0,9,1,2006);
                            //   $NumeroDiasMes = date('t',$primeiroDiaDoMes);
                            //   $ultimoDiaMes =date('d/m/Y',mktime(0,0,0,9,$NumeroDiasMes,2006));
                            /**
                             * busca todas as matriculas marcadas como matricula_reclassificacao de uma serie de um curso
                             * em seguida busca todas as matriculas_turma da matricula_turma ordenado por data e pegando a primeira matricula de reclassificacao
                             * se essa matricula for igual a matricula atual do loop entao esta matricula
                             * é uma reclassificacao
                             */
                            //QUANTIDADES RECLASSIFICACAO ADMITIDOS
                            //M
                            $quantidades[9] = $total_admitido_reclassificao_masc;
                            //F
                            $quantidades[10] = $total_admitido_reclassificao_fem;
                            //T
                            $quantidades[11] = $total_admitido_reclassificao;
                            //ELIMINADOS
                            $obj_matriculas->_total = 0;
                            //QUANTIDADES RECLASSIFICACAO ELIMINADOS
                            //M
                            $quantidades[12] = $total_eliminado_reclassificacao_masc;
                            //F
                            $quantidades[13] = $total_eliminado_reclassificacao_fem;
                            //T
                            $quantidades[14] = $total_eliminado_reclassificacao;
                            //TRANSFERENCIA
                            //ADMITIDOS ativo = 1
                            //QUANTIDADES TRASNFERENCIA ADMITIDOS
                            //M
                            $quantidades[15] = $total_admitido_transferencia_masc;
                            //F
                            $quantidades[16] = $total_admitido_transferencia_fem;
                            //T
                            $quantidades[17] = $total_admitido_transferencia;
                            //ELIMINADOS aprovado = 4
                            //TRANSFERENCIA EXTERNA
                            //QUANTIDADES TRANFERENCIA EXTERNO ELIMINADOS
                            //M
                            $quantidades[18] = $total_eliminado_transferencia_masc;
                            //F
                            $quantidades[19] = $total_eliminado_transferencia_fem;
                            //T
                            $quantidades[20] = $total_eliminado_transferencia;
                            //ABANDONO
                            /*$db2 = new clsBanco();
                            							$consulta = "
                            										SELECT count(1)
                            											   FROM pmieducar.matricula_turma
                            												,pmieducar.matricula
                            											  WHERE cod_matricula = ref_cod_matricula
                            											    AND ref_cod_turma = {$turma['cod_turma']}
                            											    AND aprovado = 6
                            											    AND matricula_turma.ativo = 1
                            										            AND matricula.ativo = 1
                            												AND ( to_char( matricula_turma.data_cadastro,'MM')::int = {$this->mes}
                            												      OR to_char(  matricula_turma.data_exclusao,'MM')::int = {$this->mes} )
                            										";
                            
                            							$total_transf = $db2->CampoUnico($consulta)	;*/
                            //QUANTIDADES ABANDONO
                            //M
                            $quantidades[21] = $total_abandono_masc;
                            //F
                            $quantidades[22] = $total_abandono_fem;
                            //T
                            $quantidades[23] = $total_abandono;
                            //APROVADOS
                            //QUANTIDADES APROVADOS
                            //M
                            $quantidades[24] = $total_aprovado_masc;
                            //F
                            $quantidades[25] = $total_aprovado_fem;
                            //T
                            $quantidades[26] = $total_aprovado;
                            /**
                             * Inicio linha
                             */
                            $altura_linha = 18;
                            $this->pdf->quadrado_relativo(30, $this->page_y, 782, $altura_linha);
                            $largura_linha = 18;
                            for ($ct = 294; $ct < 294 + 30 * 17; $ct += $largura_linha) {
                                //159
                                $this->pdf->linha_relativa($ct, $this->page_y, 0, 18);
                            }
                            //n
                            $this->pdf->linha_relativa(50, $this->page_y, 0, 18);
                            //ciclo
                            $this->pdf->linha_relativa(134, $this->page_y, 0, 18);
                            //turno
                            $this->pdf->linha_relativa(149, $this->page_y, 0, 18);
                            //professor
                            $this->pdf->linha_relativa(275, $this->page_y, 0, 18);
                            $largura_linha = 18;
                            $index = 0;
                            for ($ct = 260; $ct < 260 + 26 * 18; $ct += $largura_linha * 3) {
                                $this->pdf->escreve_relativo($quantidades[$index] == 0 ? '' : $quantidades[$index], $ct, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                                $this->pdf->escreve_relativo($quantidades[$index + 1] == 0 ? '' : $quantidades[$index + 1], $ct + $largura_linha, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                                $this->pdf->escreve_relativo($quantidades[$index + 2], $ct + $largura_linha * 2, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                                $total_serie[$index] += $quantidades[$index];
                                $total_serie[$index + 1] += $quantidades[$index + 1];
                                $total_serie[$index + 2] += $quantidades[$index + 2];
                                $total_curso[$index] += $quantidades[$index];
                                $total_curso[$index + 1] += $quantidades[$index + 1];
                                $total_curso[$index + 2] += $quantidades[$index + 2];
                                $index += 3;
                            }
                            //							echo '<pre>';print_r($total_curso);
                            //matricula final
                            // ( MI + Adm.Entur + Adm.Recla + Adm1.Transf ) - ( Elim.Entur + Elim.Recla + Elim.Transf + Abandono )
                            $quantidades[27] = $quantidades[0] + $quantidades[3] + $quantidades[9] + $quantidades[15] - ($quantidades[6] + $quantidades[12] + $quantidades[18] + $quantidades[21]);
                            // - $diminui_masc;
                            //F
                            $quantidades[28] = $quantidades[1] + $quantidades[4] + $quantidades[10] + $quantidades[16] - ($quantidades[7] + $quantidades[13] + $quantidades[19] + $quantidades[22]);
                            // - $diminui_fem;
                            //T
                            $quantidades[29] = $quantidades[2] + $quantidades[5] + $quantidades[11] + $quantidades[17] - ($quantidades[8] + $quantidades[14] + $quantidades[20] + $quantidades[23]);
                            // - $diminui_fem - $diminui_masc;
                            $this->pdf->escreve_relativo($quantidades[$index], $ct, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                            $this->pdf->escreve_relativo($quantidades[$index + 1], $ct + $largura_linha, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                            $this->pdf->escreve_relativo($quantidades[$index + 2], $ct + $largura_linha * 2, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                            $total_serie[$index] += $quantidades[$index];
                            $total_serie[$index + 1] += $quantidades[$index + 1];
                            $total_serie[$index + 2] += $quantidades[$index + 2];
                            $total_curso[$index] += $quantidades[$index];
                            $total_curso[$index + 1] += $quantidades[$index + 1];
                            $total_curso[$index + 2] += $quantidades[$index + 2];
                            $expande = 24;
                            $numero_x = 12 + $expande;
                            $this->pdf->escreve_relativo("", $numero_x, $this->page_y + 3, 50, 50, $fonte, 7, $corTexto, 'left');
                            //posicao ciclo
                            $ciclo_x = $expande + 15;
                            $this->pdf->escreve_relativo("{$turma['nm_turma']}", $ciclo_x, $this->page_y + 3, 100, 50, $fonte, 7, $corTexto, 'center');
                            //posicao turno
                            $turno_x = $ciclo_x + $expande + 28;
                            $this->pdf->escreve_relativo("{$turno}", $turno_x, $this->page_y + 3, 100, 40, $fonte, 7, $corTexto, 'center');
                            $professor_x = 125 + $expande;
                            $this->pdf->escreve_relativo("{$nm_servidor}", $professor_x + 5, $this->page_y + 5, 100, 40, $fonte, 6, $corTexto, 'center');
                            $this->page_y += 18;
                            /**
                             * Fim linha
                             */
                            if ($this->page_y + $altura_linha > 498) {
                                $this->pdf->ClosePage();
                                $this->pdf->OpenPage();
                                $this->addCabecalho();
                                $this->novoCabecalho();
                            }
                        }
                    }
                    /**
                     * subtototal
                     */
                    $index = 0;
                    $altura_linha = 18;
                    $largura_linha = 18;
                    if ($lista_serie_turmas) {
                        $this->pdf->quadrado_relativo(30, $this->page_y, 782, $altura_linha);
                        for ($ct = 294; $ct < 294 + 30 * 17; $ct += $largura_linha) {
                            $this->pdf->linha_relativa($ct, $this->page_y, 0, 18);
                        }
                        $this->pdf->linha_relativa(50, $this->page_y, 0, 18);
                        $this->pdf->linha_relativa(275, $this->page_y, 0, 18);
                        for ($ct = 260; $ct < 260 + 30 * 18; $ct += $largura_linha * 3) {
                            $this->pdf->escreve_relativo($total_serie[$index], $ct, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                            $this->pdf->escreve_relativo($total_serie[$index + 1], $ct + $largura_linha, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                            $this->pdf->escreve_relativo($total_serie[$index + 2], $ct + $largura_linha * 2, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                            $index += 3;
                        }
                        $expande = 24;
                        $numero_x = 12 + $expande;
                        $this->pdf->escreve_relativo("{$total_turmas_serie}", $numero_x, $this->page_y + 3, 50, 50, $fonte, 7, $corTexto, 'left');
                        $professor_x = 40 + $expande;
                        $this->pdf->escreve_relativo("Subtotal {$nm_serie}", $professor_x + 5, $this->page_y + 3, 150, 40, $fonte, 7, $corTexto, 'center');
                        $this->page_y += 18;
                    }
                    /**
                     *
                     */
                    if ($this->page_y + $altura_linha > 498) {
                        $this->pdf->ClosePage();
                        $this->pdf->OpenPage();
                        $this->addCabecalho();
                        $this->novoCabecalho();
                    }
                }
                if ($total_curso[0] > 0) {
                    /**
                     * TOTAL CURSO
                     */
                    $altura_linha = 18;
                    $this->pdf->quadrado_relativo(30, $this->page_y, 782, $altura_linha);
                    for ($ct = 294; $ct < 294 + 30 * 17; $ct += $largura_linha) {
                        $this->pdf->linha_relativa($ct, $this->page_y, 0, 18);
                    }
                    //n
                    $this->pdf->linha_relativa(50, $this->page_y, 0, 18);
                    $this->pdf->linha_relativa(275, $this->page_y, 0, 18);
                    $index = 0;
                    for ($ct = 260; $ct < 260 + 30 * 18; $ct += $largura_linha * 3) {
                        $this->pdf->escreve_relativo($total_curso[$index], $ct, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                        $this->pdf->escreve_relativo($total_curso[$index + 1], $ct + $largura_linha, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                        $this->pdf->escreve_relativo($total_curso[$index + 2], $ct + $largura_linha * 2, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                        $index += 3;
                    }
                    $expande = 24;
                    $numero_x = 12 + $expande;
                    $this->pdf->escreve_relativo("{$total_turmas_curso}", $numero_x, $this->page_y + 3, 50, 50, $fonte, 7, $corTexto, 'left');
                    $obj_curso = new clsPmieducarCurso($curso);
                    $det_curso = $obj_curso->detalhe();
                    $nm_curso = $det_curso['nm_curso'];
                    $professor_x = 40 + $expande;
                    $this->pdf->escreve_relativo("Total {$nm_curso}", $professor_x + 5, $this->page_y + 3, 150, 40, $fonte, 7, $corTexto, 'center');
                    $this->page_y += 18;
                }
                foreach ($total_curso as $key => $valor) {
                    $quantidade_total[$key] += $valor;
                }
                /**
                 *
                 */
                if ($this->page_y > 498) {
                    $this->pdf->ClosePage();
                    $this->pdf->OpenPage();
                    $this->addCabecalho();
                    $this->novoCabecalho();
                }
            }
        }
        $altura_linha = 18;
        $this->pdf->quadrado_relativo(30, $this->page_y, 782, $altura_linha);
        for ($ct = 294; $ct < 294 + 30 * 17; $ct += $largura_linha) {
            $this->pdf->linha_relativa($ct, $this->page_y, 0, 18);
        }
        //n
        $this->pdf->linha_relativa(50, $this->page_y, 0, 18);
        $this->pdf->linha_relativa(275, $this->page_y, 0, 18);
        $index = 0;
        for ($ct = 260; $ct < 260 + 30 * 18; $ct += $largura_linha * 3) {
            $this->pdf->escreve_relativo($quantidade_total[$index], $ct, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
            $this->pdf->escreve_relativo($quantidade_total[$index + 1], $ct + $largura_linha, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
            $this->pdf->escreve_relativo($quantidade_total[$index + 2], $ct + $largura_linha * 2, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
            $index += 3;
        }
        $expande = 24;
        $numero_x = 12 + $expande;
        $this->pdf->escreve_relativo("{$total_turmas_curso}", $numero_x, $this->page_y + 3, 50, 50, $fonte, 7, $corTexto, 'left');
        $obj_curso = new clsPmieducarCurso($curso);
        $det_curso = $obj_curso->detalhe();
        $nm_curso = $det_curso['nm_curso'];
        $professor_x = 40 + $expande;
        $this->pdf->escreve_relativo("Total Geral", $professor_x + 20, $this->page_y + 3, 150, 40, $fonte, 7, $corTexto, 'center');
        $this->page_y += 18;
        $this->rodape();
        $this->pdf->ClosePage();
        //header( "location: " . $this->pdf->GetLink() );
        $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>";
    }
$Y_linha += $altura;
$pdf->escreve_relativo("EMAIL:  {$email_resp}", $X_coluna, $Y_linha, 536, $altura, $fonte, $tam_letra);
//********************************************************//
$pdf->escreve_relativo("Assinatura da Secretária(o)", 68, 590, 100, 50, $fonte, 7, $corTexto, 'left');
$pdf->escreve_relativo("Assinatura do Responsável", 400, 590, 100, 50, $fonte, 7, $corTexto, 'left');
$pdf->linha_relativa(52, 587, 130, 0);
$pdf->linha_relativa(384, 587, 130, 0);
//****************************************************************************************//
if (is_numeric($cod_aluno)) {
    $sql = "SELECT MAX(cod_matricula) FROM pmieducar.matricula WHERE ref_cod_aluno = {$cod_aluno} AND ativo = 1";
    $db = new clsBanco();
    $ref_cod_matricula = $db->CampoUnico($sql);
    if (is_numeric($ref_cod_matricula)) {
        $obj_matricula = new clsPmieducarMatricula();
        $obj_matricula->setOrderby("ano ASC");
        $lst_matricula = $obj_matricula->lista($ref_cod_matricula);
        if ($lst_matricula) {
            $registro = array_shift($lst_matricula);
        }
        $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"];
        $obj_serie = new clsPmieducarSerie($registro["ref_ref_cod_serie"]);
        $det_serie = $obj_serie->detalhe();
        $nm_serie = $det_serie["nm_serie"];
        $ano = $registro["ano"];
    }
}
$pdf->ClosePage();
$pdf->OpenPage();
//		$fonte = 'arial';
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = 'Dispensa Componente Curricular - Detalhe';
     $this->addBanner('imagens/nvp_top_intranet.jpg', 'imagens/nvp_vert_intranet.jpg', 'Intranet');
     $this->ref_cod_disciplina = $_GET['ref_cod_disciplina'];
     $this->ref_cod_matricula = $_GET['ref_cod_matricula'];
     $this->ref_cod_serie = $_GET['ref_cod_serie'];
     $this->ref_cod_disciplina = $_GET['ref_cod_disciplina'];
     $this->ref_cod_escola = $_GET['ref_cod_escola'];
     $tmp_obj = new clsPmieducarDispensaDisciplina($this->ref_cod_matricula, $this->ref_cod_serie, $this->ref_cod_escola, $this->ref_cod_disciplina);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header('Location: educar_dispensa_disciplina_lst.php?ref_cod_matricula=' . $this->ref_cod_matricula);
         die;
     }
     if (class_exists('clsPmieducarSerie')) {
         $obj_serie = new clsPmieducarSerie($this->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-->";
     }
     // Dados da 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($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();
     $nm_aluno = $det_aluno['nome_aluno'];
     // Dados do curso
     $obj_ref_cod_curso = new clsPmieducarCurso($detalhe_aluno['ref_cod_curso']);
     $det_ref_cod_curso = $obj_ref_cod_curso->detalhe();
     $registro['ref_cod_curso'] = $det_ref_cod_curso['nm_curso'];
     // Tipo de dispensa
     $obj_ref_cod_tipo_dispensa = new clsPmieducarTipoDispensa($registro['ref_cod_tipo_dispensa']);
     $det_ref_cod_tipo_dispensa = $obj_ref_cod_tipo_dispensa->detalhe();
     $registro['ref_cod_tipo_dispensa'] = $det_ref_cod_tipo_dispensa['nm_tipo'];
     if ($registro['ref_cod_matricula']) {
         $this->addDetalhe(array('Matricula', $registro['ref_cod_matricula']));
     }
     if ($nm_aluno) {
         $this->addDetalhe(array('Aluno', $nm_aluno));
     }
     if ($registro['ref_cod_curso']) {
         $this->addDetalhe(array('Curso', $registro['ref_cod_curso']));
     }
     if ($registro['ref_ref_cod_serie']) {
         $this->addDetalhe(array('Série', $registro['ref_ref_cod_serie']));
     }
     if ($registro['ref_cod_disciplina']) {
         $componenteMapper = new ComponenteCurricular_Model_ComponenteDataMapper();
         $componente = $componenteMapper->find($registro['ref_cod_disciplina']);
         $this->addDetalhe(array('Componente Curricular', $componente->nome));
     }
     if ($registro['ref_cod_tipo_dispensa']) {
         $this->addDetalhe(array('Tipo Dispensa', $registro['ref_cod_tipo_dispensa']));
     }
     if ($registro['observacao']) {
         $this->addDetalhe(array('Observação', $registro['observacao']));
     }
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7)) {
         $this->url_novo = sprintf('educar_dispensa_disciplina_cad.php?ref_cod_matricula=%d', $this->ref_cod_matricula);
         $this->url_editar = sprintf('educar_dispensa_disciplina_cad.php?ref_cod_matricula=%d&ref_cod_disciplina=%d', $registro['ref_cod_matricula'], $registro['ref_cod_disciplina']);
     }
     $this->url_cancelar = 'educar_dispensa_disciplina_lst.php?ref_cod_matricula=' . $this->ref_cod_matricula;
     $this->largura = '100%';
 }
    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_escola = new clsPmieducarEscola($this->ref_cod_escola);
        $det_escola = $obj_escola->detalhe();
        $this->nm_escola = $det_escola["nome"];
        if ($det_escola) {
            $this->pdf = new clsPDF("Demonstrativo de Alunos Defasados Nominal Idade/Série - {$this->ano}", "Demonstrativo de Alunos Defasados Nominal Idade/Série - {$this->ano}", "A4", "", false, false);
            $obj_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao);
            $det_instituicao = $obj_instituicao->detalhe();
            $this->nm_instituicao = $det_instituicao['nm_instituicao'];
            $this->pdf->OpenPage();
            $this->addCabecalho();
            $this->novaPagina();
            $altura2 = 300;
            $altura = 30;
            $direita = $this->pdf->largura - 30 * 2;
            $expande = 24;
            $esquerda = 30;
            $inicio_escrita = 125 + $altura;
            $fonte = 'arial';
            $corTexto = '#000000';
            $flag_defasado = 1;
            $total_geral_masc_serie = 0;
            $total_geral_fem_serie = 0;
            $total_geral_anee = 0;
            $total_geral_nao_anee = 0;
            $total_geral_alf = 0;
            $total_geral_nao_alf = 0;
            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);
                $total_curso_masc_serie = 0;
                $total_curso_fem_serie = 0;
                $total_curso_anee = 0;
                $total_curso_nao_anee = 0;
                $total_curso_alf = 0;
                $total_curso_nao_alf = 0;
                if ($lista_serie_curso) {
                    foreach ($lista_serie_curso as $serie) {
                        $defasados = array();
                        $flagTurmas = 0;
                        $flagAlunos = 0;
                        $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);
                        if ($lista_matricula_serie) {
                            foreach ($lista_matricula_serie as $matricula) {
                                if ($matricula['data_nasc']) {
                                    $ano_nasc = explode("-", $matricula['data_nasc']);
                                    $idade_aluno = $this->ano - $ano_nasc[0];
                                }
                                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) {
                                            $desafados[] = $matricula;
                                            $obj_pessoa = new clsFisica($matricula["ref_idpes"]);
                                            $det_pessoa = $obj_pessoa->detalhe();
                                            $obj_aluno = new clsPmieducarAluno($matricula["ref_cod_aluno"]);
                                            $det_aluno = $obj_aluno->detalhe();
                                            $anee = false;
                                            if (is_numeric($matricula["ref_idpes"])) {
                                                $sql = "SELECT 1 FROM cadastro.fisica_deficiencia, cadastro.deficiencia\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE cod_deficiencia = ref_cod_deficiencia AND\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref_idpes = {$matricula["ref_idpes"]}";
                                                $db = new clsBanco();
                                                $anee = $db->CampoUnico($sql);
                                            }
                                            $defasados[count($desafados)] = array("mat" => $matricula, "sexo" => $det_pessoa["sexo"], "analfabeto" => $det_aluno["analfabeto"], "anee" => $anee);
                                        }
                                    } 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) {
                                            $desafados[] = $matricula;
                                            $obj_pessoa = new clsFisica($matricula["ref_idpes"]);
                                            $det_pessoa = $obj_pessoa->detalhe();
                                            $obj_aluno = new clsPmieducarAluno($matricula["ref_cod_aluno"]);
                                            $det_aluno = $obj_aluno->detalhe();
                                            $anee = false;
                                            if (is_numeric($matricula["ref_idpes"])) {
                                                $sql = "SELECT 1 FROM cadastro.fisica_deficiencia, cadastro.deficiencia\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE cod_deficiencia = ref_cod_deficiencia AND\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref_idpes = {$matricula["ref_idpes"]}";
                                                $db = new clsBanco();
                                                $anee = $db->CampoUnico($sql);
                                            }
                                            $defasados[count($desafados)] = array("mat" => $matricula, "sexo" => $det_pessoa["sexo"], "analfabeto" => $det_aluno["analfabeto"], "anee" => $anee);
                                        }
                                    }
                                }
                            }
                        }
                        $altura_aux = 13;
                        $total_masc_serie = 0;
                        $total_fem_serie = 0;
                        $total_anee = 0;
                        $total_nao_anee = 0;
                        $total_alf = 0;
                        $total_nao_alf = 0;
                        $esquerda = 30;
                        foreach ($defasados as $alunos) {
                            if ($inicio_escrita > $this->pdf->altura - 50) {
                                $inicio_escrita = 125 + $altura;
                                $this->pdf->ClosePage();
                                $this->pdf->OpenPage();
                                $this->addCabecalho();
                                $this->novaPagina();
                            }
                            $this->pdf->quadrado_relativo($esquerda, $inicio_escrita, $direita, $altura_aux);
                            $this->pdf->escreve_relativo($serie["nm_serie"], $esquerda += 5, $inicio_escrita, 40, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->linha_relativa($esquerda += 40, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->escreve_relativo($alunos["mat"]["nome"], $esquerda += 5, $inicio_escrita, 260, 50, $fonte, 9, $corTexto, 'left');
                            $this->pdf->linha_relativa($esquerda += 260, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->escreve_relativo(dataFromPgToBr($alunos["mat"]["data_nasc"]), $esquerda += 5, $inicio_escrita, 70, 50, $fonte, 9, $corTexto, 'center');
                            $espaco = 50;
                            $altura_aux = 12;
                            $this->pdf->linha_relativa($esquerda += $espaco + 20, $inicio_escrita, 0, $altura_aux);
                            if ($alunos["sexo"] == "M") {
                                $this->pdf->escreve_relativo("X", $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                                $total_masc_serie++;
                            } else {
                                $this->pdf->escreve_relativo("X", $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                                $total_fem_serie++;
                            }
                            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
                            if ($alunos["anee"]) {
                                $this->pdf->escreve_relativo("X", $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                                $total_anee++;
                            } else {
                                $this->pdf->escreve_relativo("X", $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                                $total_nao_anee++;
                            }
                            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
                            if (!$alunos["analfabeto"]) {
                                $this->pdf->escreve_relativo("X", $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                                $total_alf++;
                            } else {
                                $this->pdf->escreve_relativo("X", $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                                $total_nao_alf++;
                            }
                            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                            $inicio_escrita += $altura_aux;
                            $esquerda = 30;
                        }
                        if ($inicio_escrita > $this->pdf->altura - 50) {
                            $inicio_escrita = 125 + $altura;
                            $this->pdf->ClosePage();
                            $this->pdf->OpenPage();
                            $this->addCabecalho();
                            $this->novaPagina();
                        }
                        if ($total_masc_serie || $total_fem_serie || $total_anee || $total_curso_anee || $total_nao_alf || $total_nao_alf) {
                            $this->pdf->quadrado_relativo($esquerda, $inicio_escrita, $direita, $altura_aux);
                            $esquerda = 30;
                            $esquerda = 345;
                            $espaco = 50;
                            $altura_aux = 12;
                            $this->pdf->escreve_relativo("Totais Série {$serie["nm_serie"]}", $esquerda - 150, $inicio_escrita, 150, 50, $fonte, 9, $corTexto, 'left');
                            $this->pdf->linha_relativa($esquerda += $espaco + 20, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->escreve_relativo($total_masc_serie, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->escreve_relativo($total_fem_serie, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->escreve_relativo($total_anee, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->escreve_relativo($total_nao_anee, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->escreve_relativo($total_alf, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->escreve_relativo($total_nao_alf, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                            $inicio_escrita += $altura_aux;
                        }
                        $total_curso_masc_serie += $total_masc_serie;
                        $total_curso_fem_serie += $total_fem_serie;
                        $total_curso_anee += $total_anee;
                        $total_nao_anee += $total_curso_anee;
                        $total_curso_alf += $total_alf;
                        $total_curso_nao_alf += $total_nao_alf;
                        $esquerda = 30;
                    }
                }
                if ($inicio_escrita > $this->pdf->altura - 50) {
                    $inicio_escrita = 125 + $altura;
                    $this->pdf->ClosePage();
                    $this->pdf->OpenPage();
                    $this->addCabecalho();
                    $this->novaPagina();
                }
                $this->pdf->quadrado_relativo($esquerda, $inicio_escrita, $direita, $altura_aux);
                $esquerda = 345;
                $espaco = 50;
                $altura_aux = 12;
                $obj_curso = new clsPmieducarCurso($curso);
                $det_curso = $obj_curso->detalhe();
                $this->pdf->escreve_relativo("Totais Curso {$det_curso["nm_curso"]}", $esquerda - 150, $inicio_escrita, 300, 50, $fonte, 9, $corTexto, 'left');
                $this->pdf->linha_relativa($esquerda += $espaco + 20, $inicio_escrita, 0, $altura_aux);
                $this->pdf->escreve_relativo($total_curso_masc_serie, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                $this->pdf->escreve_relativo($total_curso_fem_serie, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
                $this->pdf->escreve_relativo($total_curso_anee, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                $this->pdf->escreve_relativo($total_curso_nao_anee, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
                $this->pdf->escreve_relativo($total_curso_alf, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                $this->pdf->escreve_relativo($total_curso_nao_alf, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                $total_geral_masc_serie += $total_curso_masc_serie;
                $total_geral_fem_serie += $total_curso_fem_serie;
                $total_geral_anee += $total_curso_anee;
                $total_geral_nao_anee += $total_curso_nao_anee;
                $total_geral_alf += $total_curso_alf;
                $total_geral_nao_alf += $total_curso_nao_alf;
                $inicio_escrita += $altura_aux;
            }
            $esquerda = 30;
            $this->pdf->quadrado_relativo($esquerda, $inicio_escrita, $direita, $altura_aux);
            $esquerda = 345;
            $espaco = 50;
            $altura_aux = 12;
            $obj_curso = new clsPmieducarCurso($curso);
            $det_curso = $obj_curso->detalhe();
            $this->pdf->escreve_relativo("Totais Gerais", $esquerda - 100, $inicio_escrita, 300, 50, $fonte, 9, $corTexto, 'left');
            $this->pdf->linha_relativa($esquerda += $espaco + 20, $inicio_escrita, 0, $altura_aux);
            $this->pdf->escreve_relativo($total_geral_masc_serie, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
            $this->pdf->escreve_relativo($total_geral_fem_serie, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
            $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
            $this->pdf->escreve_relativo($total_geral_anee, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
            $this->pdf->escreve_relativo($total_geral_nao_anee, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
            $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
            $this->pdf->escreve_relativo($total_geral_alf, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
            $this->pdf->escreve_relativo($total_geral_nao_alf, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
            $altura_linha = 23;
            $inicio_escrita_y = 175;
        }
        $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()
 {
     $this->url_cancelar = "educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}";
     $this->nome_url_cancelar = "Cancelar";
     // a disciplina vem com a serie junto... vamos separar
     if (strpos($this->ref_cod_disciplina, "_")) {
         $arr = explode("_", $this->ref_cod_disciplina);
         $this->ref_cod_disciplina = $arr[1];
         $this->ref_cod_serie_disciplina = $arr[0];
     } else {
         $this->ref_cod_disciplina = $this->ref_cod_disciplina;
         $this->ref_cod_serie_disciplina = null;
     }
     $objTurma = new clsPmieducarTurma($this->ref_cod_turma, null, null, $this->ref_ref_cod_serie);
     $detalhe_turma = $objTurma->detalhe();
     if ($detalhe_turma) {
         // a turma existe, vamos pegar os dados dela
         $this->ref_ref_cod_serie = $detalhe_turma["ref_ref_cod_serie"];
         $objSerie = new clsPmieducarSerie($this->ref_ref_cod_serie);
         $detalhe_serie = $objSerie->detalhe();
         $this->media_especial = dbBool($detalhe_serie['media_especial']);
         $this->ref_ref_cod_serie_mult = $detalhe_turma["ref_ref_cod_serie_mult"];
         if ($this->ref_ref_cod_serie_mult) {
             $objSerieMult = new clsPmieducarSerie($this->ref_ref_cod_serie_mult);
             $detalhe_serie_mult = $objSerieMult->detalhe();
         }
         $this->ref_ref_cod_escola = $detalhe_turma["ref_ref_cod_escola"];
         $this->ref_cod_curso = $detalhe_serie["ref_cod_curso"];
         $objCurso = new clsPmieducarCurso($this->ref_cod_curso);
         $detalhe_curso = $objCurso->detalhe();
         $objEscolaAnoLetivo = new clsPmieducarEscolaAnoLetivo();
         $lstEscolaAnoLetivo = $objEscolaAnoLetivo->lista($this->ref_ref_cod_escola, null, null, null, 1, null, null, null, null, 1);
         if (is_array($lstEscolaAnoLetivo)) {
             foreach ($lstEscolaAnoLetivo as $value) {
                 $this->ano_letivo = $value["ano"];
             }
         }
         $objTipoAvaliacao = new clsPmieducarTipoAvaliacao($detalhe_curso["ref_cod_tipo_avaliacao"]);
         $detalhe_tipo_avaliacao = $objTipoAvaliacao->detalhe();
         $this->conceitual = $detalhe_tipo_avaliacao["conceitual"];
         $this->ref_cod_tipo_avaliacao = $detalhe_curso["ref_cod_tipo_avaliacao"];
         $this->falta_ch_globalizada = $detalhe_curso["falta_ch_globalizada"];
         $this->num_modulo = $objTurma->moduloMinimo();
         //			se o modulo atual for maior que o maximo o ano acabou
         $this->max_modulos = $objTurma->maxModulos();
         if ($this->num_modulo == $this->max_modulos + 1) {
             // ve se vai para a pagina de aprovacao/reprovacao ou se mostra as notas do exame
             if (!is_null($detalhe_curso["media_exame"])) {
                 // essa turma pode ter exame
                 $detalhe_modulo = array();
                 $detalhe_modulo["nm_tipo"] = "Exame";
                 //					ve se tem algum aluno em exame
                 $a = $objTurma->moduloExameAlunos();
                 if ($objTurma->moduloExameAlunos()) {
                     // existe algum aluno de exame
                     $this->exame = 1;
                     // vamos ver se tem alguma excessao que precisa de nota de exame
                     $objExcessoes = new clsPmieducarMatriculaExcessao();
                     $lista_excessoes = $objExcessoes->lista(null, $this->ref_cod_turma, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, true, true, IS_NULL);
                     if (is_array($lista_excessoes)) {
                         // existe alguma excessao, mostra a tela de excessoes
                         $this->passo = 2;
                     } else {
                         // nao tem excessao, entao vamos dar as notas do exame
                         //							$this->passo = 1;
                     }
                 } else {
                     // poderia ter exame, mas nenhum aluno pegou exame, vamos pra aprova��o
                     if ($this->conceitual) {
                         // conceitual aprova manualmente
                         $this->passo = 3;
                     } else {
                         $objExcessoes = new clsPmieducarMatriculaExcessao();
                         $lista_excessoes = $objExcessoes->lista(null, $this->ref_cod_turma, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, true, false);
                         if (is_array($lista_excessoes)) {
                             // existe alguma excessao para aprovacao, vamos para tela de excessoes
                             $this->passo = 2;
                         } else {
                             // ninguem de exame, a turma nao eh conceitual e nenhuma excessao... todos ja deveriam estar aprovados/reprovados
                             // $this->campoRotulo("alerta","Alerta","Erro: [1] Todos os alunos dessa turma j� foram aprovados/reprovados.");
                             // vamos corrigir o problema aprovando o pessoal que esta na espera (ja que eles nao pegaram exame nem reprovaram por falta)
                             $db2 = new clsBanco();
                             $db2->Consulta("SELECT cod_matricula FROM pmieducar.v_matricula_matricula_turma WHERE ref_cod_turma = '{$this->ref_cod_turma}' AND aprovado = 3 AND ativo = 1");
                             while ($db2->ProximoRegistro()) {
                                 list($mat) = $db2->Tupla();
                                 $objAprova = new clsPmieducarMatricula($mat, null, null, null, $this->pessoa_logada, null, null, 1);
                                 $objAprova->edita();
                             }
                             header("location: educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}");
                             die;
                         }
                     }
                 }
             } else {
                 // nao tem exame, fase de aprovacao dos alunos
                 if ($this->conceitual) {
                     // conceitual aprova manualmente
                     $this->passo = 3;
                 } else {
                     // nao conceitual
                     $objExcessoes = new clsPmieducarMatriculaExcessao();
                     $lista_excessoes = $objExcessoes->lista(null, $this->ref_cod_turma, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, true);
                     if (is_array($lista_excessoes)) {
                         // tem excessao, mostra tela de excessoes para aprovacao
                         $this->passo = 2;
                     } else {
                         // ninguem de exame, a turma nao eh conceitual e nenhuma excessao... todos ja deveriam estar aprovados/reprovados
                         // vamos corrigir o problema e aprovar todo mudno que nao pegou exame
                         $db2 = new clsBanco();
                         $db2->Consulta("SELECT cod_matricula FROM pmieducar.v_matricula_matricula_turma WHERE ref_cod_turma = '{$this->ref_cod_turma}' AND aprovado = 3 AND ativo = 1");
                         while ($db2->ProximoRegistro()) {
                             list($mat) = $db2->Tupla();
                             $objAprova = new clsPmieducarMatricula($mat, null, null, null, $this->pessoa_logada, null, null, 1);
                             $objAprova->edita();
                         }
                         //$this->campoRotulo("alerta","Alerta","Erro: [2] Todos os alunos dessa turma j� foram aprovados/reprovados.");
                         header("location: educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}");
                         die;
                     }
                 }
             }
         } else {
             if ($this->num_modulo > $this->max_modulos) {
                 // jah passou o exame, fase de aprovacao dos alunos
                 $objExcessoes = new clsPmieducarMatriculaExcessao();
                 $lista_excessoes = $objExcessoes->lista(null, $this->ref_cod_turma, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, true);
                 if (is_array($lista_excessoes)) {
                     // ta na fase de aprovacao mas ainda tem alguma excessao
                     $this->passo = 2;
                 } else {
                     // fase de aprovacao e sem excessoes
                     if ($this->conceitual) {
                         $this->passo = 3;
                     } else {
                         // ja acabou o exame, a turma nao eh conceitual e nenhuma excessao... todos ja deveriam estar aprovados/reprovados
                         //						$this->campoRotulo("alerta","Alerta","Erro: [3] Todos os alunos dessa turma j� foram aprovados/reprovados.");
                         $db2 = new clsBanco();
                         $db2->Consulta("SELECT cod_matricula FROM pmieducar.v_matricula_matricula_turma WHERE ref_cod_turma = '{$this->ref_cod_turma}' AND aprovado = 3 AND ativo = 1");
                         while ($db2->ProximoRegistro()) {
                             list($mat) = $db2->Tupla();
                             $objAprova = new clsPmieducarMatricula($mat, null, null, null, $this->pessoa_logada, null, null, 1);
                             $objAprova->edita();
                         }
                         header("location: educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}");
                         die;
                     }
                 }
             } else {
                 if ($this->ref_cod_disciplina && $this->passo == 1) {
                     if ($this->ultima_disciplina == 1 && $this->conceitual && $this->num_modulo == $this->max_modulos) {
                         $this->pula_passo = true;
                     }
                 }
                 $this->exame = 0;
                 $cod_modulo = 0;
                 $objAnoLetivoModulo = new clsPmieducarAnoLetivoModulo();
                 $lstAnoLetivoModulo = $objAnoLetivoModulo->lista($this->ano_letivo, $this->ref_ref_cod_escola, $this->num_modulo);
                 if (is_array($lstAnoLetivoModulo)) {
                     foreach ($lstAnoLetivoModulo as $value) {
                         $cod_modulo = $value["ref_cod_modulo"];
                         $this->ref_cod_modulo = $cod_modulo;
                     }
                 }
                 if (!$objTurma->moduloMinimoDisciplina()) {
                     /**
                      * nao existem disciplinas sem nota redireciona para listagem de nota turma
                      */
                     if (!$_POST) {
                         echo "<script>alert('Todas as disciplinas já se encontram com nota!');window.location='educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}';</script>";
                     } else {
                         header("location:educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}");
                     }
                     die;
                 }
                 $objModulo = new clsPmieducarModulo($cod_modulo);
                 $detalhe_modulo = $objModulo->detalhe();
             }
         }
         $this->campoRotulo("nm_turma", "Turma", $detalhe_turma["nm_turma"]);
         $this->campoRotulo("nm_serie", "S&eacute;rie", $detalhe_turma["multiseriada"] ? "{$detalhe_serie["nm_serie"]} e {$detalhe_serie_mult["nm_serie"]}" : $detalhe_serie["nm_serie"]);
         $this->campoRotulo("nm_modulo", "M&oacute;dulo", $detalhe_modulo["nm_tipo"]);
         $this->campoRotulo("num_modulo2", "N&uacute;mero do M&oacute;dulo", $this->num_modulo . "\n\t\t\t<style>\n\t\t\t\t.cell_normal\n\t\t\t\t{\n\t\t\t\t\tborder:1px;\n\t\t\t\t\tborder-color:#000000;\n\t\t\t\t\tborder-style:solid;\n\t\t\t\t}\n\t\t\t\t.cell_separa\n\t\t\t\t{\n\t\t\t\t\tborder:1px;\n\t\t\t\t\tborder-color:#000000;\n\t\t\t\t\tborder-style:solid;\n\t\t\t\t\tborder-left-width:2px;\n\t\t\t\t}\n\t\t\t</style>\n\t\t\t");
         if ($this->passo == 0) {
             // mostra as disciplinas para escolher
             $opcoes_disciplinas = array("" => "Selecione");
             if (!$this->exame) {
                 // modulo normal, acha todas as disciplinas que ainda precisam de nota no menor modulo
                 $disciplinas = $objTurma->moduloMinimoDisciplina();
                 // print_r($disciplinas);
                 $num_disciplinas = 0;
                 foreach ($disciplinas as $value) {
                     $objDisciplina = new clsPmieducarDisciplina($value["cod_disciplina"]);
                     $det_dis = $objDisciplina->detalhe();
                     $nm_serie = $value["cod_serie"] == $this->ref_ref_cod_serie ? $detalhe_serie["nm_serie"] : $detalhe_serie_mult["nm_serie"];
                     $opcoes_disciplinas["{$value["cod_serie"]}_{$value["cod_disciplina"]}"] = $detalhe_turma["multiseriada"] ? "{$nm_serie} - {$det_dis["nm_disciplina"]}" : "{$det_dis["nm_disciplina"]}";
                     $num_disciplinas++;
                 }
                 if ($num_disciplinas == 1) {
                     $this->campoOculto("ultima_disciplina", 1);
                 }
             } else {
                 // exame, acha as disciplinas em que os alunos nao atingiram a media
                 $disciplinas = $objTurma->moduloExameDisciplina(true);
                 foreach ($disciplinas as $value) {
                     $objDisciplina = new clsPmieducarDisciplina($value["cod_disciplina"]);
                     $det_dis = $objDisciplina->detalhe();
                     $nm_serie = $value["cod_serie"] == $this->ref_ref_cod_serie ? $detalhe_serie["nm_serie"] : $detalhe_serie_mult["nm_serie"];
                     $opcoes_disciplinas["{$value["cod_serie"]}_{$value["cod_disciplina"]}"] = $detalhe_turma["multiseriada"] ? "{$nm_serie} - {$det_dis["nm_disciplina"]}" : "{$det_dis["nm_disciplina"]}";
                 }
             }
             $this->campoLista("ref_cod_disciplina", "Disciplina", $opcoes_disciplinas, $this->ref_cod_disciplina);
         } else {
             if ($this->passo == 1) {
                 // mostra os alunos que ainda precisam de nota nessa disciplina (nesse modulo)
                 $objDisciplina = new clsPmieducarDisciplina($this->ref_cod_disciplina);
                 $detalhe_disciplina = $objDisciplina->detalhe();
                 // print_r($detalhe_disciplina);
                 $this->campoRotulo("disciplina", "Disciplina", "<strong>{$detalhe_disciplina["nm_disciplina"]}</strong>");
                 $this->campoOculto("ref_cod_disciplina", $this->ref_cod_disciplina);
                 $this->campoOculto("ref_cod_serie_disciplina", $this->ref_cod_serie_disciplina);
                 $this->campoQuebra2();
                 // seleciona as notas que estilo disponiveis para essa disciplina
                 $objTipoAvaliacaoValor = new clsPmieducarTipoAvaliacaoValores();
                 $opcoes_notas = array("" => "Selecione");
                 $objTipoAvaliacaoValor->setOrderby("sequencial ASC");
                 $lista_notas_valores = $objTipoAvaliacaoValor->lista($detalhe_curso["ref_cod_tipo_avaliacao"]);
                 if (is_array($lista_notas_valores)) {
                     foreach ($lista_notas_valores as $value) {
                         $opcoes_notas[$value["sequencial"]] = $value["nome"];
                     }
                 }
                 // pega as matriculas que vao receber nota
                 if (!$this->exame) {
                     $matriculas = $objTurma->matriculados_modulo_disciplina_sem_nota($this->ref_cod_disciplina, $this->ref_cod_serie_disciplina, $this->num_modulo);
                     $sql = "SELECT \n\t\t\t\t\t\t\t\tcod_Matricula \n\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\tpmieducar.matricula m\n\t\t\t\t\t\t\tWHERE \n\t\t\t\t\t\t\t\tcod_matricula in (" . implode(",", $matriculas) . ")\n\t\t\t\t\t\t\t\tAND ref_ref_cod_serie={$this->ref_cod_serie_disciplina}";
                     $banco = new clsBanco();
                     $banco->Consulta($sql);
                     if ($banco->Num_Linhas()) {
                         $matriculas = array();
                         while ($banco->ProximoRegistro()) {
                             list($cod_matricula) = $banco->Tupla();
                             $matriculas[$cod_matricula] = $cod_matricula;
                         }
                     }
                 } else {
                     $matriculas = $objTurma->moduloExameAlunos($this->ref_cod_disciplina);
                     /**
                      * gera campo para dizer que as notas sao de exame
                      */
                     $this->campoOculto("is_nota_exame", true);
                 }
                 if ($matriculas) {
                     $objMat = new clsPmieducarMatricula();
                     $objMat->setOrderby("nome ASC");
                     $lista_matriculas = $objMat->lista(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, $matriculas);
                     $matriculas_exame_disponivel = false;
                     if (is_array($lista_matriculas)) {
                         foreach ($lista_matriculas as $matricula) {
                             if (!$this->exame) {
                                 $this->campoRotulo("matricula[{$matricula["cod_matricula"]}]", "Aluno", "<div style=\"float:left;width:250px;padding-top:2px;\">{$matricula["nome"]}</div>", true);
                                 $this->campoLista("nota[{$matricula["cod_matricula"]}]", "Nota", $opcoes_notas, "", "", true, "", "", false, true);
                             } else {
                                 $obj_nota_aluno = new clsPmieducarNotaAluno();
                                 $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, null, null, $this->ref_cod_disciplina, $matricula["cod_matricula"], null, null, null, null, null, null, 1, $this->num_modulo);
                                 if (!is_array($lst_nota_aluno)) {
                                     $matriculas_exame_disponivel = true;
                                     $this->campoRotulo("matricula[{$matricula["cod_matricula"]}]", "Aluno", "<div style=\"float:left;width:250px;padding-top:2px;\">{$matricula["nome"]}</div>", true);
                                     $this->campoMonetario("nota[{$matricula["cod_matricula"]}]", "Nota", "", 5, 5, true, "", "", "onChange", false, true, "", true);
                                 }
                                 //								$this->campoMonetario("nota[{$matricula["cod_matricula"]}]","Nota","",5,5,true,"","","onChange",false,true,"",true);
                             }
                             if (!$this->exame) {
                                 $duplo = false;
                                 if ($this->pula_passo) {
                                     $duplo = true;
                                 }
                                 // nao estamos no exame, vamos ver se precisa apurar as faltas
                                 if ($detalhe_disciplina["apura_falta"]) {
                                     // materia apura falta, vamos ver se eh pra mostrar pra esse aluno
                                     if (!$detalhe_curso["falta_ch_globalizada"]) {
                                         // se nesse curso a falta nao eh globalizada, exibe um campo de falta para todos os alunos
                                         $this->campoTexto("falta[{$matricula["cod_matricula"]}]", " &nbsp; &nbsp; &nbsp; Faltas", "0", 7, 5, true, false, $duplo);
                                     } else {
                                         // a falta eh globalizada, vamos ver se essa eh a ultima materia (que apura falta) que falta pro aluno
                                         // receber nota. Se for a ultima mostra o campo, se nao for deixa sem
                                         $objNotaAluno = new clsPmieducarNotaAluno();
                                         $restantes = $objNotaAluno->getQtdRestanteNotasAlunoNaoApuraFaltas($matricula["cod_matricula"], $this->ref_cod_serie_disciplina, $this->ref_cod_turma, $this->num_modulo, $this->ref_ref_cod_escola);
                                         if ($restantes == 1) {
                                             $this->campoTexto("falta[{$matricula["cod_matricula"]}]", " &nbsp; &nbsp; &nbsp; Faltas", "0", 7, 5, true, false, $duplo, "", "Falta global!");
                                             $this->campoOculto("ultima_nota[{$matricula["cod_matricula"]}]", "1");
                                         } else {
                                             $this->campoRotulo("espaco[{$matricula["cod_matricula"]}]", " &nbsp; &nbsp; &nbsp; Faltas", "Falta Globalizada &eacute; aplicada na ultima nota do aluno");
                                         }
                                     }
                                 } else {
                                     // a falta eh globalizada, vamos ver se essa eh a ultima materia (que apura falta) que falta pro aluno
                                     // receber nota. Se for a ultima mostra o campo, se nao for deixa sem
                                     if ($detalhe_curso["falta_ch_globalizada"]) {
                                         $objNotaAluno = new clsPmieducarNotaAluno();
                                         $restantes = $objNotaAluno->getQtdRestanteNotasAlunoNaoApuraFaltas($matricula["cod_matricula"], $this->ref_cod_serie_disciplina, $this->ref_cod_turma, $this->num_modulo, $this->ref_ref_cod_escola);
                                         if ($restantes == 1) {
                                             // eh a ultima disciplina
                                             $this->campoTexto("falta[{$matricula["cod_matricula"]}]", " &nbsp; &nbsp; &nbsp; Faltas", "0", 7, 5, true, false, $duplo, "", "Falta global!");
                                             $this->campoOculto("ultima_nota[{$matricula["cod_matricula"]}]", "1");
                                         } else {
                                             $this->campoRotulo("espaco[{$matricula["cod_matricula"]}]", " &nbsp; &nbsp; &nbsp; Faltas", "Mat&eacute;ria n&atilde;o apura falta");
                                         }
                                     } else {
                                         $this->campoRotulo("espaco[{$matricula["cod_matricula"]}]", " &nbsp; &nbsp; &nbsp; Faltas", "Mat&eacute;ria n&atilde;o apura falta");
                                     }
                                 }
                                 if ($this->pula_passo) {
                                     //									$opcoes_conceito = array("" => "Selecione", 1 => "Aprovado", 2 => "Reprovado");
                                     //									$this->campoLista("conceito[{$matricula["cod_matricula"]}]", " &nbsp; &nbsp; &nbsp; Situação", $opcoes_conceito, "");
                                     $this->campoLista("resultado_final[{$matricula["cod_matricula"]}]", "&nbsp; &nbsp; &nbsp;Resultado final", array("" => "Selecione", "1" => "Aprovado", "2" => "Reprovado"), "", "", false, "", "", false, true);
                                 }
                             } else {
                                 if (!is_array($lst_nota_aluno)) {
                                     // esta no exame, entao nao apura faltas
                                     $this->campoRotulo("espaco[{$matricula["cod_matricula"]}]", " &nbsp; &nbsp; &nbsp; Faltas", "Exame n&atilde;o apura falta");
                                 }
                                 // esta no exame, entao nao apura faltas
                                 //								$this->campoRotulo("espaco[{$matricula["cod_matricula"]}]", " &nbsp; &nbsp; &nbsp; Faltas","Exame n&atilde;o apura falta");
                             }
                         }
                         if (!$matriculas_exame_disponivel && $this->exame) {
                             echo "<script>\n\t\t\t\t\t\t\t\t\t\talert('Todos os alunos estão com notas do exame nessa disciplina');\n\t\t\t\t\t\t\t\t\t\twindow.location='educar_turma_nota_cad.php?ref_cod_turma={$this->ref_cod_turma}&ref_ref_cod_escola={$this->ref_ref_cod_escola}&ref_ref_cod_serie={$this->ref_ref_cod_serie}&ref_cod_curso={$this->ref_cod_curso}';\n\t\t\t\t\t\t\t\t  </script>";
                         }
                     }
                 } else {
                     $this->mensagem = "Neste m&oacute;dulo n&atilde;o existe nenhum aluno aguardando uma nota nesta disciplina";
                     $this->url_cancelar = "educar_turma_nota_cad2.php?ref_cod_turma={$this->ref_cod_turma}&ref_ref_cod_escola={$this->ref_ref_cod_escola}&ref_ref_cod_serie={$this->ref_ref_cod_serie}&ref_cod_curso={$this->ref_cod_curso}";
                     $this->nome_url_cancelar = "Voltar";
                     $this->botao_enviar = false;
                 }
             } else {
                 if ($this->passo == 2) {
                     // tela onde o professor confirma excessoes
                     $objTipoAvaliacaoValor = new clsPmieducarTipoAvaliacaoValores();
                     $this->campoQuebra2();
                     $this->campoRotulo("media_normal", "M&eacute;dia", $objTipoAvaliacaoValor->nomeNota($detalhe_curso["media"], $detalhe_curso["ref_cod_tipo_avaliacao"]));
                     $this->campoRotulo("media_exame", "M&eacute;dia Exame", $objTipoAvaliacaoValor->nomeNota($detalhe_curso["media_exame"], $detalhe_curso["ref_cod_tipo_avaliacao"]));
                     if ($detalhe_curso["falta_ch_globalizada"]) {
                         $tipo_falta = "Globalizada";
                     } else {
                         $tipo_falta = "por Disciplina";
                     }
                     $this->campoRotulo("tipo_falta", "Tipo de Falta", $tipo_falta);
                     $this->campoRotulo("carga_horaria", "Carga Hor&aacute;ria", $detalhe_curso["carga_horaria"]);
                     $this->campoRotulo("hora_falta", "Horas por Falta", $detalhe_curso["hora_falta"]);
                     $this->campoRotulo("frequencia_minima1", "Frequencia M&aacute;ima (%)", $detalhe_curso["frequencia_minima"] . "%");
                     $this->campoRotulo("frequencia_minima2", "Frequencia M&iacute;nima (Horas)", ceil($detalhe_curso["frequencia_minima"] / 100 * $detalhe_curso["carga_horaria"]));
                     if ($detalhe_curso["hora_falta"]) {
                         $maximo_faltas = floor($detalhe_curso["carga_horaria"] / $detalhe_curso["hora_falta"] - $detalhe_curso["frequencia_minima"] / 100 * $detalhe_curso["carga_horaria"] / $detalhe_curso["hora_falta"]);
                     } else {
                         $maximo_faltas = "Ilimitado";
                     }
                     $this->campoRotulo("frequencia_minima3", "M&aacute;ximo de faltas (quantidade)", $maximo_faltas);
                     // descobre o ano letivo em andamento
                     $objEscolaAnoLetivo = new clsPmieducarEscolaAnoLetivo();
                     $objEscolaAnoLetivo->setOrderby("data_cadastro DESC");
                     $objEscolaAnoLetivo->setLimite(1);
                     $lista_anoletivo = $objEscolaAnoLetivo->lista($this->ref_ref_cod_escola, null, null, null, 1);
                     if (is_array($lista_anoletivo)) {
                         foreach ($lista_anoletivo as $value) {
                             $ano = $value["ano"];
                         }
                     }
                     $boletim = false;
                     $descricao = "";
                     $objExcessoes = new clsPmieducarMatriculaExcessao();
                     $lista_excessoes = $objExcessoes->lista(null, $this->ref_cod_turma, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, true, true, IS_NULL);
                     if (is_array($lista_excessoes)) {
                         $this->campoQuebra2();
                         $this->campoRotulo("descricao", "Aviso", "Existem alunos que reprovaram por falta e pegaram exame.<br>Você deve decidir se permitirá que eles façam exame ou reprovem.");
                         $opcoes_excessao = array("" => "Selecione", "0" => "Reprovar", "1" => "Permitir Exame");
                         // ainda tem alguma excessao que precisa de exame
                         foreach ($lista_excessoes as $excessao) {
                             $this->campoQuebra2();
                             $this->campoQuebra2("#E4E9ED", 20);
                             $objMatricula = new clsPmieducarMatricula($excessao["ref_cod_matricula"]);
                             $detalhe_matricula = $objMatricula->detalhe();
                             $this->campoRotulo("nome[{$excessao["ref_cod_matricula"]}]", "Aluno", "{$detalhe_matricula["nome"]}");
                             // boletim
                             $boletim = $this->getBoletimAluno($excessao["ref_cod_matricula"], $ano);
                             $this->campoRotulo("boletim[{$excessao["cod_aluno_excessao"]}]", "Boletim", $boletim["boletim"]);
                             $this->campoLista("excessao[{$excessao["cod_aluno_excessao"]}]", "Resultado final", $opcoes_excessao, false, "", false, "", "", false, false);
                             $this->campoRotulo("sugestao[{$excessao["cod_aluno_excessao"]}]", "Autom&aacute;tico", $boletim["automatico"]);
                             $this->campoQuebra2("#FFFFFF", 20);
                         }
                     } else {
                         $lista_excessoes = $objExcessoes->lista(null, $this->ref_cod_turma, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, true, false);
                         if (is_array($lista_excessoes)) {
                             $this->campoQuebra2();
                             $this->campoRotulo("descricao", "Aviso", "Existem alunos que reprovaram por falta mas foram aprovados em notas.<br>Você deve decidir se eles ser�o aprovados ou reprovados.");
                             $opcoes_excessao = array("" => "Selecione", "0" => "Reprovar", "2" => "Aprovar");
                             // so existem excessoes para aprovacao direta
                             foreach ($lista_excessoes as $excessao) {
                                 $this->campoQuebra2();
                                 $this->campoQuebra2("#E4E9ED", 20);
                                 $objMatricula = new clsPmieducarMatricula($excessao["ref_cod_matricula"]);
                                 $detalhe_matricula = $objMatricula->detalhe();
                                 $this->campoRotulo("nome[{$excessao["ref_cod_matricula"]}]", "Aluno", "{$detalhe_matricula["nome"]}");
                                 // boletim
                                 $boletim = $this->getBoletimAluno($excessao["ref_cod_matricula"], $ano);
                                 $this->campoRotulo("boletim[{$excessao["cod_aluno_excessao"]}]", "Boletim", $boletim["boletim"]);
                                 $this->campoLista("excessao[{$excessao["cod_aluno_excessao"]}]", "Resultado final", $opcoes_excessao, false, "", false, "", "", false, false);
                                 $this->campoRotulo("sugestao[{$excessao["cod_aluno_excessao"]}]", "Autom&aacute;tico", $boletim["automatico"]);
                                 $this->campoQuebra2("#FFFFFF", 20);
                             }
                         } else {
                             // por algum motivo ele mandou o cara pra tela de excessoes, mas nao existe nenhuma excessao
                             $this->campoRotulo("alerta", "Alerta", "Erro: [4] Nenhum aluno reprovado por faltas pendente.");
                             //						header("location: educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}");
                             //						die();
                         }
                     }
                 } else {
                     if ($this->passo == 3) {
                         // vamos exibir alguns dados extras sobre o curso (padroes de aprovacao / reprovacao)
                         $this->campoQuebra2();
                         $objTipoAvaliacaoValor = new clsPmieducarTipoAvaliacaoValores();
                         $this->campoRotulo("media_normal", "M&eacute;dia", $objTipoAvaliacaoValor->nomeNota($detalhe_curso["media"], $detalhe_curso["ref_cod_tipo_avaliacao"]));
                         $this->campoRotulo("media_exame", "M&eacute;dia Exame", $objTipoAvaliacaoValor->nomeNota($detalhe_curso["media_exame"], $detalhe_curso["ref_cod_tipo_avaliacao"]));
                         if ($detalhe_curso["falta_ch_globalizada"]) {
                             $tipo_falta = "Globalizada";
                         } else {
                             $tipo_falta = "por Disciplina";
                         }
                         $this->campoRotulo("tipo_falta", "Tipo de Falta", $tipo_falta);
                         $this->campoRotulo("carga_horaria", "Carga Hor&aacute;ria", $detalhe_curso["carga_horaria"]);
                         $this->campoRotulo("hora_falta", "Horas por Falta", $detalhe_curso["hora_falta"]);
                         $this->campoRotulo("frequencia_minima1", "Frequencia M&iacute;nima (%)", $detalhe_curso["frequencia_minima"] . "%");
                         $this->campoRotulo("frequencia_minima2", "Frequencia M&iacute;nima (Horas)", ceil($detalhe_curso["frequencia_minima"] / 100 * $detalhe_curso["carga_horaria"]));
                         if ($detalhe_curso["hora_falta"]) {
                             $maximo_faltas = floor($detalhe_curso["carga_horaria"] / $detalhe_curso["hora_falta"] - $detalhe_curso["frequencia_minima"] / 100 * $detalhe_curso["carga_horaria"] / $detalhe_curso["hora_falta"]);
                         } else {
                             $maximo_faltas = "Ilimitado";
                         }
                         $this->campoRotulo("frequencia_minima3", "M&aacute;ximo de faltas (quantidade)", $maximo_faltas);
                         //				mostra a lista de todos alunos e a opcao de aprovar/reprovar (exceto os ja aprovados/reprovados)
                         $matriculas = $objTurma->matriculados();
                         if ($matriculas) {
                             // descobre o ano letivo em andamento
                             $objEscolaAnoLetivo = new clsPmieducarEscolaAnoLetivo();
                             $objEscolaAnoLetivo->setOrderby("data_cadastro DESC");
                             $objEscolaAnoLetivo->setLimite(1);
                             $lista_anoletivo = $objEscolaAnoLetivo->lista($this->ref_ref_cod_escola, null, null, null, 1);
                             if (is_array($lista_anoletivo)) {
                                 foreach ($lista_anoletivo as $value) {
                                     $ano = $value["ano"];
                                 }
                             }
                             $objMat = new clsPmieducarMatricula();
                             $objMat->setOrderby("nome ASC");
                             $lista_matriculas = $objMat->lista(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, $matriculas);
                             if (is_array($lista_matriculas)) {
                                 foreach ($lista_matriculas as $matricula) {
                                     $this->campoQuebra2();
                                     $this->campoQuebra2("#E4E9ED", 20);
                                     $this->campoRotulo("nome[{$matricula["cod_matricula"]}]", "Aluno", "{$matricula["nome"]}");
                                     // boletim
                                     $boletim = $this->getBoletimAluno($matricula["cod_matricula"], $ano);
                                     $this->campoRotulo("boletim[{$matricula["cod_matricula"]}]", "Boletim", $boletim["boletim"]);
                                     $this->campoRotulo("sugestao[{$matricula["cod_matricula"]}]", "Autom&aacute;tico", $boletim["automatico"]);
                                     //							if ($this->pula_passo)
                                     //								$this->campoLista("resultado_final[{$matricula["cod_matricula"]}]","Resultado final",array(""=>"Selecione","1"=>"Aprovado","2"=>"Reprovado"),"","",false,"","",false,true);
                                     //							else
                                     $this->campoLista("resultado_final[{$matricula["cod_matricula"]}]", "Resultado final", array("" => "Selecione", "1" => "Aprovado", "2" => "Reprovado"), "", "", false, "", "", false, false);
                                     $this->campoQuebra2("#FFFFFF", 20);
                                 }
                             }
                         } else {
                             $this->mensagem = "Erro ao procurar alunos sem nota nessa disciplina";
                         }
                     }
                 }
             }
         }
         //			guardando dados para os outros passos
         if ($this->pula_passo) {
             $this->campoOculto("passo", 3);
             $this->campoOculto("pula_passo", 1);
             $this->campoOculto("ref_cod_tipo_avaliacao", $this->ref_cod_tipo_avaliacao);
             //				$this->pula_passo = false;
         } else {
             $this->campoOculto("passo", $this->passo + 1);
         }
         $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);
         $this->campoOculto("falta_ch_globalizada", $this->falta_ch_globalizada);
         $this->campoOculto("num_modulo", $this->num_modulo);
         $this->campoOculto("max_modulos", $this->max_modulos);
         $this->campoOculto("exame", $this->exame);
     } else {
         $this->campoRotulo("erro", "Erro", "Turma inexistente");
         return false;
     }
     return true;
 }
예제 #14
0
 function Excluir()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_excluir(578, $this->pessoa_logada, 7, 'educar_matricula_lst.php?ref_cod_aluno=' . $this->ref_cod_aluno);
     $obj_matricula_turma = new clsPmieducarMatriculaTurma();
     $lst_matricula_turma = $obj_matricula_turma->lista($this->cod_matricula, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
     if (is_array($lst_matricula_turma)) {
         $det_matricula_turma = array_shift($lst_matricula_turma);
         $obj_matricula_turma = new clsPmieducarMatriculaTurma($det_matricula_turma['ref_cod_matricula'], $det_matricula_turma['ref_cod_turma'], $this->pessoa_logada, NULL, NULL, NULL, 0, NULL, $det_matricula_turma['sequencial']);
         $editou = $obj_matricula_turma->edita();
         if (!$editou) {
             $this->mensagem = 'Edição não realizada.<br />';
             return FALSE;
         }
     }
     $obj_matricula = new clsPmieducarMatricula($this->cod_matricula);
     $det_matricula = $obj_matricula->detalhe();
     $ref_cod_serie = $det_matricula['ref_ref_cod_serie'];
     $obj_sequencia = new clsPmieducarSequenciaSerie();
     $lst_sequencia = $obj_sequencia->lista(NULL, $ref_cod_serie, NULL, NULL, NULL, NULL, NULL, NULL, 1);
     // Verifica se a série da matrícula cancelada é sequência de alguma outra série
     if (is_array($lst_sequencia)) {
         $det_sequencia = array_shift($lst_sequencia);
         $ref_serie_origem = $det_sequencia['ref_serie_origem'];
         $obj_matricula = new clsPmieducarMatricula();
         $lst_matricula = $obj_matricula->lista(NULL, NULL, NULL, $ref_serie_origem, NULL, NULL, $this->ref_cod_aluno, NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, NULL, 0);
         // Verifica se o aluno tem matrícula na série encontrada
         if (is_array($lst_matricula)) {
             $det_matricula = array_shift($lst_matricula);
             $ref_cod_matricula = $det_matricula['cod_matricula'];
             $obj = new clsPmieducarMatricula($ref_cod_matricula, NULL, NULL, NULL, $this->pessoa_logada, NULL, NULL, NULL, NULL, NULL, 1, NULL, 1);
             $editou1 = $obj->edita();
             if (!$editou1) {
                 $this->mensagem = 'Não foi possível editar a "Última Matrícula da Sequência".<br />';
                 return FALSE;
             }
         }
     }
     $obj = new clsPmieducarMatricula($this->cod_matricula, NULL, NULL, NULL, $this->pessoa_logada, NULL, NULL, NULL, NULL, NULL, 0);
     $excluiu = $obj->excluir();
     if ($excluiu) {
         $this->mensagem .= 'Exclusão efetuada com sucesso.<br />';
         header('Location: educar_matricula_lst.php?ref_cod_aluno=' . $this->ref_cod_aluno);
         die;
     }
     $this->mensagem = 'Exclusão não realizada.<br />';
     return FALSE;
 }
 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 Gerar()
 {
     /**
      * 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($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->ref_cod_instituicao = $det_escola['ref_cod_instituicao'];
     $obj_matricula_turma = new clsPmieducarMatriculaTurma();
     $lst_matricula_turma = $obj_matricula_turma->lista($this->ref_cod_matricula, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_serie, NULL, $this->ref_cod_escola);
     if (is_array($lst_matricula_turma)) {
         $det = array_shift($lst_matricula_turma);
         $this->ref_cod_turma = $det['ref_cod_turma'];
         $this->ref_sequencial = $det['sequencial'];
     }
     $this->campoRotulo('nm_aluno', 'Nome do Aluno', $det_aluno['nome_aluno']);
     if (!isset($this->ref_cod_turma)) {
         $this->mensagem = 'Para dispensar um aluno de um componente curricular, é necessário que este esteja enturmado.';
         return;
     }
     // primary keys
     $this->campoOculto('ref_cod_matricula', $this->ref_cod_matricula);
     $this->campoOculto('ref_cod_serie', $this->ref_cod_serie);
     $this->campoOculto('ref_cod_escola', $this->ref_cod_escola);
     $opcoes = array('' => 'Selecione');
     // Seleciona os componentes curriculares da turma
     try {
         $componentes = App_Model_IedFinder::getComponentesTurma($this->ref_cod_serie, $this->ref_cod_escola, $this->ref_cod_turma);
     } catch (App_Model_Exception $e) {
         $this->mensagem = $e->getMessage();
         return;
     }
     foreach ($componentes as $componente) {
         $opcoes[$componente->id] = $componente->nome;
     }
     if ($this->ref_cod_disciplina) {
         $this->campoRotulo('nm_disciplina', 'Disciplina', $opcoes[$this->ref_cod_disciplina]);
         $this->campoOculto('ref_cod_disciplina', $this->ref_cod_disciplina);
     } else {
         $this->campoLista('ref_cod_disciplina', 'Disciplina', $opcoes, $this->ref_cod_disciplina);
     }
     $opcoes = array('' => 'Selecione');
     $objTemp = new clsPmieducarTipoDispensa();
     if ($this->ref_cod_instituicao) {
         $lista = $objTemp->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_instituicao);
     } else {
         $lista = $objTemp->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
     }
     if (is_array($lista) && count($lista)) {
         foreach ($lista as $registro) {
             $opcoes[$registro['cod_tipo_dispensa']] = $registro['nm_tipo'];
         }
     }
     $this->campoLista('ref_cod_tipo_dispensa', 'Tipo Dispensa', $opcoes, $this->ref_cod_tipo_dispensa);
     $this->campoMemo('observacao', 'Observação', $this->observacao, 60, 10, FALSE);
 }
 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());
 }
예제 #18
0
 function Gerar()
 {
     // carrega estilo para feedback messages, exibindo msgs da api.
     $style = "/modules/Portabilis/Assets/Stylesheets/Frontend.css";
     Portabilis_View_Helper_Application::loadStylesheet($this, $style);
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Matrícula - Detalhe";
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->ref_cod_matricula = $_GET["cod_matricula"];
     $obj_matricula = new clsPmieducarMatricula();
     $lst_matricula = $obj_matricula->lista($this->ref_cod_matricula);
     if ($lst_matricula) {
         $registro = array_shift($lst_matricula);
     }
     if (!$registro) {
         header("Location: educar_aluno_det.php?cod_aluno=" . $registro['ref_cod_aluno']);
         die;
     }
     // 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'];
     // Série
     $obj_serie = new clsPmieducarSerie($registro['ref_ref_cod_serie']);
     $det_serie = $obj_serie->detalhe();
     $registro['ref_ref_cod_serie'] = $det_serie['nm_serie'];
     // Nome 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 aluno
     $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);
         $nm_aluno = $det_aluno['nome_aluno'];
     }
     if ($registro['cod_matricula']) {
         $this->addDetalhe(array('Número Matrícula', $registro['cod_matricula']));
     }
     if ($nm_aluno) {
         $this->addDetalhe(array('Aluno', $nm_aluno));
     }
     if ($registro['ref_cod_instituicao']) {
         $this->addDetalhe(array('Instituição', $registro['ref_cod_instituicao']));
     }
     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érie', $registro['ref_ref_cod_serie']));
     }
     // Nome da turma
     $enturmacoes = new clsPmieducarMatriculaTurma();
     $enturmacoes = $enturmacoes->lista($this->ref_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);
     if ($nomesTurmas) {
         $this->addDetalhe(array('Turma', $nomesTurmas));
     } else {
         $this->addDetalhe(array('Turma', ''));
     }
     if ($registro['ref_cod_reserva_vaga']) {
         $this->addDetalhe(array('Número Reserva Vaga', $registro['ref_cod_reserva_vaga']));
     }
     $campoObs = false;
     if ($registro['aprovado']) {
         if ($registro['aprovado'] == 1) {
             $aprovado = 'Aprovado';
         } elseif ($registro['aprovado'] == 2) {
             $aprovado = 'Reprovado';
         } elseif ($registro['aprovado'] == 3) {
             $aprovado = 'Em Andamento';
         } elseif ($registro['aprovado'] == 4) {
             $aprovado = 'Transferido';
         } elseif ($registro['aprovado'] == 5) {
             $aprovado = 'Reclassificado';
         } elseif ($registro['aprovado'] == 6) {
             $aprovado = 'Abandono';
             $campoObs = true;
         } elseif ($registro['aprovado'] == 7) {
             $aprovado = 'Em Exame';
         }
         $this->addDetalhe(array('Situação', $aprovado));
     }
     if ($campoObs) {
         $this->addDetalhe(array('Observação', $registro['observacao']));
     }
     $this->addDetalhe(array('Formando', $registro['formando'] == 0 ? 'N&atilde;o' : 'Sim'));
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7)) {
         // verifica se existe transferencia
         if ($registro['aprovado'] != 4 && $registro['aprovado'] != 6) {
             $obj_transferencia = new clsPmieducarTransferenciaSolicitacao();
             $lst_transferencia = $obj_transferencia->lista(NULL, NULL, NULL, NULL, NULL, $registro['cod_matricula'], NULL, NULL, NULL, NULL, NULL, 1, NULL, NULL, $registro['ref_cod_aluno'], FALSE);
             // verifica se existe uma solicitacao de transferencia INTERNA
             if (is_array($lst_transferencia)) {
                 $det_transferencia = array_shift($lst_transferencia);
             }
             $data_transferencia = $det_transferencia['data_transferencia'];
         }
         if ($registro['aprovado'] == 3 && (!is_array($lst_transferencia) && !isset($data_transferencia))) {
             $this->array_botao[] = 'Cancelar Matrícula';
             $this->array_botao_url_script[] = "if(confirm(\"Deseja realmente cancelar esta matrícula?\"))go(\"educar_matricula_cad.php?cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}\")";
             $this->array_botao[] = 'Ocorrências Disciplinares';
             $this->array_botao_url_script[] = "go(\"educar_matricula_ocorrencia_disciplinar_lst.php?ref_cod_matricula={$registro['cod_matricula']}\")";
             // Apenas libera a dispensa de disciplina quando o aluno estiver enturmado
             if ($registro['ref_ref_cod_serie'] && $nomesTurmas) {
                 $this->array_botao[] = 'Dispensa de Componentes Curriculares';
                 $this->array_botao_url_script[] = "go(\"educar_dispensa_disciplina_lst.php?ref_cod_matricula={$registro['cod_matricula']}\")";
             }
             $this->array_botao[] = 'Enturmar';
             $this->array_botao_url_script[] = "go(\"educar_matricula_turma_lst.php?ref_cod_matricula={$registro['cod_matricula']}\")";
             $this->array_botao[] = 'Abandono';
             $this->array_botao_url_script[] = "go(\"educar_abandono_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}\");";
             if ($registro['ref_ref_cod_serie']) {
                 $this->array_botao[] = 'Reclassificar';
                 $this->array_botao_url_script[] = "go(\"educar_matricula_reclassificar_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}\")";
             }
         }
         if ($registro['aprovado'] != 4 && $registro['aprovado'] != 6) {
             if (is_array($lst_transferencia) && !isset($data_transferencia)) {
                 $this->array_botao[] = 'Cancelar Solicitação Transferência (escola do sistema)';
                 $this->array_botao_url_script[] = "go(\"educar_transferencia_solicitacao_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}&cancela=true\")";
             } else {
                 if ($registro['ref_ref_cod_serie']) {
                     $this->array_botao[] = 'Solicitar Transferência';
                     $this->array_botao_url_script[] = "go(\"educar_transferencia_solicitacao_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}\")";
                 }
             }
             if ($registro['aprovado'] == 3 && (!is_array($lst_transferencia) && !isset($data_transferencia))) {
                 if ($registro['formando'] == 0) {
                     $this->array_botao[] = 'Formando';
                     $this->array_botao_url_script[] = "if(confirm(\"Deseja marcar a matrícula como formando?\"))go(\"educar_matricula_formando_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}&formando=1\")";
                 } else {
                     $this->array_botao[] = "Desmarcar como Formando";
                     $this->array_botao_url_script[] = "if(confirm(\"Deseja desmarcar a matrícula como formando?\"))go(\"educar_matricula_formando_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}&formando=0\")";
                 }
             }
         }
         if ($registro['aprovado'] == 4 && $this->canCancelTransferenciaExterna($registro['cod_matricula'], $registro['ref_cod_aluno'])) {
             $this->array_botao[] = 'Cancelar transferência (escola externa)';
             # TODO ver se código, seta matricula como em andamento, ativa ultima matricula_turma for matricula, e desativa transferencia solicitacao
             $this->array_botao_url_script[] = "go(\"educar_transferencia_solicitacao_cad.php?ref_cod_matricula={$registro['cod_matricula']}&ref_cod_aluno={$registro['ref_cod_aluno']}&cancela=true&reabrir_matricula=true\")";
         }
         if ($registro['aprovado'] == App_Model_MatriculaSituacao::ABANDONO) {
             $this->array_botao[] = "Desfazer abandono";
             $this->array_botao_url_script[] = "deleteAbandono({$registro['cod_matricula']})";
         }
     }
     $this->url_cancelar = 'educar_aluno_det.php?cod_aluno=' . $registro['ref_cod_aluno'];
     $this->largura = '100%';
     // js
     Portabilis_View_Helper_Application::loadJQueryLib($this);
     $scripts = array('/modules/Portabilis/Assets/Javascripts/Utils.js', '/modules/Portabilis/Assets/Javascripts/ClientApi.js', '/modules/Cadastro/Assets/Javascripts/MatriculaShow.js');
     Portabilis_View_Helper_Application::loadJavascript($this, $scripts);
 }
 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()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     // Helper para url
     $urlHelper = CoreExt_View_Helper_UrlHelper::getInstance();
     $this->titulo = 'Dispensa Componente Curricular - Listagem';
     // passa todos os valores obtidos no GET para atributos do objeto
     foreach ($_GET as $var => $val) {
         $this->{$var} = $val === '' ? NULL : $val;
     }
     if (!$_GET['ref_cod_matricula']) {
         header('Location: educar_matricula_lst.php');
         die;
     }
     $this->ref_cod_matricula = $_GET['ref_cod_matricula'];
     $obj_matricula = new clsPmieducarMatricula();
     $lst_matricula = $obj_matricula->lista($this->ref_cod_matricula);
     if (is_array($lst_matricula)) {
         $det_matricula = array_shift($lst_matricula);
         $this->ref_cod_instituicao = $det_matricula['ref_cod_instituicao'];
         $this->ref_cod_escola = $det_matricula['ref_ref_cod_escola'];
         $this->ref_cod_serie = $det_matricula['ref_ref_cod_serie'];
         $obj_matricula_turma = new clsPmieducarMatriculaTurma();
         $lst_matricula_turma = $obj_matricula_turma->lista($this->ref_cod_matricula, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_serie, NULL, $this->ref_cod_escola);
         if (is_array($lst_matricula_turma)) {
             $det = array_shift($lst_matricula_turma);
             $this->ref_cod_turma = $det['ref_cod_turma'];
             $this->ref_sequencial = $det['sequencial'];
         }
     }
     $this->campoOculto('ref_cod_turma', $this->ref_cod_turma);
     $this->addBanner('imagens/nvp_top_intranet.jpg', 'imagens/nvp_vert_intranet.jpg', 'Intranet');
     $this->addCabecalhos(array('Disciplina', 'Tipo Dispensa', 'Data Dispensa'));
     // Filtros de Foreign Keys
     $opcoes = array('' => 'Selecione');
     $objTemp = new clsPmieducarTipoDispensa();
     if ($this->ref_cod_instituicao) {
         $lista = $objTemp->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_instituicao);
     } else {
         $lista = $objTemp->lista(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
     }
     if (is_array($lista) && count($lista)) {
         foreach ($lista as $registro) {
             $opcoes[$registro['cod_tipo_dispensa']] = $registro['nm_tipo'];
         }
     }
     $this->campoLista('ref_cod_tipo_dispensa', 'Motivo', $opcoes, $this->ref_cod_tipo_dispensa, '', FALSE, '', '', FALSE, FALSE);
     $this->campoOculto('ref_cod_matricula', $this->ref_cod_matricula);
     // outros Filtros
     $opcoes = array('' => 'Selecione');
     // Escola série disciplina
     $componentes = App_Model_IedFinder::getComponentesTurma($this->ref_cod_serie, $this->ref_cod_escola, $this->ref_cod_turma);
     foreach ($componentes as $componente) {
         $opcoes[$componente->id] = $componente->nome;
     }
     $this->campoLista('ref_cod_disciplina', 'Disciplina', $opcoes, $this->ref_cod_disciplina, '', FALSE, '', '', FALSE, FALSE);
     // Paginador
     $this->limite = 20;
     $this->offset = $_GET['pagina_' . $this->nome] ? $_GET['pagina_' . $this->nome] * $this->limite - $this->limite : 0;
     $obj_dispensa_disciplina = new clsPmieducarDispensaDisciplina();
     $obj_dispensa_disciplina->setOrderby('data_cadastro ASC');
     $obj_dispensa_disciplina->setLimite($this->limite, $this->offset);
     $lista = $obj_dispensa_disciplina->lista($this->ref_cod_matricula, NULL, NULL, $this->ref_cod_disciplina, NULL, NULL, $this->ref_cod_tipo_dispensa, NULL, NULL, NULL, NULL, 1);
     $total = $obj_dispensa_disciplina->_total;
     // Mapper de componente curricular
     $componenteMapper = new ComponenteCurricular_Model_ComponenteDataMapper();
     // monta a lista
     if (is_array($lista) && count($lista)) {
         foreach ($lista as $registro) {
             // muda os campos data
             $registro['data_cadastro_time'] = strtotime(substr($registro['data_cadastro'], 0, 16));
             $registro['data_cadastro_br'] = date('d/m/Y', $registro['data_cadastro_time']);
             // Tipo da dispensa
             $obj_ref_cod_tipo_dispensa = new clsPmieducarTipoDispensa($registro['ref_cod_tipo_dispensa']);
             $det_ref_cod_tipo_dispensa = $obj_ref_cod_tipo_dispensa->detalhe();
             $registro['ref_cod_tipo_dispensa'] = $det_ref_cod_tipo_dispensa['nm_tipo'];
             // Componente curricular
             $componente = $componenteMapper->find($registro['ref_cod_disciplina']);
             // Dados para a url
             $url = 'educar_dispensa_disciplina_det.php';
             $options = array('query' => array('ref_cod_matricula' => $registro['ref_cod_matricula'], 'ref_cod_serie' => $registro['ref_cod_serie'], 'ref_cod_escola' => $registro['ref_cod_escola'], 'ref_cod_disciplina' => $registro['ref_cod_disciplina']));
             $this->addLinhas(array($urlHelper->l($componente->nome, $url, $options), $urlHelper->l($registro['ref_cod_tipo_dispensa'], $url, $options), $urlHelper->l($registro['data_cadastro_br'], $url, $options)));
         }
     }
     $this->addPaginador2('educar_dispensa_disciplina_lst.php', $total, $_GET, $this->nome, $this->limite);
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7)) {
         $this->array_botao_url[] = 'educar_dispensa_disciplina_cad.php?ref_cod_matricula=' . $this->ref_cod_matricula;
         $this->array_botao[] = 'Novo';
     }
     $this->array_botao_url[] = 'educar_matricula_det.php?cod_matricula=' . $this->ref_cod_matricula;
     $this->array_botao[] = 'Voltar';
     $this->largura = '100%';
 }
 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
 }
예제 #22
0
 function Inicializar()
 {
     session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->tab_habilitado = TRUE;
     $this->cod_aluno = $_GET['cod_aluno'];
     $this->retorno = 'Novo';
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(578, $this->pessoa_logada, 7, 'educar_aluno_lst.php');
     if (is_numeric($this->cod_aluno)) {
         $ref_cod_aluno = $this->cod_aluno;
         $obj = new clsPmieducarAluno($this->cod_aluno);
         $registro = $obj->detalhe();
         if ($registro) {
             foreach ($registro as $campo => $val) {
                 // passa todos os valores obtidos no registro para atributos do objeto
                 $this->{$campo} = $val;
             }
             $obj_matricula = new clsPmieducarMatricula();
             $lst_matricula = $obj_matricula->lista(NULL, NULL, NULL, NULL, NULL, NULL, $this->cod_aluno);
             if ($lst_matricula) {
                 //** verificao de permissao para exclusao
                 $this->fexcluir = $obj_permissoes->permissao_excluir(578, $this->pessoa_logada, 7);
             }
             $this->retorno = 'Editar';
             $this->tab_habilitado = FALSE;
         }
     }
     $this->url_cancelar = $this->cod_aluno ? 'educar_aluno_det.php?cod_aluno=' . $this->cod_aluno : 'educar_aluno_lst.php';
     $this->nome_url_cancelar = 'Cancelar';
     return $this->retorno;
 }
    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>";
    }
예제 #24
0
 function Gerar()
 {
     session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = 'Reserva Vaga - Detalhe';
     $this->addBanner('imagens/nvp_top_intranet.jpg', 'imagens/nvp_vert_intranet.jpg', 'Intranet');
     $this->ref_cod_serie = $_GET['ref_cod_serie'];
     $this->ref_cod_escola = $_GET['ref_cod_escola'];
     $tmp_obj = new clsPmieducarEscolaSerie();
     $lst_obj = $tmp_obj->lista($this->ref_cod_escola, $this->ref_cod_serie);
     $registro = array_shift($lst_obj);
     if (!$registro) {
         header('Location: educar_reserva_vaga_lst.php');
         die;
     }
     // Instituição
     $obj_ref_cod_instituicao = new clsPmieducarInstituicao($registro['ref_cod_instituicao']);
     $det_ref_cod_instituicao = $obj_ref_cod_instituicao->detalhe();
     $registro['ref_cod_instituicao'] = $det_ref_cod_instituicao['nm_instituicao'];
     // Escola
     $obj_ref_cod_escola = new clsPmieducarEscola($registro['ref_cod_escola']);
     $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
     $nm_escola = $det_ref_cod_escola['nome'];
     // Série
     $obj_ref_cod_serie = new clsPmieducarSerie($registro['ref_cod_serie']);
     $det_ref_cod_serie = $obj_ref_cod_serie->detalhe();
     $nm_serie = $det_ref_cod_serie['nm_serie'];
     // Curso
     $obj_curso = new clsPmieducarCurso($registro['ref_cod_curso']);
     $det_curso = $obj_curso->detalhe();
     $registro['ref_cod_curso'] = $det_curso['nm_curso'];
     // Matrícula
     $obj_matricula = new clsPmieducarMatricula();
     $lst_matricula = $obj_matricula->lista(NULL, NULL, $registro['ref_cod_escola'], $registro['ref_cod_serie'], NULL, NULL, NULL, 3, NULL, NULL, NULL, NULL, 1);
     if (is_array($lst_matricula)) {
         $matriculados = count($lst_matricula);
     }
     // Detalhes da reserva
     $obj_reserva_vaga = new clsPmieducarReservaVaga();
     $lst_reserva_vaga = $obj_reserva_vaga->lista(NULL, $registro['ref_cod_escola'], $registro['ref_cod_serie'], NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
     if (is_array($lst_reserva_vaga)) {
         $reservados = count($lst_reserva_vaga);
     }
     // Permissões
     $obj_permissao = new clsPermissoes();
     $nivel_usuario = $obj_permissao->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));
     }
     $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);
     if (is_array($lst_turmas)) {
         $cont = 0;
         $total_vagas = 0;
         $html = "\n        <table width='50%' cellspacing='0' cellpadding='0' border='0'>\n          <tr>\n            <td bgcolor=#A1B3BD>Nome</td>\n            <td bgcolor=#A1B3BD>N&uacute;mero Vagas</td>\n          </tr>";
         foreach ($lst_turmas as $turmas) {
             $total_vagas += $turmas['max_aluno'];
             if ($cont % 2 == 0) {
                 $class = ' formmdtd ';
             } else {
                 $class = ' formlttd ';
             }
             $cont++;
             $html .= "\n          <tr>\n            <td class={$class} width='35%'>{$turmas["nm_turma"]}</td>\n            <td class={$class} width='15%'>{$turmas["max_aluno"]}</td>\n          </tr>";
         }
         $html .= '</tr></table>';
         $this->addDetalhe(array('Turma', $html));
         if ($total_vagas) {
             $this->addDetalhe(array('Total Vagas', $total_vagas));
         }
         if ($matriculados) {
             $this->addDetalhe(array('Matriculados', $matriculados));
         }
         if ($reservados) {
             $this->addDetalhe(array('Reservados', $reservados));
         }
         $vagas_restantes = $total_vagas - ($matriculados + $reservados);
         $this->addDetalhe(array('Vagas Restantes', $vagas_restantes));
     }
     if ($obj_permissao->permissao_cadastra(639, $this->pessoa_logada, 7)) {
         $this->array_botao = array('Reservar Vaga', 'Vagas Reservadas');
         $this->array_botao_url = array("educar_reserva_vaga_cad.php?ref_cod_escola={$registro["ref_cod_escola"]}&ref_cod_serie={$registro["ref_cod_serie"]}", 'educar_reservada_vaga_lst.php?ref_cod_escola=' . $registro['ref_cod_escola'] . '&ref_cod_serie=' . $registro['ref_cod_serie']);
     }
     $this->url_cancelar = 'educar_reserva_vaga_lst.php';
     $this->largura = '100%';
 }
예제 #25
0
    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 escreveEscolas($curso)
 {
     $fonte = 'arial';
     $corTexto = '#000000';
     $esquerda = 30;
     $direita = 782;
     $altura = 20;
     $espaco = 150.4;
     $this->novoCabecalho($curso);
     $ref_cod_escola_localizacao = 0;
     $primeiro_loop = true;
     $totais = array();
     $index = 0;
     $total_geral_curso = array();
     foreach ($this->lst_escola as $escola) {
         $obj_escola_curso = new clsPmieducarEscolaCurso($escola["cod_escola"], $curso["cod_curso"]);
         $det_escola_curso = $obj_escola_curso->detalhe();
         $index = 0;
         if (is_array($det_escola_curso)) {
             if ($ref_cod_escola_localizacao != $escola["ref_cod_escola_localizacao"] && !$primeiro_loop) {
                 $this->escreveTotal($totais, $total_geral_curso, $ref_cod_escola_localizacao);
                 $ref_cod_escola_localizacao = $escola["ref_cod_escola_localizacao"];
                 if ($this->page_y > $this->pdf->altura - 50) {
                     $this->pdf->ClosePage();
                     $this->pdf->OpenPage();
                     $this->addCabecalho();
                     $this->novoCabecalho($curso);
                     $fonte = 'arial';
                     $corTexto = '#000000';
                     $esquerda = 30;
                     $direita = 782;
                     $altura = 20;
                     $espaco = 150.4;
                     $primeiro_loop = true;
                 }
             }
             if ($primeiro_loop) {
                 $ref_cod_escola_localizacao = $escola["ref_cod_escola_localizacao"];
                 $primeiro_loop = false;
             }
             $this->pdf->quadrado_relativo($esquerda, $this->page_y, $direita, $altura);
             $this->pdf->escreve_relativo($this->substituiNomeEscola($escola["nome"]), $esquerda, $this->page_y, $espaco - 30, 100, $fonte, 8, $corTexto, 'center');
             $obj_serie = new clsPmieducarSerie();
             $obj_serie->setOrderby("nm_serie");
             $lst_serie = $obj_serie->lista(null, null, null, $curso["cod_curso"], null, null, null, null, null, null, null, null, 1);
             $esquerda = $espaco;
             foreach ($lst_serie as $serie) {
                 $horarios = array(0 => "6:00:00", 1 => "12:55:00", 2 => "17:55:00");
                 //, 3 => "TOTAL");
                 $espaco = 150.4;
                 $qtd_series = 0;
                 $qtd_series_relatorio = 4;
                 $esquerda_aux = 0;
                 $qtd_total_turmas = 0;
                 $qtd_total_alunos = 0;
                 for ($i = 0; $i < 4; $i++) {
                     $obj_turma = new clsPmieducarTurma();
                     $lst_turma = $obj_turma->lista(null, null, null, $serie["cod_serie"], $escola["cod_escola"], null, null, null, null, null, null, null, null, null, 1, null, $horarios[$i], $horarios[$i + 1]);
                     $qtd_turma = $obj_turma->_total;
                     $qtd_alunos = 0;
                     if (is_array($lst_turma) && count($lst_turma)) {
                         foreach ($lst_turma as $turma) {
                             $obj_matricula = new clsPmieducarMatricula();
                             $lst_matricula = $obj_matricula->lista(null, null, $escola["cod_escola"], $serie["cod_serie"], null, null, null, array(1, 2, 3), null, null, null, null, 1, $this->ano, $curso["cod_curso"], $this->ref_cod_instituicao, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, $turma["cod_turma"]);
                             $qtd_alunos += $obj_matricula->_total;
                         }
                     }
                     if ($i > 2) {
                         $qtd_turma = $qtd_total_turmas;
                         $qtd_alunos = $qtd_total_alunos;
                         $totais[$index++] += $qtd_turma;
                         $totais[$index++] += $qtd_alunos;
                         $total_geral_serie_escola["turma"] += $qtd_total_turmas;
                         $total_geral_serie_escola["aluno"] += $qtd_total_alunos;
                         $faz_quadrado = false;
                     } else {
                         $qtd_total_turmas += $qtd_turma;
                         $qtd_total_alunos += $qtd_alunos;
                         $totais[$index++] += $qtd_turma;
                         $totais[$index++] += $qtd_alunos;
                         if (!$qtd_turma) {
                             $qtd_turma = "";
                         }
                         if (!$qtd_alunos) {
                             $qtd_alunos = "";
                         }
                         $faz_quadrado = true;
                     }
                     $this->pdf->linha_relativa($esquerda + $esquerda_aux, $this->page_y, 0, $altura);
                     if (!empty($qtd_turma) || !$faz_quadrado) {
                         $this->pdf->escreve_relativo($qtd_turma, $esquerda + $esquerda_aux, $this->page_y + 4, $espaco / $qtd_series_relatorio / 2, 100, $fonte, 8, $corTexto, 'center');
                     } else {
                         $this->pdf->quadrado_relativo($esquerda + $esquerda_aux + 1, $this->page_y + 1, $espaco / $qtd_series_relatorio / 2 - 1, $altura - 1, 0.5, "#A1B3BD", "");
                     }
                     $this->pdf->linha_relativa($esquerda + $esquerda_aux + $espaco / $qtd_series_relatorio / 2, $this->page_y, 0, $altura);
                     if (!empty($qtd_alunos) || !$faz_quadrado) {
                         $this->pdf->escreve_relativo($qtd_alunos, $esquerda + $esquerda_aux + $espaco / $qtd_series_relatorio / 2, $this->page_y + 4, $espaco / $qtd_series_relatorio / 2, 100, $fonte, 8, $corTexto, 'center');
                     } else {
                         $this->pdf->quadrado_relativo($esquerda + $esquerda_aux + $espaco / $qtd_series_relatorio / 2 + 1, $this->page_y + 1, $espaco / $qtd_series_relatorio / 2 - 1, $altura - 1, 0.5, "#A1B3BD", "");
                     }
                     $this->pdf->linha_relativa($esquerda + $esquerda_aux + $espaco / $qtd_series_relatorio, $this->page_y, 0, $altura);
                     $esquerda_aux += $espaco / $qtd_series_relatorio;
                 }
                 $esquerda += $espaco;
             }
             $aux = 91;
             $total_geral_curso["turma"] += $total_geral_serie_escola["turma"];
             $total_geral_curso["aluno"] += $total_geral_serie_escola["aluno"];
             $this->pdf->escreve_relativo($total_geral_serie_escola["turma"], $esquerda, $this->page_y + 4, ($espaco + $aux) / $qtd_series_relatorio / 2, 100, $fonte, 8, $corTexto, 'center');
             $this->pdf->linha_relativa($esquerda + ($espaco - $aux) / 2, $this->page_y, 0, $altura);
             $this->pdf->escreve_relativo($total_geral_serie_escola["aluno"], $esquerda + ($espaco - $aux) / 2, $this->page_y + 4, ($espaco + $aux) / $qtd_series_relatorio / 2, 100, $fonte, 8, $corTexto, 'center');
             $this->pdf->linha_relativa($esquerda + $espaco - $aux, $this->page_y, 0, $altura);
             $total_geral_serie_escola = array();
             $this->page_y += 20;
             $esquerda = 30;
         }
         if ($this->page_y > $this->pdf->altura - 50) {
             $this->pdf->ClosePage();
             $this->pdf->OpenPage();
             $this->addCabecalho();
             $this->novoCabecalho($curso);
             $fonte = 'arial';
             $corTexto = '#000000';
             $esquerda = 30;
             $direita = 782;
             $altura = 20;
             $espaco = 150.4;
             $primeiro_loop = true;
         }
     }
     $this->escreveTotal($totais, $total_geral_curso, $ref_cod_escola_localizacao);
     $this->escreveTotalGeral();
 }
 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>";
     }
 }
예제 #28
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();
 }
예제 #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()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = 'Selecione uma turma para enturmar ou remover a enturmação';
     $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->addCabecalhos(array('Turma', 'Enturmado'));
     // 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->lista3(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->exibirBotaoSubmit = false;
     }
     #$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->lista3($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;
     }
     $enturmacoesMatricula = new clsPmieducarMatriculaTurma();
     $enturmacoesMatricula = $enturmacoesMatricula->lista3($this->ref_cod_matricula, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1);
     $turmasThisSerie = $lista;
     // lista turmas disponiveis para enturmacao, somente lista as turmas sem enturmacao
     foreach ($turmasThisSerie as $turma) {
         $turmaHasEnturmacao = false;
         foreach ($enturmacoesMatricula as $enturmacao) {
             if (!$turmaHasEnturmacao && $turma['cod_turma'] == $enturmacao['ref_cod_turma']) {
                 $turmaHasEnturmacao = true;
             }
         }
         if ($turmaHasEnturmacao) {
             $enturmado = "Sim";
         } else {
             $enturmado = "Não";
         }
         $script = sprintf('onclick="enturmar(\'%s\',\'%s\',\'%s\',\'%s\');"', $this->ref_cod_escola, $turma['ref_ref_cod_serie'], $this->ref_cod_matricula, $turma['cod_turma']);
         $this->addLinhas(array(sprintf('<a href="#" %s>%s</a>', $script, $turma['nm_turma']), $enturmado));
     }
     $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%';
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_index.php" => "i-Educar - Escola", "" => "Listagem de enturma&ccedil;&otilde;es da matr&iacute;cula"));
     $this->enviaLocalizacao($localizacao->montar());
 }