function rematricularAlunosAprovados()
 {
     $obj_matricula = new clsPmieducarMatricula();
     $lst_matricula = $obj_matricula->lista(null, null, $this->ref_cod_escola, null, null, null, null, 1, null, null, null, null, 1, $this->ano - 1, null, null, 1);
     if (!is_array($lst_matricula)) {
         return;
     }
     foreach ($lst_matricula as $key => $matricula) {
         $obj_sequencia = new clsPmieducarSequenciaSerie();
         $lst_sequencia = $obj_sequencia->lista($matricula['ref_ref_cod_serie'], null, null, null, null, null, null, null, 1);
         if (is_array($lst_sequencia) && count($lst_sequencia) == 1) {
             $det_sequencia = array_shift($lst_sequencia);
             $serie_destino = $det_sequencia["ref_serie_destino"];
             $obj_serie = new clsPmieducarSerie($serie_destino);
             $det_serie = $obj_serie->detalhe();
             $obj_escola_curso = new clsPmieducarEscolaCurso($this->ref_cod_escola, $det_serie["ref_cod_curso"]);
             if (is_array($obj_escola_curso->detalhe())) {
                 $obj = new clsPmieducarMatricula($matricula['cod_matricula'], null, null, null, $this->pessoa_logada, null, null, null, null, null, 1, null, 0);
                 $editou = $obj->edita();
                 if ($editou) {
                     $obj = new clsPmieducarMatricula(null, null, $this->ref_cod_escola, $serie_destino, null, $this->pessoa_logada, $matricula['ref_cod_aluno'], 3, null, null, 1, $this->ano, 1, null, null, null, null, $det_serie["ref_cod_curso"]);
                     $cadastra = $obj->cadastra();
                     if (!$cadastra) {
                         echo "<script>\n\t\t\t\t\t\t\t\t\talert('Erro ao matricular os alunos da Escola!');\n\t\t\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\t\t  </script>";
                     }
                 }
             }
         }
     }
 }
 function iniciarAnoLetivo()
 {
     /**
      * VERIFICA se nao existe ano em andamento
      */
     $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo();
     $existe_ano_andamento = $obj_ano_letivo->lista($this->ref_cod_escola, null, null, null, 1, null, null, null, null, 1);
     if ($existe_ano_andamento) {
         echo "<script>\n\t\t\t\t\talert('Não foi possível iniciar ano letivo, já existe ano em andamento!');\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>";
         die;
     }
     /**
      *  INICIALIZA ano letivo
      */
     $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo($this->ref_cod_escola, $this->ano, $this->pessoa_logada, $this->pessoa_logada, 1, 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 {
         // lista todos alunos desse Escola que tem a ultima matricula no ano anterior e situacao APROVADO
         $obj_matricula = new clsPmieducarMatricula();
         $lst_matricula = $obj_matricula->lista(null, null, $this->ref_cod_escola, null, null, null, null, 1, null, null, null, null, 1, $this->ano - 1, null, null, 1);
         if (is_array($lst_matricula)) {
             foreach ($lst_matricula as $key => $matricula) {
                 $obj_sequencia = new clsPmieducarSequenciaSerie();
                 $lst_sequencia = $obj_sequencia->lista($matricula['ref_ref_cod_serie'], null, null, null, null, null, null, null, 1);
                 // verifica qual eh a serie da sequencia
                 if (is_array($lst_sequencia) && count($lst_sequencia) == 1) {
                     //						echo "<pre>"; print_r($lst_sequencia);die;
                     $det_sequencia = array_shift($lst_sequencia);
                     $serie_destino = $det_sequencia["ref_serie_destino"];
                     $obj_serie = new clsPmieducarSerie($serie_destino);
                     $det_serie = $obj_serie->detalhe();
                     //verificar aqui se a escola possui o curso
                     //						echo "<pre>"; print_r($matricula); die();
                     $obj_escola_curso = new clsPmieducarEscolaCurso($this->ref_cod_escola, $det_serie["ref_cod_curso"]);
                     if (is_array($obj_escola_curso->detalhe())) {
                         $obj = new clsPmieducarMatricula($matricula['cod_matricula'], null, null, null, $this->pessoa_logada, null, null, null, null, null, 1, null, 0);
                         $editou = $obj->edita();
                         if ($editou) {
                             $obj = new clsPmieducarMatricula(null, null, $this->ref_cod_escola, $serie_destino, null, $this->pessoa_logada, $matricula['ref_cod_aluno'], 3, null, null, 1, $this->ano, 1, null, null, null, null, $det_serie["ref_cod_curso"]);
                             $cadastra = $obj->cadastra();
                             if (!$cadastra) {
                                 echo "<script>\n\t\t\t\t\t\t\t\t\t\t\talert('Erro ao matricular os alunos da Escola!');\n\t\t\t\t\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\t\t\t\t  </script>";
                             }
                         }
                     }
                 }
             }
         }
         // lista todos alunos desse Escola que tem a ultima matricula no ano anterior e situacao REPROVADO
         $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)) {
             //				echo "<pre>"; print_r($lst_matricula);die;
             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\t\t\talert('Erro ao matricular os alunos da Escola!');\n\t\t\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\t\t  </script>";
                     }
                 }
             }
         }
         echo "<script>\n\t\t\t\t\talert('Ano letivo inicializado com sucesso!');\n\t\t\t\t\twindow.location = 'educar_escola_det.php?cod_escola={$this->ref_cod_escola}#ano_letivo';\n\t\t\t\t  </script>";
     }
 }
 function 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();
 }