Ejemplo n.º 1
0
 function Editar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(561, $this->pessoa_logada, 3, "educar_escola_lst.php");
     //
     //		echo "<br>cep: ".$this->cep;
     //		echo "<br>cep_: ".$this->cep_;die;
     if ($this->cod_escola) {
         $obj = new clsPmieducarEscola($this->cod_escola, null, $this->pessoa_logada, $this->ref_cod_instituicao, $this->ref_cod_escola_localizacao, $this->ref_cod_escola_rede_ensino, $this->ref_idpes, $this->sigla, null, null, 1);
         $editou = $obj->edita();
     } else {
         $obj = new clsPmieducarEscola(null, $this->pessoa_logada, null, $this->ref_cod_instituicao, $this->ref_cod_escola_localizacao, $this->ref_cod_escola_rede_ensino, $this->ref_idpes, $this->sigla, null, null, 1);
         $editou = $obj->cadastra();
         $this->cod_escola = $editou;
     }
     if ($editou) {
         if ($this->com_cnpj) {
             $objPessoa = new clsPessoa_($this->ref_idpes, null, false, $this->p_http, false, $this->pessoa_logada, date("Y-m-d H:i:s", time()), $this->p_email);
             $editou1 = $objPessoa->edita();
             if ($editou1) {
                 $obj_pes_juridica = new clsJuridica($this->ref_idpes, $this->cnpj, $this->fantasia, false, false, false, $this->pessoa_logada);
                 $editou2 = $obj_pes_juridica->edita();
                 if ($editou2) {
                     $objTelefone = new clsPessoaTelefone($this->ref_idpes);
                     $objTelefone->excluiTodos();
                     $objTelefone = new clsPessoaTelefone($this->ref_idpes, 1, str_replace("-", "", $this->p_telefone_1), $this->p_ddd_telefone_1);
                     $objTelefone->cadastra();
                     $objTelefone = new clsPessoaTelefone($this->ref_idpes, 2, str_replace("-", "", $this->p_telefone_2), $this->p_ddd_telefone_2);
                     $objTelefone->cadastra();
                     $objTelefone = new clsPessoaTelefone($this->ref_idpes, 3, str_replace("-", "", $this->p_telefone_mov), $this->p_ddd_telefone_mov);
                     $objTelefone->cadastra();
                     $objTelefone = new clsPessoaTelefone($this->ref_idpes, 4, str_replace("-", "", $this->p_telefone_fax), $this->p_ddd_telefone_fax);
                     $objTelefone->cadastra();
                     $objEndereco = new clsPessoaEndereco($this->ref_idpes);
                     $detEndereco = $objEndereco->detalhe();
                     if ($this->cep) {
                         $this->cep_ = idFederal2int($this->cep);
                     }
                     $this->cep = $this->cep;
                     //echo "$this->ref_idpes, $this->cep_, $this->idlog, $this->idbai, $this->numero, $this->complemento, false, false, false, false, $this->andar ";die;
                     //echo "<pre>";print_r($this);die;
                     /*					$objEndereco2 = new clsPessoaEndereco( $this->ref_idpes, $this->cep_, $this->idlog, $this->idbai, $this->numero, $this->complemento, false, false, false, false, $this->andar );
                     						if ( $detEndereco && $this->cep_ && $this->idlog && $this->idbai )
                     							$objEndereco2->edita();
                     						elseif ( $this->cep_ && $this->idlog && $this->idbai )
                     							$objEndereco2->cadastra();
                     
                     						elseif ( $detEndereco )
                     						{
                     							$objEndereco2->exclui();
                     							//$this->cep = $this->cep;
                     							$objEnderecoExterno = new clsEnderecoExterno( $this->ref_idpes );
                     							$detEnderecoExterno = $objEnderecoExterno->detalhe();
                     
                     							//$this->cep = idFederal2int($this->cep) ;
                     							$objEnderecoExterno2 = new clsEnderecoExterno( $this->ref_idpes, "1", $this->idtlog, $this->logradouro, $this->numero, false, $this->complemento, $this->bairro, $this->cep_, $this->cidade, $this->sigla_uf, false, false, false, $this->andar );
                     							if( $detEnderecoExterno )
                     							{
                     								$objEnderecoExterno2->edita();
                     								if ( $detEndereco )
                     									$objEndereco->exclui();
                     							}
                     							else
                     							{
                     								$objEnderecoExterno2->cadastra();
                     								if ( $detEndereco )
                     									$objEndereco->exclui();
                     							}
                     						}
                     						else
                     						{
                     							$objEnderecoExterno = new clsEnderecoExterno( $this->ref_idpes );
                     							$detEnderecoExterno = $objEnderecoExterno->detalhe();
                     
                     							$objEnderecoExterno2 = new clsEnderecoExterno( $this->ref_idpes, "1", $this->idtlog, $this->logradouro, $this->numero, false, $this->complemento, $this->bairro, $this->cep_, $this->cidade, $this->sigla_uf, false, false, false, $this->andar );
                     							if( $detEnderecoExterno )
                     							{
                     								$objEnderecoExterno2->edita();
                     							}
                     							else
                     							{
                     								$objEnderecoExterno2->cadastra();
                     							}
                     						}*/
                     if (!$this->isEnderecoExterno) {
                         //							die("Interno");
                         //							echo "<br>cep: ".$this->cep_;
                         //							$this->cep = idFederal2Int( $this->cep );
                         $this->cep = $this->cep_;
                         //							echo "<br>cep: ".$this->cep;
                         //							echo "<br>clsPessoaEndereco( $this->ref_idpes, $this->cep, $this->idlog, $this->idbai, $this->numero, $this->complemento, false )";die;
                         $objEndereco = new clsPessoaEndereco($this->ref_idpes, $this->cep, $this->idlog, $this->idbai, $this->numero, $this->complemento, false);
                         if ($objEndereco->detalhe()) {
                             $objEndereco->edita();
                         } else {
                             $objEndereco->cadastra();
                         }
                     } else {
                         //							echo "<br>Externo";
                         //							echo "<br>cep_: ".$this->cep_;
                         $this->cep = idFederal2int($this->cep);
                         //							echo "<br>cep: ".$this->cep;
                         //							echo "<br>clsEnderecoExterno( $this->ref_idpes, 1, $this->idtlog, $this->logradouro, $this->numero, $this->letra, $this->complemento, $this->bairro, $this->cep, $this->cidade, $this->sigla_uf, false )";
                         $objEnderecoExterno = new clsEnderecoExterno($this->ref_idpes, "1", $this->idtlog, $this->logradouro, $this->numero, $this->letra, $this->complemento, $this->bairro, $this->cep, $this->cidade, $this->sigla_uf, false);
                         if ($objEnderecoExterno->existe()) {
                             //								echo "<br>editar";
                             $objEnderecoExterno->edita();
                         } else {
                             //								echo "<br>cadastra";
                             $objEnderecoExterno->cadastra();
                         }
                     }
                     //-----------------------EDITA CURSO------------------------//
                     $this->escola_curso = unserialize(urldecode($this->escola_curso));
                     $obj = new clsPmieducarEscolaCurso($this->cod_escola);
                     $excluiu = $obj->excluirTodos();
                     if ($excluiu) {
                         if ($this->escola_curso) {
                             //								die("com cnpj");
                             foreach ($this->escola_curso as $campo) {
                                 $obj = new clsPmieducarEscolaCurso($this->cod_escola, $campo, null, $this->pessoa_logada, null, null, 1);
                                 $cadastrou_ = $obj->cadastra();
                                 if (!$cadastrou_) {
                                     $this->mensagem = "Edi&ccedil;&atilde;o n&atilde;o realizada.<br>";
                                     echo "<!--\nErro ao editar clsPmieducarEscolaCurso\nvalores obrigat&oacute;rios\nis_numeric( {$this->cod_serie} ) && is_numeric( {$campo} ) && is_numeric( {$this->pessoa_logada} )\n-->";
                                     return false;
                                 }
                             }
                         }
                     }
                     //-----------------------FIM EDITA CURSO------------------------//
                     $this->mensagem .= "Edi&ccedil;&atilde;o efetuada com sucesso.<br>";
                     header("Location: educar_escola_lst.php");
                     die;
                     return true;
                 }
                 /*if($this->cep && $this->idbai && $this->idlog)
                 		{
                 			$objEndereco = new clsPessoaEndereco( $this->ref_idpes );
                 			$objEndereco2 = new clsPessoaEndereco($this->ref_idpes,$this->cep,$this->idlog,$this->idbai,$this->numero,$this->complemento, false,false, false, false, $this->andar);
                 			if( $objEndereco->detalhe() )
                 			{
                 				$objEndereco2->edita();
                 			}
                 			else
                 			{
                 				$objEndereco2->cadastra();
                 			}
                 			$objPessoa = new clsPessoaFj();
                 			list( $this->cidade, $this->bairro, $this->logradouro, $this->cep, $this->idtlog, $this->sigla_uf, $this->bloco, $this->apartamento, $this->andar ) = $objPessoa->queryRapida($this->ref_idpes, "cidade", "bairro", "logradouro", "cep", "idtlog", "sigla_uf", "bloco", "apartamento", "andar" );
                 		}
                 		else
                 		{
                 			$this->cep_ = idFederal2int($this->cep_);
                 			$objEnderecoExterno = new clsEnderecoExterno( $this->ref_idpes );
                 			$objEnderecoExterno2 = new clsEnderecoExterno( $this->ref_idpes,"1",$this->idtlog,$this->logradouro,$this->numero,false,$this->complemento,$this->bairro,$this->cep_,$this->cidade,$this->sigla_uf,false,false,false, $this->andar);
                 			if( $objEnderecoExterno->detalhe() )
                 			{
                 				$objEnderecoExterno2->edita();
                 			}
                 			else
                 			{
                 				$objEnderecoExterno2->cadastra();
                 			}
                 		}*/
             }
         } else {
             if ($this->sem_cnpj) {
                 $objComplemento = new clsPmieducarEscolaComplemento($this->cod_escola, $this->pessoa_logada, null, idFederal2int($this->cep_), $this->numero, $this->complemento, $this->p_email, $this->fantasia, $this->cidade, $this->bairro, $this->logradouro, $this->p_ddd_telefone_1, $this->p_telefone_1, $this->p_ddd_telefone_fax, $this->p_telefone_fax);
                 $editou1 = $objComplemento->edita();
                 if ($editou1) {
                     //-----------------------EDITA CURSO------------------------//
                     $this->escola_curso = unserialize(urldecode($this->escola_curso));
                     $obj = new clsPmieducarEscolaCurso($this->cod_escola);
                     $excluiu = $obj->excluirTodos();
                     if ($excluiu) {
                         if ($this->escola_curso) {
                             //							die("sem cnpj");
                             foreach ($this->escola_curso as $campo) {
                                 $obj = new clsPmieducarEscolaCurso($this->cod_escola, $campo, null, $this->pessoa_logada, null, null, 1);
                                 $cadastrou_ = $obj->cadastra();
                                 if (!$cadastrou_) {
                                     $this->mensagem = "Edi&ccedil;&atilde;o n&atilde;o realizada.<br>";
                                     echo "<!--\nErro ao editar clsPmieducarEscolaCurso\nvalores obrigat&oacute;rios\nis_numeric( {$this->cod_serie} ) && is_numeric( {$campo[$i]} ) && is_numeric( {$this->pessoa_logada} )\n-->";
                                     return false;
                                 }
                             }
                         }
                     }
                     //-----------------------FIM EDITA CURSO------------------------//
                     $this->mensagem .= "Edi&ccedil;&atilde;o efetuada com sucesso.<br>";
                     header("Location: educar_escola_lst.php");
                     die;
                     return true;
                 } else {
                     $this->mensagem = "Edi&ccedil;&atilde;o n&atilde;o realizada (clsPmieducarEscolaComplemento).<br>";
                     //					echo "<!--\nErro ao editar clsPmieducarEscola\nvalores obrigatorios\nif( is_numeric( $this->cod_escola ) && is_numeric( $this->pessoa_logada ) )\n-->";
                     return false;
                 }
             }
         }
     }
     $this->mensagem = "Edi&ccedil;&atilde;o n&atilde;o realizada.<br>";
     echo "<!--\nErro ao editar clsPmieducarEscola\nvalores obrigatorios\nif( is_numeric( {$this->cod_escola} ) && is_numeric( {$this->pessoa_logada} ) )\n-->";
     return false;
 }
 function Editar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(642, $this->pessoa_logada, 7, "educar_falta_nota_aluno_lst.php");
     //************************************* EDITA - MATRICULADO NUMA SERIE *************************************//
     if ($this->ref_ref_cod_serie) {
         //			if (is_numeric($this->modulo))
         //			{
         //				$this->mat_modulo = $this->modulo;
         //			}
         if (!$this->reprova_falta) {
             $this->editaSNotasFaltas();
         }
         /**
          * verifica se existem disciplinas sem notas
          *
          */
         $obj_nota_aluno = new clsPmieducarNotaAluno();
         $total = $obj_nota_aluno->getQtdRestanteNotasAlunoNaoApuraFaltas($this->ref_cod_matricula, $this->ref_ref_cod_serie, $this->ref_cod_turma, $this->modulo, $this->ref_ref_cod_escola);
         /* verifica se o aluno está em exame
          * e se todas as matérias do exame estão com notas
          */
         $aluno_esta_em_exame = $_POST["aluno_esta_em_exame"];
         $qtd_disciplinas_aluno_exame = $_POST["qtd_disciplinas_aluno_exame"];
         if ($aluno_esta_em_exame == 1) {
             $sql = "SELECT COUNT(0)\n\t\t\t\t\t\t\t\tFROM pmieducar.nota_aluno na\n\t\t\t\t\t\t\t\t, pmieducar.disciplina d\n\t\t\t\t\t\t\t\t, pmieducar.v_matricula_matricula_turma mmt\n\t\t\t\t\t\t\t\tWHERE na.ref_cod_matricula = '{$this->ref_cod_matricula}'\n\t\t\t\t\t\t\t\tAND na.ref_cod_matricula = mmt.cod_matricula\n\t\t\t\t\t\t\t\tAND mmt.ref_cod_turma = '{$this->ref_cod_turma}'\n\t\t\t\t\t\t\t\tAND na.ativo = 1\n\t\t\t\t\t\t\t\tAND mmt.ativo = 1\n\t\t\t\t\t\t\t\tAND na.ref_cod_disciplina = d.cod_disciplina\n\t\t\t\t\t\t\t\tAND na.ref_cod_serie = '{$this->ref_ref_cod_serie}'\n\t\t\t\t\t\t\t\tAND na.modulo = '{$this->modulo}'";
             $db = new clsBanco();
             $notas_exame_ja_recebidas = $db->CampoUnico($sql);
             if ($qtd_disciplinas_aluno_exame == $notas_exame_ja_recebidas) {
                 $total = 0;
             }
         }
         /**
          * existem disciplinas sem notas
          * somente cadastra e o modulo do aluno
          * continua igual sem calcular nada
          */
         if ($total > 0) {
             /**
              * caso NENHUMA materia tenha nota
              * (por motivo de exclusao) verificar se o modulo da matricula
              * é maior que o ultimo modulo com nota
              * entao decrementar o modulo da matricula
              */
             $ultimo_modulo_matricula = $obj_nota_aluno->getMaxNotas($this->ref_cod_matricula);
             if ($ultimo_modulo_matricula < $this->mat_modulo) {
                 if ($this->nota_foi_removida && $this->pessoa_logada == 184580) {
                     $obj_hst_escolar = new clsPmieducarHistoricoEscolar();
                     $lst_hst_escolar = $obj_hst_escolar->lista($this->ref_cod_aluno, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 1, null, null, null, null, $this->ref_cod_matricula);
                     if (is_array($lst_hst_escolar)) {
                         $det_hst_escolar = array_shift($lst_hst_escolar);
                         $obj_hd = new clsPmieducarHistoricoDisciplinas();
                         $excluiu_hd = $obj_hd->excluirTodos($this->ref_cod_aluno, $det_hst_escolar["sequencial"]);
                         if (!$excluiu_hd) {
                             $this->mensagem = "Exclus&atilde;o do Hist&oacute;rico Disciplina n&atilde;o realizado.<br>";
                             return false;
                         }
                         $obj_hst_escolar = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $det_hst_escolar["sequencial"], $this->pessoa_logada, null, null, null, null, null, null, null, null, null, null, null, null, 0);
                         $excluiu_he = $obj_hst_escolar->excluir();
                         if (!$excluiu_he) {
                             $this->mensagem = "Exclus&atilde;o do Hist&oacute;rico Escolar n&atilde;o realizado.<br>";
                             return false;
                         }
                     }
                 }
                 $obj = new clsPmieducarMatricula($this->ref_cod_matricula, null, null, null, $this->pessoa_logada, null, null, 3, null, null, null, null, null, $ultimo_modulo_matricula);
                 $editou = $obj->edita();
             }
             $this->mensagem .= "Cadastro efetuado com sucesso.<br>";
             header("Location: educar_falta_nota_aluno_det.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&sequencial={$this->ref_sequencial_matricula_turma}");
             die;
             return true;
         } else {
             //$ultimo_modulo_matricula = $obj_nota_aluno->getMaxNotas($this->ref_cod_matricula);
             //die("$ultimo_modulo_matricula < $this->mat_modulo || $this->modulo");
             if ($this->mat_modulo == $this->modulo) {
                 $obj = new clsPmieducarMatricula($this->ref_cod_matricula, null, null, null, $this->pessoa_logada, null, null, 3, null, null, null, null, null, $ultimo_modulo_matricula);
                 $editou = $obj->avancaModulo();
             }
         }
         $aprovado = 3;
         if ($this->qtd_modulos <= $this->mat_modulo) {
             $obj_curso = new clsPmieducarCurso($this->ref_cod_curso);
             $det_curso = $obj_curso->detalhe();
             $frequencia_minima = $det_curso["frequencia_minima"];
             $hora_falta = $det_curso["hora_falta"];
             $carga_horaria_curso = $det_curso["carga_horaria"];
             $obj_esd = new clsPmieducarEscolaSerieDisciplina();
             $lst_esd = $obj_esd->lista($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, 1);
             if (is_array($lst_esd)) {
                 $obj_nota_aluno = new clsPmieducarNotaAluno();
                 $max_nota = $obj_nota_aluno->getMaxNotas($this->ref_cod_matricula);
                 $obj_serie = new clsPmieducarSerie($this->ref_ref_cod_serie);
                 $det_serie = $obj_serie->detalhe();
                 $media_especial = $det_serie['media_especial'];
                 foreach ($lst_esd as $campo) {
                     $obj_nota_aluno = new clsPmieducarNotaAluno();
                     $obj_nota_aluno->setOrderby("modulo ASC");
                     $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $campo["ref_cod_disciplina"], $this->ref_cod_matricula, null, null, null, null, null, null, 1);
                     // so busca as notas da disciplina se nao for media especial
                     if (is_array($lst_nota_aluno) && !dbBool($media_especial)) {
                         foreach ($lst_nota_aluno as $key => $nota_aluno) {
                             if ($nota_aluno['nota']) {
                                 $soma_notas[$campo["ref_cod_disciplina"]][$key] = $nota_aluno['nota'] * 2;
                             } else {
                                 $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores($nota_aluno["ref_ref_cod_tipo_avaliacao"], $nota_aluno["ref_sequencial"]);
                                 $det_avaliacao_valores = $obj_avaliacao_valores->detalhe();
                                 $soma_notas[$campo["ref_cod_disciplina"]][$key] = $det_avaliacao_valores["valor"];
                             }
                         }
                     }
                     if (!$this->falta_ch_globalizada) {
                         $obj_falta_aluno = new clsPmieducarFaltaAluno();
                         $lst_falta_aluno = $obj_falta_aluno->lista(null, null, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $campo["ref_cod_disciplina"], $this->ref_cod_matricula, null, null, null, null, null, 1);
                         if (is_array($lst_falta_aluno)) {
                             foreach ($lst_falta_aluno as $key => $falta_aluno) {
                                 $soma_faltas[$campo["ref_cod_disciplina"]][$key] = $falta_aluno["faltas"];
                             }
                         }
                     }
                 }
                 if (is_array($soma_faltas)) {
                     foreach ($soma_faltas as $disciplina => $faltas) {
                         foreach ($faltas as $falta) {
                             $faltas_media_aluno[$disciplina] += $falta;
                         }
                     }
                 }
             }
             if (is_array($faltas_media_aluno)) {
                 foreach ($faltas_media_aluno as $disciplina => $faltas) {
                     $obj_disciplina = new clsPmieducarDisciplina($disciplina);
                     $det_disciplina = $obj_disciplina->detalhe();
                     $carga_horaria_disciplina = $det_disciplina["carga_horaria"];
                     // calcula o maximo de horas q o aluno pode faltar na disciplina
                     $max_falta = $carga_horaria_disciplina * $frequencia_minima / 100;
                     $max_falta = $carga_horaria_disciplina - $max_falta;
                     // calcula a quantidade de faltas por hora do aluno na disciplina
                     $faltas *= $hora_falta;
                     if ($faltas > $max_falta && !$this->reprova_falta) {
                         echo "<script>\n\t\t\t\t\t\t\t\t\tif( confirm('O aluno excedeu o valor máximo de faltas permitidas, \\n deseja reprová-lo? \\n Quantidade de faltas do aluno: {$faltas} \\n Valor máximo de faltas permitido: {$max_falta} \\n \\n Clique em OK para reprová-lo ou em CANCELAR para ignorar.') )\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=s';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=n';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</script>";
                         return true;
                     }
                     if ($this->reprova_falta == 's') {
                         $aprovado = 2;
                         // aluno reprovado por falta
                     }
                 }
             } else {
                 $obj_serie = new clsPmieducarSerie($this->ref_ref_cod_serie);
                 $det_serie = $obj_serie->detalhe();
                 $carga_horaria_serie = $det_serie["carga_horaria"];
                 // calcula o maximo de horas q o aluno pode faltar na serie
                 $max_falta = $carga_horaria_serie * $frequencia_minima / 100;
                 $max_falta = $carga_horaria_serie - $max_falta;
                 // calcula a quantidade de faltas por hora do aluno na serie
                 $obj_faltas = new clsPmieducarFaltas();
                 $lst_faltas = $obj_faltas->lista($this->ref_cod_matricula);
                 if (is_array($lst_faltas)) {
                     $total_faltas = 0;
                     foreach ($lst_faltas as $key => $faltas) {
                         $total_faltas += $faltas['falta'];
                     }
                     $total_faltas *= $hora_falta;
                     if ($total_faltas > $max_falta && !$this->reprova_falta) {
                         echo "<script>\n\t\t\t\t\t\t\t\t\tif( confirm('O aluno excedeu o valor máximo de faltas permitidas, \\n deseja reprová-lo? \\n Quantidade de faltas do aluno: {$total_faltas} \\n Valor máximo de faltas permitido: {$max_falta} \\n \\n Clique em OK para reprová-lo ou em CANCELAR para ignorar.') )\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=s';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=n';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</script>";
                         return true;
                     }
                     if ($this->reprova_falta == 's') {
                         $aprovado = 2;
                         // aluno reprovado por falta
                     }
                 }
             }
             /**
              * calculo de media especial
              */
             if (dbBool($media_especial)) {
                 $objNotaAluno = new clsPmieducarNotaAluno();
                 $media = $objNotaAluno->getMediaEspecialAluno($this->ref_cod_matricula, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->qtd_modulos, $this->media);
                 if ($media < $this->media) {
                     //  reprovado direto sem exame
                     $aprovado = 2;
                 }
             }
         }
         $db2 = new clsBanco();
         //retorna quantas matérias o aluno cursa não contabilizando as matérias com dispensa
         $sql = "SELECT COUNT(0) FROM pmieducar.escola_serie_disciplina WHERE ref_ref_cod_serie = {$this->ref_ref_cod_serie} \n\t\t\t\t\tAND ref_ref_cod_escola = {$this->ref_ref_cod_escola} AND escola_serie_disciplina.ativo = 1\n\t\t\t\t\tAND ref_cod_disciplina NOT IN (\n\t\t\t\t\t\tSELECT ref_cod_disciplina\n\t\t\t\t\t\tFROM pmieducar.dispensa_disciplina WHERE \n\t\t\t\t\t\tref_cod_matricula = {$this->ref_cod_matricula} AND ref_cod_serie = {$this->ref_ref_cod_serie}\n\t\t\t\t\t\tAND ref_cod_escola = {$this->ref_ref_cod_escola} AND ativo = 1\n\t\t\t\t\t)";
         $qtd_materias = $db2->CampoUnico($sql);
         //retorna quantas notas notas o aluno possui não contabilizandoa das matérias dispensadas
         $sql = "SELECT COUNT(0) FROM pmieducar.nota_aluno \n\t\t\t\t\tWHERE ref_cod_matricula = {$this->ref_cod_matricula} AND ativo = 1\n\t\t\t\t\tAND ref_cod_disciplina NOT IN (\n\t\t\t\t\t\t\tSELECT ref_cod_disciplina FROM pmieducar.dispensa_disciplina WHERE \n\t\t\t\t\t\t\tref_cod_matricula = {$this->ref_cod_matricula} AND ref_cod_serie = {$this->ref_ref_cod_serie} \n\t\t\t\t\t\t\tAND ref_cod_escola = {$this->ref_ref_cod_escola} AND ativo = 1\n\t\t\t\t\t)";
         //variável em uma edição para verificar se o aluno possui todas as notas
         //para mudar o estado de aprovado dele
         $qtd_notas_possui = $db2->CampoUnico($sql);
         $possui_todas_as_notas = $this->qtd_modulos * $qtd_materias >= $qtd_notas_possui || $aluno_esta_em_exame == 1 ? true : false;
         if ($this->qtd_modulos < $this->mat_modulo && $this->qtd_modulos == $max_nota && !dbBool($media_especial)) {
             if (is_array($soma_notas) && !dbBool($media_especial)) {
                 foreach ($soma_notas as $disciplina => $notas) {
                     foreach ($notas as $nota) {
                         if (dbBool($det_serie["ultima_nota_define"])) {
                             $nota_media_aluno[$disciplina] = $nota;
                         } else {
                             $nota_media_aluno[$disciplina] += $nota;
                         }
                     }
                     if (!dbBool($det_serie["ultima_nota_define"])) {
                         $nota_media_aluno[$disciplina] /= $this->mat_modulo - 1;
                     }
                 }
                 foreach ($nota_media_aluno as $disciplina => $nota) {
                     $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores();
                     $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $nota, $nota);
                     if (is_array($lst_avaliacao_valores)) {
                         $det_avaliacao_valores = array_shift($lst_avaliacao_valores);
                         $valor = $det_avaliacao_valores["valor"];
                     }
                     /**
                      * verifica se existem disciplinas sem notas
                      * somente aprova caso seja zero
                      */
                     //$obj_nota_aluno = new clsPmieducarNotaAluno();
                     //	$total = $obj_nota_aluno->getQtdRestanteNotasAlunoNaoApuraFaltas($this->ref_cod_matricula,$this->ref_ref_cod_serie,$this->ref_cod_turma,$this->modulo,$this->ref_ref_cod_escola);
                     if ($nota < $this->media && $this->media_exame && !$this->conceitual && $possui_todas_as_notas) {
                         $em_exame = true;
                         // aluno em exame
                     } else {
                         if ($valor < $this->media && !$this->media_exame && !$this->conceitual && $possui_todas_as_notas) {
                             $aprovado = 2;
                             // aluno reprovado direto (n existe exame)
                         }
                     }
                 }
             }
         } else {
             if ($this->qtd_modulos < $this->mat_modulo && $this->qtd_modulos < $max_nota && !dbBool($media_especial)) {
                 //				echo "<pre>"; print_r($soma_notas);
                 foreach ($soma_notas as $disciplina => $notas) {
                     $qtd_notas = 0;
                     foreach ($notas as $nota) {
                         $nota_media_aluno[$disciplina] += $nota;
                         $qtd_notas++;
                     }
                     if ($qtd_notas == $this->modulo) {
                         $nota_media_aluno[$disciplina] /= $this->modulo + 1;
                     } else {
                         $nota_media_aluno[$disciplina] /= $this->modulo - 1;
                     }
                 }
                 foreach ($nota_media_aluno as $disciplina => $nota) {
                     $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores();
                     $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $nota, $nota);
                     if (is_array($lst_avaliacao_valores)) {
                         $det_avaliacao_valores = array_shift($lst_avaliacao_valores);
                         $valor = $det_avaliacao_valores["valor"];
                         if ($valor < $this->media_exame) {
                             $aprovado = 2;
                             // aluno reprovado no exame
                         }
                         /*else if ( ($valor < $this->media) && ($this->qtd_modulos >= $this->modulo) )
                         		$aprovado = 7; // aluno em exame*/
                     }
                 }
             }
         }
         /**
          * verifica se existem disciplinas sem notas
          * somente aprova caso seja zero
          */
         //$obj_nota_aluno = new clsPmieducarNotaAluno();
         //$total = $obj_nota_aluno->getQtdRestanteNotasAlunoNaoApuraFaltas($this->ref_cod_matricula,$this->ref_ref_cod_serie,$this->ref_cod_turma,$this->modulo,$this->ref_ref_cod_escola);
         if ($this->conceitual) {
             $aprovado = $this->aprovado;
             // situacao definida pelo professor
         } else {
             if (!$em_exame && $this->qtd_modulos <= $this->mat_modulo && $aprovado == 3 && !$this->conceitual && $possui_todas_as_notas) {
                 $aprovado = 1;
                 // aluno aprovado
             }
         }
         $obj = new clsPmieducarMatricula($this->ref_cod_matricula, null, null, null, $this->pessoa_logada, null, null, $aprovado);
         $editou = $obj->edita();
         //die($aprovado);
         if ($editou) {
             /**
              * aluno reprovado mantem historico
              * 01/03/2006
              */
             if ($aprovado == 2 || $aprovado == 3 || $aprovado == 1) {
                 $obj_hst_escolar = new clsPmieducarHistoricoEscolar();
                 $lst_hst_escolar = $obj_hst_escolar->lista($this->ref_cod_aluno, null, null, null, $det_serie["nm_serie"], $this->ano_letivo, $carga_horaria_serie, null, null, null, null, null, null, null, null, null, null, null, null, $this->ref_cod_instituicao, 0, null, $this->ref_cod_matricula);
                 if (is_array($lst_hst_escolar)) {
                     $det_hst_escolar = array_shift($lst_hst_escolar);
                     $obj_hd = new clsPmieducarHistoricoDisciplinas();
                     $excluiu_hd = $obj_hd->excluirTodos($this->ref_cod_aluno, $det_hst_escolar["sequencial"]);
                     if (!$excluiu_hd) {
                         $this->mensagem = "Exclus&atilde;o do Hist&oacute;rico Disciplina n&atilde;o realizado.<br>";
                         return false;
                     }
                     $obj_hst_escolar = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $det_hst_escolar["sequencial"], $this->pessoa_logada, null, null, null, null, null, null, null, null, null, null, null, null, 0);
                     $excluiu_he = $obj_hst_escolar->excluir();
                     if (!$excluiu_he) {
                         $this->mensagem = "Exclus&atilde;o do Hist&oacute;rico Escolar n&atilde;o realizado.<br>";
                         return false;
                     }
                 }
             }
             /*else */
             if ($aprovado == 1 || $aprovado == 2) {
                 $obj_serie = new clsPmieducarSerie($this->ref_ref_cod_serie);
                 $det_serie = $obj_serie->detalhe();
                 $carga_horaria_serie = $det_serie["carga_horaria"];
                 $obj_escola = new clsPmieducarEscola($this->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($this->ref_ref_cod_escola);
                         $det_escola = $obj_escola->detalhe();
                         $nm_escola = $det_escola["nm_escola"];
                         $cidade = $det_escola["municipio"];
                     }
                 }
                 if ($this->padrao_ano_escolar) {
                     $extra_curricular = 0;
                 } else {
                     $extra_curricular = 1;
                 }
                 $sql = "SELECT SUM(falta) FROM pmieducar.faltas WHERE ref_cod_matricula = {$this->ref_cod_matricula}";
                 $db5 = new clsBanco();
                 $total_faltas = $db5->CampoUnico($sql);
                 $obj_hst_escolar = new clsPmieducarHistoricoEscolar();
                 $lst_hst_escolar = $obj_hst_escolar->lista($this->ref_cod_aluno, null, null, null, $det_serie["nm_serie"], $this->ano_letivo, $carga_horaria_serie, null, null, null, null, null, null, null, null, null, null, null, null, $this->ref_cod_instituicao, 0, null, $this->ref_cod_matricula);
                 if (is_array($lst_hst_escolar)) {
                     $det_hst_escolar = array_shift($lst_hst_escolar);
                     $obj = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $det_hst_escolar["sequencial"], $this->pessoa_logada, null, null, null, null, null, null, $cidade, $uf, null, $aprovado, null, null, 1, $total_faltas, null, null, $extra_curricular);
                     $editou_he = $obj->edita();
                 } else {
                     $obj = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, null, null, $this->pessoa_logada, $det_serie["nm_serie"], $this->ano_letivo, $carga_horaria_serie, null, $nm_escola, $cidade, $uf, null, $aprovado, null, null, 1, $total_faltas, $this->ref_cod_instituicao, 0, $extra_curricular, $this->ref_cod_matricula);
                     $cadastrou_he = $obj->cadastra();
                 }
                 if (($editou_he || $cadastrou_he) && !$this->conceitual) {
                     if ($cadastrou_he) {
                         $obj_historico = new clsPmieducarHistoricoEscolar();
                         $sequencial = $obj_historico->getMaxSequencial($this->ref_cod_aluno);
                     } else {
                         $sequencial = $det_hst_escolar["sequencial"];
                     }
                     $historico_disciplina = array();
                     foreach ($nota_media_aluno as $key => $nota) {
                         $historico_disciplina[$key] = array($nota, $faltas_media_aluno[$key]);
                     }
                     foreach ($historico_disciplina as $disciplina => $campo) {
                         $obj_disciplina = new clsPmieducarDisciplina($disciplina);
                         $det_disciplina = $obj_disciplina->detalhe();
                         $nm_disciplina = $det_disciplina["nm_disciplina"];
                         $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores();
                         $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $campo[0], $campo[0]);
                         if (is_array($lst_avaliacao_valores)) {
                             $det_avaliacao_valores = array_shift($lst_avaliacao_valores);
                             $nm_nota = $det_avaliacao_valores["nome"];
                             $obj_hd = new clsPmieducarHistoricoDisciplinas();
                             $lst_hd = $obj_hd->lista(null, $this->ref_cod_aluno, $sequencial, $nm_disciplina);
                             if (is_array($lst_hd)) {
                                 $det_hd = array_shift($lst_hd);
                                 $obj_hd = new clsPmieducarHistoricoDisciplinas($det_hd["sequencial"], $this->ref_cod_aluno, $sequencial, $nm_disciplina, $nm_nota, $campo[1]);
                                 $hst_disciplina = $obj_hd->edita();
                             } else {
                                 $obj_hd = new clsPmieducarHistoricoDisciplinas(null, $this->ref_cod_aluno, $sequencial, $nm_disciplina, $nm_nota, $campo[1]);
                                 $hst_disciplina = $obj_hd->cadastra();
                             }
                             if (!$hst_disciplina) {
                                 $this->mensagem = "Cadastro/Edi&ccedil;&atilde;o do Hist&oacute;rico Disciplinas n&atilde;o realizado.<br>";
                                 return false;
                             }
                         } else {
                             $this->mensagem = "N&atilde;o foi poss&iacute;vel encontrar os Valores do Tipo de Avalia&ccedil;&atilde;o.<br>";
                             return false;
                         }
                     }
                 }
                 /*
                 else if( (!$editou_he || !$cadastrou_he) && (!$this->conceitual) )
                 {
                 	$this->mensagem = "Cadastro/Edi&ccedil;&atilde;o do Hist&oacute;rico Escolar n&atilde;o realizado.<br>";
                 	return false;
                 }
                 */
             }
             $this->mensagem .= "Cadastro efetuado com sucesso.<br>";
             header("Location: educar_falta_nota_aluno_det.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&sequencial={$this->ref_sequencial_matricula_turma}");
             die;
             return true;
         }
         $this->mensagem = "Edi&ccedil;&atilde;o n&atilde;o realizada (Matr&iacute;cula).<br>";
         echo "<!--\nErro ao editar clsPmieducarMatricula\nvalores obrigatorios\nis_numeric( {$this->ref_cod_matricula} ) && is_numeric( {$this->pessoa_logada} ) && is_numeric( {$this->modulo} )\n-->";
         return false;
     } else {
         if (!$this->reprova_falta) {
             $this->editaCNotasFaltas();
         }
         /**
          * verifica se existem disciplinas sem notas
          *
          */
         $obj_nota_aluno = new clsPmieducarNotaAluno();
         $total = $obj_nota_aluno->getQtdRestanteNotasAlunoNaoApuraFaltas($this->ref_cod_matricula, $this->ref_ref_cod_serie, $this->ref_cod_turma, $this->modulo, $this->ref_ref_cod_escola);
         /**
          * existem disciplinas sem notas
          * somente cadastra e o modulo do aluno
          * continua igual sem calcular nada
          */
         if ($total) {
             $this->mensagem .= "Cadastro efetuado com sucesso.<br>";
             header("Location: educar_falta_nota_aluno_det.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&sequencial={$this->ref_sequencial_matricula_turma}");
             die;
             return true;
         }
         $aprovado = 3;
         if ($this->qtd_modulos <= $this->mat_modulo) {
             $obj_curso = new clsPmieducarCurso($this->ref_cod_curso);
             $det_curso = $obj_curso->detalhe();
             $frequencia_minima = $det_curso["frequencia_minima"];
             $hora_falta = $det_curso["hora_falta"];
             $carga_horaria_curso = $det_curso["carga_horaria"];
             $obj_disciplina = new clsPmieducarDisciplina();
             $lst_disciplina = $obj_disciplina->lista(null, null, null, null, null, null, null, null, null, null, null, null, 1, null, $this->ref_cod_curso);
             if (is_array($lst_disciplina)) {
                 foreach ($lst_disciplina as $campo) {
                     $obj_nota_aluno = new clsPmieducarNotaAluno();
                     $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, null, null, null, $this->ref_cod_matricula, null, null, null, null, null, null, 1, null, $campo["cod_disciplina"]);
                     if (is_array($lst_nota_aluno)) {
                         foreach ($lst_nota_aluno as $key => $nota_aluno) {
                             if ($nota_aluno["nota"]) {
                                 $soma_notas[$campo["cod_disciplina"]][$key] = $nota_aluno["nota"] * 2;
                             } else {
                                 $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores($nota_aluno["ref_ref_cod_tipo_avaliacao"], $nota_aluno["ref_sequencial"]);
                                 $det_avaliacao_valores = $obj_avaliacao_valores->detalhe();
                                 $soma_notas[$campo["cod_disciplina"]][$key] = $det_avaliacao_valores["valor"];
                             }
                         }
                     }
                     if (!$this->falta_ch_globalizada) {
                         $obj_falta_aluno = new clsPmieducarFaltaAluno();
                         $lst_falta_aluno = $obj_falta_aluno->lista(null, null, null, null, null, null, $this->ref_cod_matricula, null, null, null, null, null, 1, null, $campo["cod_disciplina"]);
                         if (is_array($lst_falta_aluno)) {
                             foreach ($lst_falta_aluno as $key => $falta_aluno) {
                                 $soma_faltas[$campo["cod_disciplina"]][$key] = $falta_aluno["faltas"];
                             }
                         }
                     }
                 }
                 if (is_array($soma_faltas)) {
                     foreach ($soma_faltas as $disciplina => $faltas) {
                         foreach ($faltas as $falta) {
                             $faltas_media_aluno[$disciplina] += $falta;
                         }
                     }
                 }
             }
             if (is_array($faltas_media_aluno)) {
                 foreach ($faltas_media_aluno as $disciplina => $faltas) {
                     $obj_disciplina = new clsPmieducarDisciplina($disciplina);
                     $det_disciplina = $obj_disciplina->detalhe();
                     $carga_horaria_disciplina = $det_disciplina["carga_horaria"];
                     // calcula o maximo de horas q o aluno pode faltar na disciplina
                     $max_falta = $carga_horaria_disciplina * $frequencia_minima / 100;
                     $max_falta = $carga_horaria_disciplina - $max_falta;
                     // calcula a quantidade de faltas por hora do aluno na disciplina
                     $faltas *= $hora_falta;
                     if ($faltas > $max_falta && !$this->reprova_falta) {
                         echo "<script>\n\t\t\t\t\t\t\t\t\tif( confirm('O aluno excedeu o valor máximo de faltas permitidas, \\n deseja reprová-lo? \\n Quantidade de faltas do aluno: {$faltas} \\n Valor máximo de faltas permitido: {$max_falta} \\n \\n Clique em OK para reprová-lo ou em CANCELAR para ignorar.') )\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=s';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=n';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</script>";
                         return true;
                     }
                     if ($this->reprova_falta == 's') {
                         $aprovado = 2;
                         // aluno reprovado por falta
                     }
                 }
             } else {
                 // calcula o maximo de horas q o aluno pode faltar no curso
                 $max_falta = $carga_horaria_curso * $frequencia_minima / 100;
                 $max_falta = $carga_horaria_curso - $max_falta;
                 // calcula a qtd de faltas por hora do aluno no curso
                 $obj_faltas = new clsPmieducarFaltas();
                 $lst_faltas = $obj_faltas->lista($this->ref_cod_matricula);
                 if (is_array($lst_faltas)) {
                     $total_faltas = 0;
                     foreach ($lst_faltas as $key => $faltas) {
                         $total_faltas += $faltas['falta'];
                     }
                     $total_faltas *= $hora_falta;
                     if ($total_faltas > $max_falta && !$this->reprova_falta) {
                         echo "<script>\n\t\t\t\t\t\t\t\t\tif( confirm('O aluno excedeu o valor máximo de faltas permitidas, \\n deseja reprová-lo? \\n Quantidade de faltas do aluno: {$total_faltas} \\n Valor máximo de faltas permitido: {$max_falta} \\n \\n Clique em OK para reprová-lo ou em CANCELAR para ignorar.') )\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=s';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\twindow.location = 'educar_falta_nota_aluno_cad.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&ref_sequencial_matricula_turma={$this->ref_sequencial_matricula_turma}&modulo={$this->modulo}&falta=n';\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t</script>";
                         return true;
                     }
                     if ($this->reprova_falta == 's') {
                         $aprovado = 2;
                         // aluno reprovado por falta
                     }
                 }
             }
         }
         if ($this->qtd_modulos < $this->mat_modulo && $this->qtd_modulos == $max_nota) {
             if (is_array($soma_notas)) {
                 foreach ($soma_notas as $disciplina => $notas) {
                     foreach ($notas as $nota) {
                         $nota_media_aluno[$disciplina] += $nota;
                     }
                     $nota_media_aluno[$disciplina] /= $this->mat_modulo - 1;
                 }
                 foreach ($nota_media_aluno as $disciplina => $nota) {
                     $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores();
                     $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $nota, $nota);
                     if (is_array($lst_avaliacao_valores)) {
                         $det_avaliacao_valores = array_shift($lst_avaliacao_valores);
                         $valor = $det_avaliacao_valores["valor"];
                         /*
                         if ( ($valor < $this->media) && $this->media_exame && !$this->conceitual )
                         {
                         	$em_exame = true;
                         }
                         else if ( ($valor < $this->media) && !$this->media_exame && !$this->conceitual )
                         {
                         	$aprovado = 2; // aluno reprovado direto (n existe exame)
                         }
                         */
                     }
                     /**
                      * verifica se existem disciplinas sem notas
                      * somente aprova caso seja zero
                      */
                     $obj_nota_aluno = new clsPmieducarNotaAluno();
                     $total = $obj_nota_aluno->getQtdRestanteNotasAlunoNaoApuraFaltas($this->ref_cod_matricula, $this->ref_ref_cod_serie, $this->ref_cod_turma, $this->modulo, $this->ref_ref_cod_escola);
                     if ($nota < $this->media && $this->media_exame && !$this->conceitual) {
                         $em_exame = true;
                         // aluno em exame
                     } else {
                         if ($valor < $this->media && !$this->media_exame && !$this->conceitual) {
                             $aprovado = 2;
                             // aluno reprovado direto (n existe exame)
                         }
                     }
                 }
             }
         } else {
             if ($this->qtd_modulos < $this->mat_modulo && $this->qtd_modulos < $max_nota) {
                 foreach ($soma_notas as $disciplina => $notas) {
                     $qtd_notas = 0;
                     foreach ($notas as $nota) {
                         $nota_media_aluno[$disciplina] += $nota;
                         $qtd_notas++;
                     }
                     if ($qtd_notas == $this->mat_modulo) {
                         $nota_media_aluno[$disciplina] /= $this->mat_modulo;
                     } else {
                         $nota_media_aluno[$disciplina] /= $this->mat_modulo - 1;
                     }
                 }
                 foreach ($nota_media_aluno as $disciplina => $nota) {
                     $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores();
                     $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $nota, $nota);
                     if (is_array($lst_avaliacao_valores)) {
                         $det_avaliacao_valores = array_shift($lst_avaliacao_valores);
                         $valor = $det_avaliacao_valores["valor"];
                         if ($valor < $this->media_exame) {
                             $aprovado = 2;
                             // aluno reprovado no exame
                         }
                     }
                 }
             }
         }
         /**
          * verifica se existem disciplinas sem notas
          * somente aprova caso seja zero
          */
         //$obj_nota_aluno = new clsPmieducarNotaAluno();
         //$total = $obj_nota_aluno->getQtdRestanteNotasAlunoNaoApuraFaltas($this->ref_cod_matricula,$this->ref_ref_cod_serie,$this->ref_cod_turma,$this->modulo,$this->ref_ref_cod_escola);
         if ($this->conceitual) {
             $aprovado = $this->aprovado;
             // situacao definida pelo professor
         } else {
             if (!$em_exame && $this->qtd_modulos <= $this->mat_modulo && $aprovado == 3 && !$this->conceitual) {
                 $aprovado = 1;
                 // aluno aprovado
             }
         }
         $obj = new clsPmieducarMatricula($this->ref_cod_matricula, null, null, null, $this->pessoa_logada, null, null, $aprovado);
         $editou = $obj->edita();
         if ($editou) {
             /**
              * aluno reprovado edita nao remove do historico
              */
             if ($aprovado == 2 || $aprovado == 3) {
                 $obj_hst_escolar = new clsPmieducarHistoricoEscolar();
                 $lst_hst_escolar = $obj_hst_escolar->lista($this->ref_cod_aluno, null, null, null, $det_curso['nm_curso'], $this->ano_letivo, $carga_horaria_curso, null, null, null, null, null, null, null, null, null, null, null, null, $this->ref_cod_instituicao, 0, 1, $this->ref_cod_matricula);
                 if (is_array($lst_hst_escolar)) {
                     $det_hst_escolar = array_shift($lst_hst_escolar);
                     $obj_hd = new clsPmieducarHistoricoDisciplinas();
                     $excluiu_hd = $obj_hd->excluirTodos($this->ref_cod_aluno, $det_hst_escolar["sequencial"]);
                     if (!$excluiu_hd) {
                         $this->mensagem = "Exclus&atilde;o do Hist&oacute;rico Disciplina n&atilde;o realizado.<br>";
                         return false;
                     }
                     $obj_hst_escolar = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $det_hst_escolar["sequencial"], $this->pessoa_logada, null, null, null, null, null, null, null, null, null, null, null, null, 0);
                     $excluiu_he = $obj_hst_escolar->excluir();
                     if (!$excluiu_he) {
                         $this->mensagem = "Exclus&atilde;o do Hist&oacute;rico Escolar n&atilde;o realizado.<br>";
                         return false;
                     }
                 }
             }
             /*else*/
             if ($aprovado == 1 || $aprovado == 2) {
                 // busca informacoes da instituicao
                 $obj_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao);
                 $det_instituicao = $obj_instituicao->detalhe();
                 $nm_instituicao = $det_instituicao["nm_instituicao"];
                 $cidade = $det_instituicao["cidade"];
                 $uf = $det_instituicao["ref_sigla_uf"];
                 $obj_hst_escolar = new clsPmieducarHistoricoEscolar();
                 $lst_hst_escolar = $obj_hst_escolar->lista($this->ref_cod_aluno, null, null, null, $det_curso['nm_curso'], $this->ano_letivo, $carga_horaria_curso, null, null, null, null, null, null, null, null, null, null, null, null, $this->ref_cod_instituicao, 0, 1, $this->ref_cod_matricula);
                 $sql = "SELECT SUM(falta) FROM pmieducar.faltas WHERE ref_cod_matricula = {$this->ref_cod_matricula}";
                 $db5 = new clsBanco();
                 $total_faltas = $db5->CampoUnico($sql);
                 if (is_array($lst_hst_escolar)) {
                     $det_hst_escolar = array_shift($lst_hst_escolar);
                     $obj_hst_escolar = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, $det_hst_escolar["sequencial"], $this->pessoa_logada, null, $det_curso['nm_curso'], $this->ano_letivo, $carga_horaria_curso, null, $nm_instituicao, $cidade, $uf, null, $aprovado, null, null, 1, $total_faltas, $this->ref_cod_instituicao, 0, 1, $this->ref_cod_matricula);
                     $editou_he = $obj_hst_escolar->edita();
                 } else {
                     $obj_hst_escolar = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, null, null, $this->pessoa_logada, $det_curso['nm_curso'], $this->ano_letivo, $carga_horaria_curso, null, $nm_instituicao, $cidade, $uf, null, $aprovado, null, null, 1, $total_faltas, $this->ref_cod_instituicao, 0, 1, $this->ref_cod_matricula);
                     $cadastrou_he = $obj_hst_escolar->cadastra();
                 }
                 if (($editou_he || $cadastrou_he) && !$this->conceitual) {
                     if ($cadastrou_he) {
                         $obj_historico = new clsPmieducarHistoricoEscolar();
                         $sequencial = $obj_historico->getMaxSequencial($this->ref_cod_aluno);
                     } else {
                         $sequencial = $det_hst_escolar["sequencial"];
                     }
                     $historico_disciplina = array();
                     foreach ($nota_media_aluno as $key => $nota) {
                         $historico_disciplina[$key] = array($nota, $faltas_media_aluno[$key]);
                     }
                     foreach ($historico_disciplina as $disciplina => $campo) {
                         $obj_disciplina = new clsPmieducarDisciplina($disciplina);
                         $det_disciplina = $obj_disciplina->detalhe();
                         $nm_disciplina = $det_disciplina["nm_disciplina"];
                         $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores();
                         $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $campo[0], $campo[0]);
                         if (is_array($lst_avaliacao_valores)) {
                             $det_avaliacao_valores = array_shift($lst_avaliacao_valores);
                             $nm_nota = $det_avaliacao_valores["nome"];
                             $obj_hd = new clsPmieducarHistoricoDisciplinas();
                             $lst_hd = $obj_hd->lista(null, $this->ref_cod_aluno, $sequencial, $nm_disciplina);
                             if (is_array($lst_hd)) {
                                 $det_hd = array_shift($lst_hd);
                                 $obj_hd = new clsPmieducarHistoricoDisciplinas($det_hd["sequencial"], $this->ref_cod_aluno, $sequencial, $nm_disciplina, $nm_nota, $campo[1]);
                                 $hst_disciplina = $obj_hd->edita();
                             } else {
                                 $obj_hd = new clsPmieducarHistoricoDisciplinas(null, $this->ref_cod_aluno, $sequencial, $nm_disciplina, $nm_nota, $campo[1]);
                                 $hst_disciplina = $obj_hd->cadastra();
                             }
                             if (!$hst_disciplina) {
                                 $this->mensagem = "Cadastro/Edi&ccedil;&atilde;o do Hist&oacute;rico Disciplinas n&atilde;o realizado.<br>";
                                 return false;
                             }
                         } else {
                             $this->mensagem = "N&atilde;o foi poss&iacute;vel encontrar os Valores do Tipo de Avalia&ccedil;&atilde;o.<br>";
                             return false;
                         }
                     }
                 }
                 /*
                 else if( !$editou_he || !$cadastrou_he )
                 {
                 	$this->mensagem = "Cadastro/Edi&ccedil;&atilde;o do Hist&oacute;rico Escolar n&atilde;o realizado.<br>";
                 	return false;
                 }
                 */
             }
             $this->mensagem .= "Cadastro efetuado com sucesso.<br>";
             header("Location: educar_falta_nota_aluno_det.php?ref_cod_matricula={$this->ref_cod_matricula}&ref_cod_turma={$this->ref_cod_turma}&sequencial={$this->ref_sequencial_matricula_turma}");
             die;
             return true;
         }
         $this->mensagem = "Edi&ccedil;&atilde;o n&atilde;o realizada (Matr&iacute;cula).<br>";
         echo "<!--\nErro ao editar clsPmieducarMatricula\nvalores obrigatorios\nis_numeric( {$this->ref_cod_matricula} ) && is_numeric( {$this->pessoa_logada} ) && is_numeric( {$this->modulo} )\n-->";
         return false;
     }
 }
Ejemplo n.º 3
0
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Obras - Detalhe";
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->cod_acervo = $_GET["cod_acervo"];
     $tmp_obj = new clsPmieducarAcervo($this->cod_acervo);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header("location: educar_acervo_lst.php");
         die;
     }
     if (class_exists("clsPmieducarBiblioteca")) {
         $obj_ref_cod_biblioteca = new clsPmieducarBiblioteca($registro["ref_cod_biblioteca"]);
         $det_ref_cod_biblioteca = $obj_ref_cod_biblioteca->detalhe();
         $registro["ref_cod_biblioteca"] = $det_ref_cod_biblioteca["nm_biblioteca"];
         if (class_exists("clsPmieducarInstituicao")) {
             $registro["ref_cod_instituicao"] = $det_ref_cod_biblioteca["ref_cod_instituicao"];
             $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"];
         } else {
             $registro["ref_cod_instituicao"] = "Erro na geracao";
             echo "<!--\nErro\nClasse nao existente: clsPmieducarInstituicao\n-->";
         }
         if (class_exists("clsPmieducarEscola")) {
             $registro["ref_cod_escola"] = $det_ref_cod_biblioteca["ref_cod_escola"];
             $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_cod_escola"]);
             $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
             $idpes = $det_ref_cod_escola["ref_idpes"];
             if ($idpes) {
                 $obj_escola = new clsPessoaJuridica($idpes);
                 $obj_escola_det = $obj_escola->detalhe();
                 $registro["ref_cod_escola"] = $obj_escola_det["fantasia"];
             } else {
                 $obj_escola = new clsPmieducarEscolaComplemento($registro["ref_cod_escola"]);
                 $obj_escola_det = $obj_escola->detalhe();
                 $registro["ref_cod_escola"] = $obj_escola_det["nm_escola"];
             }
         }
     } else {
         $registro["ref_cod_biblioteca"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarBiblioteca\n-->";
     }
     if (class_exists("clsPmieducarExemplarTipo")) {
         $obj_ref_cod_exemplar_tipo = new clsPmieducarExemplarTipo($registro["ref_cod_exemplar_tipo"]);
         $det_ref_cod_exemplar_tipo = $obj_ref_cod_exemplar_tipo->detalhe();
         $registro["ref_cod_exemplar_tipo"] = $det_ref_cod_exemplar_tipo["nm_tipo"];
     } else {
         $registro["ref_cod_exemplar_tipo"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarExemplarTipo\n-->";
     }
     if (class_exists("clsPmieducarAcervo")) {
         $obj_ref_cod_acervo = new clsPmieducarAcervo($registro["ref_cod_acervo"]);
         $det_ref_cod_acervo = $obj_ref_cod_acervo->detalhe();
         $registro["ref_cod_acervo"] = $det_ref_cod_acervo["titulo"];
     } else {
         $registro["ref_cod_acervo"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarAcervo\n-->";
     }
     if (class_exists("clsPmieducarAcervoColecao")) {
         $obj_ref_cod_acervo_colecao = new clsPmieducarAcervoColecao($registro["ref_cod_acervo_colecao"]);
         $det_ref_cod_acervo_colecao = $obj_ref_cod_acervo_colecao->detalhe();
         $registro["ref_cod_acervo_colecao"] = $det_ref_cod_acervo_colecao["nm_colecao"];
     } else {
         $registro["ref_cod_acervo_colecao"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarAcervoColecao\n-->";
     }
     if (class_exists("clsPmieducarAcervoIdioma")) {
         $obj_ref_cod_acervo_idioma = new clsPmieducarAcervoIdioma($registro["ref_cod_acervo_idioma"]);
         $det_ref_cod_acervo_idioma = $obj_ref_cod_acervo_idioma->detalhe();
         $registro["ref_cod_acervo_idioma"] = $det_ref_cod_acervo_idioma["nm_idioma"];
     } else {
         $registro["ref_cod_acervo_idioma"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarAcervoIdioma\n-->";
     }
     if (class_exists("clsPmieducarAcervoEditora")) {
         $obj_ref_cod_acervo_editora = new clsPmieducarAcervoEditora($registro["ref_cod_acervo_editora"]);
         $det_ref_cod_acervo_editora = $obj_ref_cod_acervo_editora->detalhe();
         $registro["ref_cod_acervo_editora"] = $det_ref_cod_acervo_editora["nm_editora"];
     } else {
         $registro["ref_cod_acervo_editora"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarAcervoEditora\n-->";
     }
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if ($nivel_usuario == 1) {
         if ($registro["ref_cod_instituicao"]) {
             $this->addDetalhe(array("Institui&ccedil;&atilde;o", "{$registro["ref_cod_instituicao"]}"));
         }
     }
     if ($nivel_usuario == 1 || $nivel_usuario == 2) {
         if ($registro["ref_cod_escola"]) {
             $this->addDetalhe(array("Escola", "{$registro["ref_cod_escola"]}"));
         }
     }
     if ($registro["ref_cod_biblioteca"]) {
         $this->addDetalhe(array("Biblioteca", "{$registro["ref_cod_biblioteca"]}"));
     }
     if ($registro["titulo"]) {
         $this->addDetalhe(array("T&iacute;tulo", "{$registro["titulo"]}"));
     }
     if ($registro["sub_titulo"]) {
         $this->addDetalhe(array("Subt&iacute;tulo", "{$registro["sub_titulo"]}"));
     }
     if ($registro["ref_cod_exemplar_tipo"]) {
         $this->addDetalhe(array("Tipo", "{$registro["ref_cod_exemplar_tipo"]}"));
     }
     if ($registro["ref_cod_acervo"]) {
         $this->addDetalhe(array("Obra Refer&ecirc;ncia", "{$registro["ref_cod_acervo"]}"));
     }
     if ($registro["ref_cod_acervo_colecao"]) {
         $this->addDetalhe(array("Cole&ccedil;&atilde;o", "{$registro["ref_cod_acervo_colecao"]}"));
     }
     if ($registro["ref_cod_acervo_idioma"]) {
         $this->addDetalhe(array("Idioma", "{$registro["ref_cod_acervo_idioma"]}"));
     }
     if ($registro["ref_cod_acervo_editora"]) {
         $this->addDetalhe(array("Editora", "{$registro["ref_cod_acervo_editora"]}"));
     }
     $obj = new clsPmieducarAcervoAcervoAutor();
     $obj->setOrderby("principal DESC");
     $lst = $obj->lista(null, $this->cod_acervo);
     if ($lst) {
         $tabela = "<TABLE>\n\t\t\t\t\t       <TR align=center>\n\t\t\t\t\t           <TD bgcolor=#A1B3BD><B>Nome</B></TD>\n\t\t\t\t\t           <TD bgcolor=#A1B3BD><B>Principal</B></TD>\n\t\t\t\t\t       </TR>";
         $cont = 0;
         foreach ($lst as $valor) {
             if ($cont % 2 == 0) {
                 $color = " bgcolor=#E4E9ED ";
             } else {
                 $color = " bgcolor=#FFFFFF ";
             }
             $obj = new clsPmieducarAcervoAutor($valor["ref_cod_acervo_autor"]);
             $det = $obj->detalhe();
             $nm_autor = $det["nm_autor"];
             $principal = $valor["principal"];
             if ($principal == 1) {
                 $principal = "sim";
             } else {
                 $principal = "n&atilde;o";
             }
             $tabela .= "<TR>\n\t\t\t\t\t\t\t    <TD {$color} align=left>{$nm_autor}</TD>\n\t\t\t\t\t\t\t    <TD {$color} align=left>{$principal}</TD>\n\t\t\t\t\t\t\t</TR>";
             $cont++;
         }
         $tabela .= "</TABLE>";
     }
     if ($tabela) {
         $this->addDetalhe(array("Autor", "{$tabela}"));
     }
     if ($registro["cdu"]) {
         $this->addDetalhe(array("Cdu", "{$registro["cdu"]}"));
     }
     if ($registro["cutter"]) {
         $this->addDetalhe(array("Cutter", "{$registro["cutter"]}"));
     }
     if ($registro["volume"]) {
         $this->addDetalhe(array("Volume", "{$registro["volume"]}"));
     }
     if ($registro["num_edicao"]) {
         $this->addDetalhe(array("N&uacute;mero Edic&atilde;o", "{$registro["num_edicao"]}"));
     }
     if ($registro["ano"]) {
         $this->addDetalhe(array("Ano", "{$registro["ano"]}"));
     }
     if ($registro["num_paginas"]) {
         $this->addDetalhe(array("N&uacute;mero P&aacute;ginas", "{$registro["num_paginas"]}"));
     }
     if ($registro["isbn"]) {
         $this->addDetalhe(array("ISBN", "{$registro["isbn"]}"));
     }
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(598, $this->pessoa_logada, 11)) {
         $this->url_novo = "educar_acervo_cad.php";
         $this->url_editar = "educar_acervo_cad.php?cod_acervo={$registro["cod_acervo"]}";
     }
     $this->url_cancelar = "educar_acervo_lst.php";
     $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");
                             }
                         }
                     }
                 }
             }
         }
     }
 }
Ejemplo n.º 5
0
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Escola - Detalhe";
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->cod_escola = $_GET["cod_escola"];
     $tmp_obj = new clsPmieducarEscola($this->cod_escola);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header("location: educar_escola_lst.php");
         die;
     }
     if (class_exists("clsPmieducarInstituicao")) {
         $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"];
     } else {
         $registro["ref_cod_instituicao"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarInstituicao\n-->";
     }
     if ($registro["ref_idpes"]) {
         $obj_escola = new clsPessoa_($registro["ref_idpes"]);
         $obj_escola_det = $obj_escola->detalhe();
         $url = $obj_escola_det["url"];
         $email = $obj_escola_det["email"];
         $obj_escola1 = new clsPessoaJuridica($registro["ref_idpes"]);
         $obj_escola_det1 = $obj_escola1->detalhe();
         $nm_escola = $obj_escola_det1["fantasia"];
         $obj_endereco = new clsPessoaEndereco($registro["ref_idpes"]);
         if (class_exists("clsPessoaEndereco")) {
             $tipo = 1;
             $endereco_lst = $obj_endereco->lista($registro["ref_idpes"]);
             if ($endereco_lst) {
                 foreach ($endereco_lst as $endereco) {
                     $cep = $endereco["cep"]->cep;
                     $idlog = $endereco["idlog"]->idlog;
                     $obj = new clsLogradouro($idlog);
                     $obj_det = $obj->detalhe();
                     $logradouro = $obj_det["nome"];
                     $idtlog = $obj_det["idtlog"]->detalhe();
                     $tipo_logradouro = $idtlog["descricao"];
                     $idbai = $endereco["idbai"]->detalhe();
                     $idbai = $idbai['nome'];
                     $numero = $endereco["numero"];
                     $complemento = $endereco["complemento"];
                     $andar = $endereco["andar"];
                 }
             } else {
                 if (class_exists("clsEnderecoExterno")) {
                     $tipo = 2;
                     $obj_endereco = new clsEnderecoExterno();
                     $endereco_lst = $obj_endereco->lista(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, $registro["ref_idpes"]);
                     if ($endereco_lst) {
                         foreach ($endereco_lst as $endereco) {
                             $cep = $endereco["cep"];
                             $sigla_uf = $endereco["sigla_uf"]->detalhe();
                             $sigla_uf = $sigla_uf["nome"];
                             $cidade = $endereco["cidade"];
                             $idtlog = $endereco["idtlog"]->detalhe();
                             $tipo_logradouro = $idtlog["descricao"];
                             $logradouro = $endereco["logradouro"];
                             $bairro = $endereco["bairro"];
                             $numero = $endereco["numero"];
                             $complemento = $endereco["complemento"];
                             $andar = $endereco["andar"];
                         }
                     }
                 }
             }
         }
         if (class_exists("clsPessoaTelefone")) {
             $obj_telefone = new clsPessoaTelefone();
             $telefone_lst = $obj_telefone->lista($registro["ref_idpes"], "tipo");
             if ($telefone_lst) {
                 foreach ($telefone_lst as $telefone) {
                     if ($telefone["tipo"] == 1) {
                         $ddd_telefone_1 = $telefone["ddd"];
                         $telefone_1 = $telefone["fone"];
                     } else {
                         if ($telefone["tipo"] == 2) {
                             $ddd_telefone_2 = $telefone["ddd"];
                             $telefone_2 = $telefone["fone"];
                         } else {
                             if ($telefone["tipo"] == 4) {
                                 $ddd_telefone_fax = $telefone["ddd"];
                                 $telefone_fax = $telefone["fone"];
                             }
                         }
                     }
                 }
             }
         }
     } else {
         if (class_exists("clsPmieducarEscolaComplemento")) {
             $tipo = 3;
             $obj_escola = new clsPmieducarEscolaComplemento($this->cod_escola);
             $obj_escola_det = $obj_escola->detalhe();
             $nm_escola = $obj_escola_det["nm_escola"];
             $cep = $obj_escola_det["cep"];
             $numero = $obj_escola_det["numero"];
             $complemento = $obj_escola_det["complemento"];
             $email = $obj_escola_det["email"];
             $cidade = $obj_escola_det["municipio"];
             $bairro = $obj_escola_det["bairro"];
             $logradouro = $obj_escola_det["logradouro"];
             $ddd_telefone = $obj_escola_det["ddd_telefone"];
             $telefone = $obj_escola_det["telefone"];
             $ddd_telefone_fax = $obj_escola_det["ddd_fax"];
             $telefone_fax = $obj_escola_det["fax"];
         }
     }
     if (class_exists("clsPmieducarEscolaLocalizacao")) {
         $obj_ref_cod_escola_localizacao = new clsPmieducarEscolaLocalizacao($registro["ref_cod_escola_localizacao"]);
         $det_ref_cod_escola_localizacao = $obj_ref_cod_escola_localizacao->detalhe();
         $registro["ref_cod_escola_localizacao"] = $det_ref_cod_escola_localizacao["nm_localizacao"];
     } else {
         $registro["ref_cod_escola_localizacao"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarEscolaLocalizacao\n-->";
     }
     if (class_exists("clsPmieducarEscolaRedeEnsino")) {
         $obj_ref_cod_escola_rede_ensino = new clsPmieducarEscolaRedeEnsino($registro["ref_cod_escola_rede_ensino"]);
         $det_ref_cod_escola_rede_ensino = $obj_ref_cod_escola_rede_ensino->detalhe();
         $registro["ref_cod_escola_rede_ensino"] = $det_ref_cod_escola_rede_ensino["nm_rede"];
     } else {
         $registro["ref_cod_escola_rede_ensino"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarEscolaRedeEnsino\n-->";
     }
     if (class_exists("clsPessoaJuridica")) {
         $obj_ref_idpes = new clsPessoaJuridica($registro["ref_idpes"]);
         $det_ref_idpes = $obj_ref_idpes->detalhe();
         $registro["ref_idpes"] = $det_ref_idpes["nome"];
     } else {
         $registro["ref_idpes"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsCadastroJuridica\n-->";
     }
     if ($registro["ref_cod_instituicao"]) {
         $this->addDetalhe(array("Institui&ccedil;&atilde;o", "{$registro["ref_cod_instituicao"]}"));
     }
     if ($nm_escola) {
         $this->addDetalhe(array("Escola", "{$nm_escola}"));
     }
     if ($registro["sigla"]) {
         $this->addDetalhe(array("Sigla", "{$registro["sigla"]}"));
     }
     if ($registro["ref_cod_escola_localizacao"]) {
         $this->addDetalhe(array("Localiza&ccedil;&atilde;o", "{$registro["ref_cod_escola_localizacao"]}"));
     }
     if ($registro["ref_cod_escola_rede_ensino"]) {
         $this->addDetalhe(array("Rede Ensino", "{$registro["ref_cod_escola_rede_ensino"]}"));
     }
     if ($registro["ref_idpes"]) {
         $this->addDetalhe(array("Raz&atilde;o Social", "{$registro["ref_idpes"]}"));
     }
     if ($tipo == 1) {
         if ($cep) {
             $cep = int2CEP($cep);
             $this->addDetalhe(array("CEP", "{$cep}"));
         }
         if ($idbai) {
             $this->addDetalhe(array("Bairro", "{$idbai}"));
         }
         if ($tipo_logradouro) {
             $this->addDetalhe(array("Tipo Logradouro", "{$tipo_logradouro}"));
         }
         if ($logradouro) {
             $this->addDetalhe(array("Logradouro", "{$logradouro}"));
         }
         if ($complemento) {
             $this->addDetalhe(array("Complemento", "{$complemento}"));
         }
         if ($numero) {
             $this->addDetalhe(array("N&uacute;mero", "{$numero}"));
         }
         if ($andar) {
             $this->addDetalhe(array("Andar", "{$andar}"));
         }
         if ($url) {
             $this->addDetalhe(array("Site", "{$url}"));
         }
         if ($email) {
             $this->addDetalhe(array("E-mail", "{$email}"));
         }
         if ($ddd_telefone_1) {
             $this->addDetalhe(array("DDD Telefone 1", "{$ddd_telefone_1}"));
         }
         if ($telefone_1) {
             $this->addDetalhe(array("Telefone 1", "{$telefone_1}"));
         }
         if ($ddd_telefone_2) {
             $this->addDetalhe(array("DDD Telefone 2", "{$ddd_telefone_2}"));
         }
         if ($telefone_2) {
             $this->addDetalhe(array("Telefone 2", "{$telefone_2}"));
         }
         if ($ddd_telefone_fax) {
             $this->addDetalhe(array("DDD Fax", "{$ddd_telefone_fax}"));
         }
         if ($telefone_fax) {
             $this->addDetalhe(array("Fax", "{$telefone_fax}"));
         }
     } else {
         if ($tipo == 2) {
             if ($cep) {
                 $cep = int2CEP($cep);
                 $this->addDetalhe(array("CEP", "{$cep}"));
             }
             if ($sigla_uf) {
                 $this->addDetalhe(array("Estado", "{$sigla_uf}"));
             }
             if ($cidade) {
                 $this->addDetalhe(array("Cidade", "{$cidade}"));
             }
             if ($bairro) {
                 $this->addDetalhe(array("Bairro", "{$bairro}"));
             }
             if ($tipo_logradouro) {
                 $this->addDetalhe(array("Tipo Logradouro", "{$tipo_logradouro}"));
             }
             if ($logradouro) {
                 $this->addDetalhe(array("Logradouro", "{$logradouro}"));
             }
             if ($complemento) {
                 $this->addDetalhe(array("Complemento", "{$complemento}"));
             }
             if ($numero) {
                 $this->addDetalhe(array("N&uacute;mero", "{$numero}"));
             }
             if ($andar) {
                 $this->addDetalhe(array("Andar", "{$andar}"));
             }
             if ($url) {
                 $this->addDetalhe(array("Site", "{$url}"));
             }
             if ($email) {
                 $this->addDetalhe(array("E-mail", "{$email}"));
             }
             if ($ddd_telefone_1) {
                 $this->addDetalhe(array("DDD Telefone 1", "{$ddd_telefone_1}"));
             }
             if ($telefone_1) {
                 $this->addDetalhe(array("Telefone 1", "{$telefone_1}"));
             }
             if ($ddd_telefone_2) {
                 $this->addDetalhe(array("DDD Telefone 2", "{$ddd_telefone_2}"));
             }
             if ($telefone_2) {
                 $this->addDetalhe(array("Telefone 2", "{$telefone_2}"));
             }
             if ($ddd_telefone_fax) {
                 $this->addDetalhe(array("DDD Fax", "{$ddd_telefone_fax}"));
             }
             if ($telefone_fax) {
                 $this->addDetalhe(array("Fax", "{$telefone_fax}"));
             }
         } else {
             if ($tipo == 3) {
                 if ($cep) {
                     $cep = int2CEP($cep);
                     $this->addDetalhe(array("CEP", "{$cep}"));
                 }
                 if ($cidade) {
                     $this->addDetalhe(array("Cidade", "{$cidade}"));
                 }
                 if ($bairro) {
                     $this->addDetalhe(array("Bairro", "{$bairro}"));
                 }
                 if ($logradouro) {
                     $this->addDetalhe(array("Logradouro", "{$logradouro}"));
                 }
                 if ($complemento) {
                     $this->addDetalhe(array("Complemento", "{$complemento}"));
                 }
                 if ($numero) {
                     $this->addDetalhe(array("N&uacute;mero", "{$numero}"));
                 }
                 if ($email) {
                     $this->addDetalhe(array("E-mail", "{$email}"));
                 }
                 if ($ddd_telefone) {
                     $this->addDetalhe(array("DDD Telefone", "{$ddd_telefone}"));
                 }
                 if ($telefone) {
                     $this->addDetalhe(array("Telefone", "{$telefone}"));
                 }
                 if ($ddd_telefone_fax) {
                     $this->addDetalhe(array("DDD Fax", "{$ddd_telefone_fax}"));
                 }
                 if ($telefone_fax) {
                     $this->addDetalhe(array("Fax", "{$telefone_fax}"));
                 }
             }
         }
     }
     $obj = new clspmieducarescolacurso();
     $lst = $obj->lista($this->cod_escola);
     if ($lst) {
         $tabela = "<table>\n\t\t\t\t\t       <tr align='center'>\n\t\t\t\t\t           <td bgcolor='#a1b3bd'><b>nome</b></td>\n\t\t\t\t\t       </tr>";
         $cont = 0;
         foreach ($lst as $valor) {
             if ($cont % 2 == 0) {
                 $color = " bgcolor='#e4e9ed' ";
             } else {
                 $color = " bgcolor='#ffffff' ";
             }
             $obj_curso = new clspmieducarcurso($valor["ref_cod_curso"]);
             $obj_curso->setorderby("nm_curso asc");
             $obj_curso_det = $obj_curso->detalhe();
             $nm_curso = $obj_curso_det["nm_curso"];
             $tabela .= "<tr>\n\t\t\t\t\t\t\t    <td {$color} align=left>{$nm_curso}</td>\n\t\t\t\t\t\t\t</tr>";
             $cont++;
         }
         $tabela .= "</table>";
     }
     if ($nm_curso) {
         $this->addDetalhe(array("Curso", "{$tabela}"));
     }
     if ($tabela = $this->listaAnos()) {
         $this->addDetalhe(array("-", "{$tabela}"));
     }
     $obj_permissoes = new clsPermissoes();
     $canCreate = $obj_permissoes->permissao_cadastra(561, $this->pessoa_logada, 3);
     $canEdit = $obj_permissoes->permissao_cadastra(561, $this->pessoa_logada, 7);
     if ($canCreate) {
         $this->url_novo = "educar_escola_cad.php";
     }
     if ($canEdit) {
         $this->url_editar = "educar_escola_cad.php?cod_escola={$registro["cod_escola"]}";
         $this->array_botao = array("Definir Ano Letivo");
         $this->array_botao_url = array("educar_escola_ano_letivo_cad.php?cod_escola={$registro["cod_escola"]}");
     }
     $this->url_cancelar = "educar_escola_lst.php";
     $this->largura = "100%";
 }
Ejemplo n.º 6
0
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Obras - Detalhe";
     $this->cod_acervo = $_GET["cod_acervo"];
     $tmp_obj = new clsPmieducarAcervo($this->cod_acervo);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header("location: educar_acervo_lst.php");
         die;
     }
     if (class_exists("clsPmieducarBiblioteca")) {
         $obj_ref_cod_biblioteca = new clsPmieducarBiblioteca($registro["ref_cod_biblioteca"]);
         $det_ref_cod_biblioteca = $obj_ref_cod_biblioteca->detalhe();
         $registro["ref_cod_biblioteca"] = $det_ref_cod_biblioteca["nm_biblioteca"];
         if (class_exists("clsPmieducarInstituicao")) {
             $registro["ref_cod_instituicao"] = $det_ref_cod_biblioteca["ref_cod_instituicao"];
             $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"];
         } else {
             $registro["ref_cod_instituicao"] = "Erro na geracao";
             echo "<!--\nErro\nClasse nao existente: clsPmieducarInstituicao\n-->";
         }
         if (class_exists("clsPmieducarEscola")) {
             $registro["ref_cod_escola"] = $det_ref_cod_biblioteca["ref_cod_escola"];
             $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_cod_escola"]);
             $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
             $idpes = $det_ref_cod_escola["ref_idpes"];
             if ($idpes) {
                 $obj_escola = new clsPessoaJuridica($idpes);
                 $obj_escola_det = $obj_escola->detalhe();
                 $registro["ref_cod_escola"] = $obj_escola_det["fantasia"];
             } else {
                 $obj_escola = new clsPmieducarEscolaComplemento($registro["ref_cod_escola"]);
                 $obj_escola_det = $obj_escola->detalhe();
                 $registro["ref_cod_escola"] = $obj_escola_det["nm_escola"];
             }
         }
     } else {
         $registro["ref_cod_biblioteca"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarBiblioteca\n-->";
     }
     if (class_exists("clsPmieducarExemplarTipo")) {
         $obj_ref_cod_exemplar_tipo = new clsPmieducarExemplarTipo($registro["ref_cod_exemplar_tipo"]);
         $det_ref_cod_exemplar_tipo = $obj_ref_cod_exemplar_tipo->detalhe();
         $registro["ref_cod_exemplar_tipo"] = $det_ref_cod_exemplar_tipo["nm_tipo"];
     } else {
         $registro["ref_cod_exemplar_tipo"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarExemplarTipo\n-->";
     }
     if (class_exists("clsPmieducarAcervo")) {
         $obj_ref_cod_acervo = new clsPmieducarAcervo($registro["ref_cod_acervo"]);
         $det_ref_cod_acervo = $obj_ref_cod_acervo->detalhe();
         $registro["ref_cod_acervo"] = $det_ref_cod_acervo["titulo"];
     } else {
         $registro["ref_cod_acervo"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarAcervo\n-->";
     }
     if (class_exists("clsPmieducarAcervoColecao")) {
         $obj_ref_cod_acervo_colecao = new clsPmieducarAcervoColecao($registro["ref_cod_acervo_colecao"]);
         $det_ref_cod_acervo_colecao = $obj_ref_cod_acervo_colecao->detalhe();
         $registro["ref_cod_acervo_colecao"] = $det_ref_cod_acervo_colecao["nm_colecao"];
     } else {
         $registro["ref_cod_acervo_colecao"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarAcervoColecao\n-->";
     }
     if (class_exists("clsPmieducarAcervoIdioma")) {
         $obj_ref_cod_acervo_idioma = new clsPmieducarAcervoIdioma($registro["ref_cod_acervo_idioma"]);
         $det_ref_cod_acervo_idioma = $obj_ref_cod_acervo_idioma->detalhe();
         $registro["ref_cod_acervo_idioma"] = $det_ref_cod_acervo_idioma["nm_idioma"];
     } else {
         $registro["ref_cod_acervo_idioma"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarAcervoIdioma\n-->";
     }
     if (class_exists("clsPmieducarAcervoEditora")) {
         $obj_ref_cod_acervo_editora = new clsPmieducarAcervoEditora($registro["ref_cod_acervo_editora"]);
         $det_ref_cod_acervo_editora = $obj_ref_cod_acervo_editora->detalhe();
         $registro["ref_cod_acervo_editora"] = $det_ref_cod_acervo_editora["nm_editora"];
     } else {
         $registro["ref_cod_acervo_editora"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarAcervoEditora\n-->";
     }
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if ($nivel_usuario == 1) {
         if ($registro["ref_cod_instituicao"]) {
             $this->addDetalhe(array("Institui&ccedil;&atilde;o", "{$registro["ref_cod_instituicao"]}"));
         }
     }
     if ($nivel_usuario == 1 || $nivel_usuario == 2) {
         if ($registro["ref_cod_escola"]) {
             $this->addDetalhe(array("Escola", "{$registro["ref_cod_escola"]}"));
         }
     }
     if ($registro["ref_cod_biblioteca"]) {
         $this->addDetalhe(array("Biblioteca", "{$registro["ref_cod_biblioteca"]}"));
     }
     if ($registro["titulo"]) {
         $this->addDetalhe(array("T&iacute;tulo", "{$registro["titulo"]}"));
     }
     if ($registro["sub_titulo"]) {
         $this->addDetalhe(array("Subt&iacute;tulo", "{$registro["sub_titulo"]}"));
     }
     if ($registro["ref_cod_exemplar_tipo"]) {
         $this->addDetalhe(array("Tipo", "{$registro["ref_cod_exemplar_tipo"]}"));
     }
     if ($registro["ref_cod_acervo"]) {
         $this->addDetalhe(array("Obra Refer&ecirc;ncia", "{$registro["ref_cod_acervo"]}"));
     }
     if ($registro["ref_cod_acervo_colecao"]) {
         $this->addDetalhe(array("Cole&ccedil;&atilde;o", "{$registro["ref_cod_acervo_colecao"]}"));
     }
     if ($registro["ref_cod_acervo_idioma"]) {
         $this->addDetalhe(array("Idioma", "{$registro["ref_cod_acervo_idioma"]}"));
     }
     if ($registro["ref_cod_acervo_editora"]) {
         $this->addDetalhe(array("Editora", "{$registro["ref_cod_acervo_editora"]}"));
     }
     $obj = new clsPmieducarAcervoAcervoAutor();
     $obj->setOrderby("principal DESC");
     $lst = $obj->lista(null, $this->cod_acervo);
     if ($lst) {
         $tabela = "<TABLE>\n\t\t\t\t\t       <TR align=center>\n\t\t\t\t\t           <TD bgcolor=#A1B3BD><B>Nome</B></TD>\n\t\t\t\t\t           <TD bgcolor=#A1B3BD><B>Principal</B></TD>\n\t\t\t\t\t       </TR>";
         $cont = 0;
         foreach ($lst as $valor) {
             if ($cont % 2 == 0) {
                 $color = " bgcolor=#E4E9ED ";
             } else {
                 $color = " bgcolor=#FFFFFF ";
             }
             $obj = new clsPmieducarAcervoAutor($valor["ref_cod_acervo_autor"]);
             $det = $obj->detalhe();
             $nm_autor = $det["nm_autor"];
             $principal = $valor["principal"];
             if ($principal == 1) {
                 $principal = "sim";
             } else {
                 $principal = "n&atilde;o";
             }
             $tabela .= "<TR>\n\t\t\t\t\t\t\t    <TD {$color} align=left>{$nm_autor}</TD>\n\t\t\t\t\t\t\t    <TD {$color} align=left>{$principal}</TD>\n\t\t\t\t\t\t\t</TR>";
             $cont++;
         }
         $tabela .= "</TABLE>";
     }
     if ($tabela) {
         $this->addDetalhe(array("Autor", "{$tabela}"));
     }
     if ($registro["estante"]) {
         $this->addDetalhe(array("Estante", "{$registro["estante"]}"));
     }
     if ($registro["cdd"]) {
         $this->addDetalhe(array("Cdd", "{$registro["cdd"]}"));
     }
     if ($registro["cdu"]) {
         $this->addDetalhe(array("Cdu", "{$registro["cdu"]}"));
     }
     if ($registro["cutter"]) {
         $this->addDetalhe(array("Cutter", "{$registro["cutter"]}"));
     }
     if ($registro["volume"]) {
         $this->addDetalhe(array("Volume", "{$registro["volume"]}"));
     }
     if ($registro["num_edicao"]) {
         $this->addDetalhe(array("N&uacute;mero Edic&atilde;o", "{$registro["num_edicao"]}"));
     }
     if ($registro["ano"]) {
         $this->addDetalhe(array("Ano", "{$registro["ano"]}"));
     }
     if ($registro["num_paginas"]) {
         $this->addDetalhe(array("N&uacute;mero P&aacute;ginas", "{$registro["num_paginas"]}"));
     }
     if ($registro["isbn"]) {
         $this->addDetalhe(array("ISBN", "{$registro["isbn"]}"));
     }
     $obj = new clsPmieducarAcervoAssunto();
     $obj = $obj->listaAssuntosPorObra($this->cod_acervo);
     if (count($obj)) {
         foreach ($obj as $reg) {
             $assuntos .= '<span style="background-color: #A1B3BD; padding: 2px;"><b>' . $reg['nome'] . '</b></span>&nbsp; ';
         }
         if (!empty($assuntos)) {
             $this->addDetalhe(array("Assuntos", "{$assuntos}"));
         }
     }
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(598, $this->pessoa_logada, 11)) {
         $this->url_novo = "educar_acervo_cad.php";
         $this->url_editar = "educar_acervo_cad.php?cod_acervo={$registro["cod_acervo"]}";
     }
     $this->url_cancelar = "educar_acervo_lst.php";
     $this->largura = "100%";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_biblioteca_index.php" => "i-Educar - Biblioteca", "" => "Detalhe da obra"));
     $this->enviaLocalizacao($localizacao->montar());
 }
Ejemplo n.º 7
0
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Editora - Detalhe";
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->cod_acervo_editora = $_GET["cod_acervo_editora"];
     $tmp_obj = new clsPmieducarAcervoEditora($this->cod_acervo_editora);
     $registro = $tmp_obj->detalhe();
     if (class_exists("clsPmieducarBiblioteca")) {
         $obj_ref_cod_biblioteca = new clsPmieducarBiblioteca($registro["ref_cod_biblioteca"]);
         $det_ref_cod_biblioteca = $obj_ref_cod_biblioteca->detalhe();
         $registro["ref_cod_biblioteca"] = $det_ref_cod_biblioteca["nm_biblioteca"];
         if (class_exists("clsPmieducarInstituicao")) {
             $registro["ref_cod_instituicao"] = $det_ref_cod_biblioteca["ref_cod_instituicao"];
             $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"];
         } else {
             $registro["ref_cod_instituicao"] = "Erro na geracao";
             echo "<!--\nErro\nClasse nao existente: clsPmieducarInstituicao\n-->";
         }
     }
     if (class_exists("clsPmieducarEscola")) {
         $registro["ref_cod_escola"] = $det_ref_cod_biblioteca["ref_cod_escola"];
         $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_cod_escola"]);
         $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
         $idpes = $det_ref_cod_escola["ref_idpes"];
         if ($idpes) {
             $obj_escola = new clsPessoaJuridica($idpes);
             $obj_escola_det = $obj_escola->detalhe();
             $registro["ref_cod_escola"] = $obj_escola_det["fantasia"];
         } else {
             $obj_escola = new clsPmieducarEscolaComplemento($registro["ref_cod_escola"]);
             $obj_escola_det = $obj_escola->detalhe();
             $registro["ref_cod_escola"] = $obj_escola_det["nm_escola"];
         }
     }
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if (!$registro) {
         header("location: educar_acervo_editora_lst.php");
         die;
     }
     if (class_exists("clsTipoLogradouro")) {
         $obj_ref_idtlog = new clsTipoLogradouro($registro["ref_idtlog"]);
         $det_ref_idtlog = $obj_ref_idtlog->detalhe();
         $registro["ref_idtlog"] = $det_ref_idtlog["descricao"];
     } else {
         $registro["ref_idtlog"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsUrbanoTipoLogradouro\n-->";
     }
     if (class_exists("clsUf")) {
         $obj_ref_sigla_uf = new clsUf($registro["ref_sigla_uf"]);
         $det_ref_sigla_uf = $obj_ref_sigla_uf->detalhe();
         $registro["ref_sigla_uf"] = $det_ref_sigla_uf["nome"];
     } else {
         $registro["ref_sigla_uf"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsUf\n-->";
     }
     if ($registro["nm_editora"]) {
         $this->addDetalhe(array("Editora", "{$registro["nm_editora"]}"));
     }
     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 ($registro["ref_cod_escola"]) {
             $this->addDetalhe(array("Escola", "{$registro["ref_cod_escola"]}"));
         }
     }
     if ($registro["ref_cod_biblioteca"]) {
         $this->addDetalhe(array("Biblioteca", "{$registro["ref_cod_biblioteca"]}"));
     }
     if ($registro["cep"]) {
         $registro["cep"] = int2CEP($registro["cep"]);
         $this->addDetalhe(array("CEP", "{$registro["cep"]}"));
     }
     if ($registro["ref_sigla_uf"]) {
         $this->addDetalhe(array("Estado", "{$registro["ref_sigla_uf"]}"));
     }
     if ($registro["cidade"]) {
         $this->addDetalhe(array("Cidade", "{$registro["cidade"]}"));
     }
     if ($registro["bairro"]) {
         $this->addDetalhe(array("Bairro", "{$registro["bairro"]}"));
     }
     if ($registro["ref_idtlog"]) {
         $this->addDetalhe(array("Tipo Logradouro", "{$registro["ref_idtlog"]}"));
     }
     if ($registro["logradouro"]) {
         $this->addDetalhe(array("Logradouro", "{$registro["logradouro"]}"));
     }
     if ($registro["numero"]) {
         $this->addDetalhe(array("N&uacute;mero", "{$registro["numero"]}"));
     }
     if ($registro["ddd_telefone"]) {
         $this->addDetalhe(array("DDD Telefone", "{$registro["ddd_telefone"]}"));
     }
     if ($registro["telefone"]) {
         $this->addDetalhe(array("Telefone", "{$registro["telefone"]}"));
     }
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(595, $this->pessoa_logada, 11)) {
         $this->url_novo = "educar_acervo_editora_cad.php";
         $this->url_editar = "educar_acervo_editora_cad.php?cod_acervo_editora={$registro["cod_acervo_editora"]}";
     }
     $this->url_cancelar = "educar_acervo_editora_lst.php";
     $this->largura = "100%";
 }
 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';
     $obj_escola_instituicao = new clsPmieducarEscola();
     $lst_escola_instituicao = $obj_escola_instituicao->lista($this->ref_cod_escola, null, null, $this->ref_cod_instituicao, null, null, null, null, null, null, 1);
     $this->pdf = new clsPDF("Registro de Matrículas - {$this->ano}", "Registro de Matrículas", "A4", "", false, false);
     foreach ($lst_escola_instituicao as $escola) {
         $this->ref_cod_escola = $escola['cod_escola'];
         if ($this->ref_cod_escola) {
             $obj_escola = new clsPmieducarEscola($this->ref_cod_escola);
             $det_escola = $obj_escola->detalhe();
             $this->nm_escola = $det_escola['nome'];
             $obj_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao);
             $det_instituicao = $obj_instituicao->detalhe();
             $this->nm_instituicao = $det_instituicao['nm_instituicao'];
             if ($det_escola['ref_idpes']) {
                 $obj_endereco_escola = new clsEndereco($det_escola['ref_idpes']);
                 $det_enderedo_escola = $obj_endereco_escola->detalhe();
                 $this->nm_localidade = $this->nm_municipio = $det_enderedo_escola['cidade'];
                 if (!$det_enderedo_escola) {
                     $obj_endereco_externo_escola = new clsEnderecoExterno($det_escola['ref_idpes']);
                     $det_enderedo_externo_escola = $obj_endereco_externo_escola->detalhe();
                     $this->nm_localidade = $this->nm_municipio = $det_enderedo_externo_escola['cidade'];
                 }
             } else {
                 $obj_escola_complemento = new clsPmieducarEscolaComplemento($this->ref_cod_escola);
                 $det_escola_complemento = $obj_escola_complemento->detalhe();
                 $this->nm_localidade = $this->nm_municipio = $det_escola_complemento['municipio'];
             }
         }
         $obj_cursos = new clsPmieducarCurso();
         $lst_cursos = $obj_cursos->lista($this->ref_cod_curso, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 1, null, $this->ref_cod_instituicao);
         if ($lst_cursos) {
             $x_quadrado = 30;
             $altura_caixa = 30;
             foreach ($lst_cursos as $curso) {
                 $this->buscaDiasLetivos();
                 $this->nm_curso = $curso['nm_curso'];
                 $obj_serie_curso = new clsPmieducarSerie();
                 $obj_serie_curso->setOrderby('etapa_curso asc');
                 $lst_serie_curso = $obj_serie_curso->lista(null, null, null, $curso['cod_curso'], null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao, null, null, null, $this->ref_cod_escola);
                 if ($lst_serie_curso) {
                     $this->page_y = 170;
                     $x_quadrado = 30;
                     if (!$page_open) {
                         $this->pdf->OpenPage();
                         $this->addCabecalho();
                         $page_open = true;
                     }
                     foreach ($lst_serie_curso as $serie) {
                         $obj_disc_serie = new clsPmieducarDisciplinaSerie();
                         $lst_disc_serie = $obj_disc_serie->lista(null, $serie['cod_serie'], 1);
                         if ($lst_disc_serie) {
                             $obj_turmas_serie = new clsPmieducarTurma();
                             $obj_turmas_serie->setOrderby("nm_turma");
                             $lst_turmas_serie = $obj_turmas_serie->lista(null, null, null, $serie['cod_serie'], $escola['cod_escola'], null, null, null, null, null, null, null, null, null, 1, null, null, null, null, null, null, null, null, null, $curso['cod_curso'], $this->ref_cod_instituicao, null, null);
                             if (!$lst_turmas_serie) {
                                 // verifica se a serie esta marcada em multiseriada
                                 $lst_turmas_serie = $obj_turmas_serie->lista(null, null, null, null, null, null, null, null, null, null, null, null, null, null, 1, null, null, null, null, null, null, null, null, null, $curso['cod_curso'], $this->ref_cod_instituicao, null, null, $escola['cod_escola'], $serie['cod_serie']);
                             }
                             if ($lst_turmas_serie) {
                                 foreach ($lst_turmas_serie as $turma) {
                                     $total_geral_horas = $total_geral_aulas_semana = 0;
                                     $x_quadrado = 30;
                                     $this->pdf->escreve_relativo("{$serie['nm_serie']} - Turma: {$turma['nm_turma']}", 40, $this->page_y + 4, 258, $altura_caixa, $fonte, 12, $corTexto, 'left');
                                     $this->page_y += $altura_caixa;
                                     $this->pdf->quadrado_relativo($x_quadrado, $this->page_y, 535, $altura_caixa);
                                     $this->pdf->escreve_relativo("Conteúdos Curriculares", 40, $this->page_y + 10, 258, $altura_caixa, $fonte, 10, $corTexto, 'left');
                                     $this->pdf->escreve_relativo("A.S", 470, $this->page_y + 10, 258, $altura_caixa, $fonte, 10, $corTexto, 'left');
                                     $this->pdf->escreve_relativo("H.R.", 525, $this->page_y + 10, 258, $altura_caixa, $fonte, 10, $corTexto, 'left');
                                     $this->page_y += $altura_caixa;
                                     if ($this->page_y + $altura_caixa >= 800) {
                                         $this->pdf->quadrado_relativo(30, $inicio_quadro, 70, $fim_quadro - $inicio_quadro);
                                         $this->pdf->escreve_relativo("Núcleo Comum \ne Artigo 7º\n(Lei 5692/71)", 30 + 4, $inicio_quadro + ($fim_quadro - $inicio_quadro) / 3 - (count($lst_disc_serie) == 1 ? 8 : 0), 80, $altura_caixa, $fonte, 8, $corTexto, 'left');
                                         $this->pdf->linha_relativa(450, $inicio_quadro - $altura_caixa, 0, $fim_quadro - $inicio_quadro, '0.1');
                                         $this->pdf->linha_relativa(505, $inicio_quadro - $altura_caixa, 0, $fim_quadro - $inicio_quadro, '0.1');
                                         $this->page_y = 170;
                                         $inicio_quadro = $this->page_y + $altura_caixa;
                                         $this->pdf->ClosePage();
                                         $this->pdf->OpenPage();
                                         $page_open = true;
                                         $this->addCabecalho();
                                         $this->pdf->quadrado_relativo($x_quadrado, $this->page_y, 535, $altura_caixa);
                                         $this->pdf->escreve_relativo("Conteúdos Curriculares", 40, $this->page_y + 10, 258, $altura_caixa, $fonte, 10, $corTexto, 'left');
                                         $this->pdf->escreve_relativo("A.S", 470, $this->page_y + 10, 258, $altura_caixa, $fonte, 10, $corTexto, 'left');
                                         $this->pdf->escreve_relativo("H.R.", 525, $this->page_y + 10, 258, $altura_caixa, $fonte, 10, $corTexto, 'left');
                                         $this->page_y += $altura_caixa;
                                     }
                                     $x_quadrado = 100;
                                     $obj_quadro_horario = new clsPmieducarQuadroHorario();
                                     $lst_quadro_horario = $obj_quadro_horario->lista(null, null, null, $turma['cod_turma'], null, null, null, null, 1);
                                     if (is_array($lst_quadro_horario)) {
                                         $lst_quadro_horario = array_shift($lst_quadro_horario);
                                     }
                                     $obj_disc_semana = new clsPmieducarQuadroHorarioHorarios();
                                     $obj_disc_semana->setOrderby("dia_semana asc");
                                     /*********************************************************************/
                                     //disciplinas que estâo sendo cursadas, eliminando as não cursadas
                                     $sql = "SELECT distinct(ref_cod_disciplina) FROM pmieducar.quadro_horario_horarios\n\t\t\t\t\t\t\t\t\t\t\t\tWHERE ref_cod_quadro_horario = {$lst_quadro_horario["cod_quadro_horario"]}";
                                     $disciplinas_cursadas = array();
                                     $db = new clsBanco();
                                     $db->Consulta($sql);
                                     while ($db->ProximoRegistro()) {
                                         list($ref_disciplina_cursada) = $db->Tupla();
                                         $disciplinas_cursadas[$ref_disciplina_cursada] = $ref_disciplina_cursada;
                                     }
                                     /*********************************************************************/
                                     $inicio_quadro = $this->page_y;
                                     foreach ($lst_disc_serie as $key => $disciplina) {
                                         if (array_search($disciplina["ref_cod_disciplina"], $disciplinas_cursadas)) {
                                             $obj_disc = new clsPmieducarDisciplina($disciplina['ref_cod_disciplina']);
                                             $det_disc = $obj_disc->detalhe();
                                             $this->pdf->quadrado_relativo($x_quadrado, $this->page_y, 465, $altura_caixa);
                                             $this->pdf->escreve_relativo("{$det_disc['nm_disciplina']}", $x_quadrado + 4, $this->page_y + 4, 350, $altura_caixa, $fonte, 10, $corTexto, 'left');
                                             //-------
                                             unset($lst_disc_semana);
                                             if ($lst_quadro_horario) {
                                                 $lst_disc_semana = $obj_disc_semana->lista($lst_quadro_horario['cod_quadro_horario'], $serie['cod_serie'], $this->ref_cod_escola, $disciplina['ref_cod_disciplina'], null, null, null, null, null, null, null, null, null, null, null, null, null, null, 1);
                                             }
                                             $total_dias_semana = 0;
                                             /**
                                              * Calcula o total de horas da semana
                                              */
                                             if ($lst_disc_semana) {
                                                 $total_semanas = $this->total_semanas;
                                                 $total_dias_semana = count($lst_disc_semana);
                                             }
                                             $total_geral_horas += $det_disc['carga_horaria'];
                                             $total_geral_aulas_semana += $total_dias_semana;
                                             $total_horas = sprintf("%02d:%02d", $det_disc['carga_horaria'], 0);
                                             $this->pdf->escreve_relativo(sprintf("%02d", "{$total_dias_semana}"), 451, $this->page_y + 10, 52, $altura_caixa, $fonte, 10, $corTexto, 'center');
                                             $this->pdf->escreve_relativo("{$total_horas}", 506, $this->page_y + 10, 65, $altura_caixa, $fonte, 10, $corTexto, 'center');
                                             $fim_quadro = $this->page_y += $altura_caixa;
                                             if ($this->page_y + $altura_caixa >= 800 && $key < count($lst_disc_serie) - 1) {
                                                 $x_quadrado = 30;
                                                 $this->pdf->quadrado_relativo(30, $inicio_quadro, 70, $fim_quadro - $inicio_quadro);
                                                 $this->pdf->escreve_relativo("Núcleo Comum \ne Artigo 7º\n(Lei 5692/71)", 30 + 4, $inicio_quadro + ($fim_quadro - $inicio_quadro) / 3 - ($key == 0 ? 8 : 0), 80, $altura_caixa, $fonte, 8, $corTexto, 'left');
                                                 $this->pdf->linha_relativa(450, $inicio_quadro - $altura_caixa, 0, $fim_quadro - $inicio_quadro + $altura_caixa, '0.1');
                                                 $this->pdf->linha_relativa(505, $inicio_quadro - $altura_caixa, 0, $fim_quadro - $inicio_quadro + $altura_caixa, '0.1');
                                                 $this->page_y = 170;
                                                 $inicio_quadro = $this->page_y + $altura_caixa;
                                                 $this->pdf->ClosePage();
                                                 $this->pdf->OpenPage();
                                                 $page_open = true;
                                                 $this->addCabecalho();
                                                 $this->pdf->quadrado_relativo($x_quadrado, $this->page_y, 535, $altura_caixa);
                                                 $this->pdf->escreve_relativo("Conteúdos Curriculares", 40, $this->page_y + 10, 258, $altura_caixa, $fonte, 10, $corTexto, 'left');
                                                 $this->pdf->escreve_relativo("A.S", 470, $this->page_y + 10, 258, $altura_caixa, $fonte, 10, $corTexto, 'left');
                                                 $this->pdf->escreve_relativo("H.R.", 525, $this->page_y + 10, 258, $altura_caixa, $fonte, 10, $corTexto, 'left');
                                                 $this->page_y += $altura_caixa;
                                                 $x_quadrado = 100;
                                             }
                                         }
                                     }
                                     $this->pdf->quadrado_relativo(30, $inicio_quadro, 70, $fim_quadro - $inicio_quadro);
                                     $this->pdf->linha_relativa(450, $inicio_quadro - $altura_caixa, 0, $fim_quadro - $inicio_quadro + $altura_caixa, '0.1');
                                     $this->pdf->linha_relativa(505, $inicio_quadro - $altura_caixa, 0, $fim_quadro - $inicio_quadro + $altura_caixa, '0.1');
                                     $this->pdf->escreve_relativo("Núcleo Comum \ne Artigo 7º\n(Lei 5692/71)", 30 + 4, $inicio_quadro + ($fim_quadro - $inicio_quadro) / 3 - 8, 80, $altura_caixa, $fonte, 8, $corTexto, 'left');
                                     $x_quadrado = 450;
                                     $this->pdf->quadrado_relativo($x_quadrado, $this->page_y, 115, $altura_caixa);
                                     $total_geral_horas = sprintf("%02d:%02d", $total_geral_horas, 0);
                                     $this->pdf->escreve_relativo(sprintf("%02d", "{$total_geral_aulas_semana}"), 451, $this->page_y + 10, 52, $altura_caixa, $fonte, 10, $corTexto, 'center');
                                     $this->pdf->escreve_relativo("{$total_geral_horas}", 506, $this->page_y + 10, 65, $altura_caixa, $fonte, 10, $corTexto, 'center');
                                     $this->pdf->linha_relativa(505, $this->page_y, 0, $altura_caixa, '0.1');
                                     $this->page_y += $altura_caixa;
                                 }
                             }
                             //-------
                         }
                     }
                 }
                 if ($page_open) {
                     $this->pdf->ClosePage();
                     $page_open = false;
                 }
             }
         }
         if ($page_open) {
             $this->pdf->ClosePage();
             $page_open = false;
         }
     }
     $this->pdf->CloseFile();
     $this->get_link = $this->pdf->GetLink();
     echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>";
     echo "<html><center>Se o download não iniciar automaticamente <br /><a target='_blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n\t\t\t<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 renderHTML()
 {
     $ok = false;
     if (is_numeric($_GET['cod_matricula'])) {
         $this->ref_cod_matricula = $_GET['cod_matricula'];
         $obj_mat = new clsPmieducarMatricula($this->ref_cod_matricula);
         $det_matricula = $obj_mat->detalhe();
         $this->nm_aluno = $det_matricula['nome_upper'];
         if ($det_matricula['aprovado'] == 4) {
             $ok = true;
         }
         $obj_transferencia = new clsPmieducarTransferenciaSolicitacao();
         $lst_transferencia = $obj_transferencia->lista(null, null, null, null, null, $this->ref_cod_matricula, null, null, null, null, null, 1, null, null, $det_matricula['ref_cod_aluno'], false);
         // verifica se existe uma solicitacao de transferencia INTERNA
         if (is_array($lst_transferencia)) {
             $ok = true;
         }
     }
     if (!$ok) {
         echo "<script>alert('Não é possível gerar atestado de freqüência para esta matrícula');window.location='educar_index.php';</script>";
         die('Não é possível gerar atestado de freqüência para esta matrícula');
     }
     $obj_curso = new clsPmieducarCurso($det_matricula['ref_cod_curso']);
     $det_curso = $obj_curso->detalhe();
     $obj_serie = new clsPmieducarSerie($det_matricula['ref_ref_cod_serie']);
     $det_serie = $obj_serie->detalhe();
     $this->nm_serie = $det_serie['nm_serie'];
     $obj_instituicao = new clsPmieducarInstituicao($det_curso['ref_cod_instituicao']);
     $det_instituicao = $obj_instituicao->detalhe();
     $this->nm_instituicao = $det_instituicao['nm_instituicao'];
     $obj_escola = new clsPmieducarEscola($det_matricula['ref_ref_cod_escola']);
     $det_escola = $obj_escola->detalhe();
     $this->nm_escola = $det_escola['nome'];
     $this->ref_cod_escola = $det_escola['cod_escola'];
     $obj_nivel_ensino = new clsPmieducarNivelEnsino($det_curso['ref_cod_nivel_ensino']);
     $det_nivel_ensino = $obj_nivel_ensino->detalhe();
     $this->nm_ensino = $det_nivel_ensino['nm_nivel'];
     $fonte = 'arial';
     $corTexto = '#000000';
     $this->pdf = new clsPDF("Atestado de Frequência - {$this->ano}", "Atestado de Frequência", "A4", "", false, false);
     $this->pdf->OpenPage();
     $obj_escola_complemento = new clsPmieducarEscolaComplemento($this->ref_cod_escola);
     $det_escola_complemento = $obj_escola_complemento->detalhe();
     if ($det_escola_complemento) {
         // NOME DA ESCOLA
         $nm_escola = str2upper($det_escola_complemento['nm_escola']);
         // ENDERECO DA ESCOLA
         $logradouro = str2upper($det_escola_complemento['logradouro']);
         $numero = $det_escola_complemento['numero'];
         $complemento = str2upper($det_escola_complemento['complemento']);
         $bairro = str2upper($det_escola_complemento['bairro']);
         $municipio = str2upper($det_escola_complemento['municipio']);
         $cep = $det_escola_complemento['cep'];
         $cep = int2CEP($cep);
         $this->endereco = "{$logradouro} {$complemento},{$numero} CEP {$cep} {$municipio}";
     } else {
         $obj_escola = new clsPmieducarEscola($this->ref_cod_escola);
         $det_escola = $obj_escola->detalhe();
         $obj_juridica = new clsJuridica($det_escola['ref_idpes']);
         $det_juridica = $obj_juridica->detalhe();
         $nm_escola = $det_juridica['fantasia'];
         if (!$nm_escola) {
             if ($det_escola['ref_idpes']) {
                 $obj_pessoa_ = new clsPessoa_($det_escola['ref_idpes']);
                 $det_pessoa_ = $obj_pessoa_->detalhe();
                 $nm_escola = $det_pessoa_['nome'];
             }
         }
         $this->nm_escola = $nm_escola;
         $obj_endereco = new clsPessoaEndereco($det_escola["ref_idpes"]);
         if ($det_escola["ref_idpes"]) {
             $tipo = 1;
             $endereco_lst = $obj_endereco->lista($det_escola["ref_idpes"]);
             if ($endereco_lst) {
                 foreach ($endereco_lst as $endereco) {
                     $cep = $endereco["cep"]->cep;
                     $idlog = $endereco["idlog"]->idlog;
                     $obj = new clsLogradouro($idlog);
                     $obj_det = $obj->detalhe();
                     $logradouro = $obj_det["nome"];
                     $idtlog = $obj_det["idtlog"]->detalhe();
                     $tipo_logradouro = strtoupper($idtlog["descricao"]);
                     $bairro = $idbai = $endereco["idbai"]->detalhe();
                     $idbai = $idbai['nome'];
                     $numero = $endereco["numero"];
                     $complemento = $endereco["complemento"];
                     $andar = $endereco["andar"];
                 }
                 $obj_log = new clsLogradouro($idlog);
                 $obj_log_det = $obj_log->detalhe();
                 if ($obj_log_det) {
                     $logradouro = str2upper($obj_log_det["nome"]);
                     $obj_mun = new clsMunicipio($obj_log_det["idmun"]);
                     $det_mun = $obj_mun->detalhe();
                     if ($det_mun) {
                         $municipio = str2upper($det_mun["nome"]);
                     }
                     $estado = $det_mun['sigla_uf']->sigla_uf;
                 }
                 $cep = int2CEP($cep);
                 $this->endereco = "{$tipo_logradouro} {$logradouro} {$complemento},{$numero} CEP {$cep} {$municipio} {$estado}";
             } else {
                 if (class_exists("clsEnderecoExterno")) {
                     $tipo = 2;
                     $obj_endereco = new clsEnderecoExterno();
                     $endereco_lst = $obj_endereco->lista(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, $det_escola["ref_idpes"]);
                     if ($endereco_lst) {
                         foreach ($endereco_lst as $endereco) {
                             $cep = $endereco["cep"];
                             $estado = $endereco["sigla_uf"]->sigla_uf;
                             $sigla_uf = $endereco["sigla_uf"]->detalhe();
                             $sigla_uf = $sigla_uf["nome"];
                             $cidade = $endereco["cidade"];
                             $idtlog = $endereco["idtlog"]->detalhe();
                             $tipo_logradouro = $idtlog["descricao"];
                             $logradouro = $endereco["logradouro"];
                             $bairro = $endereco["bairro"];
                             $numero = $endereco["numero"];
                             $complemento = $endereco["complemento"];
                             $andar = $endereco["andar"];
                             $municipio = str2upper($endereco['cidade']);
                             $bairro = str2upper($endereco_lst['bairro']);
                         }
                     }
                     $cep = int2CEP($cep);
                     $this->endereco = "{$tipo_logradouro} {$logradouro} {$complemento},{$numero}{$bairro} CEP {$cep} {$municipio} - {$sigla_uf}";
                 }
             }
         }
     }
     $this->addCabecalho();
     //titulo
     $this->pdf->escreve_relativo("Atestado de Freqüência", 30, 220, 535, 80, $fonte, 16, $corTexto, 'center');
     $texto = "Atesto para os devidos fins que o aluno {$this->nm_aluno}, código de aluno nº {$det_matricula['ref_cod_aluno']}, matriculado regularmente no {$this->nm_ensino}, frequentou a {$this->nm_serie} até a presente data.";
     $this->pdf->escreve_relativo($texto, 30, 350, 535, 80, $fonte, 14, $corTexto, 'justify');
     $mes = date('n');
     $mes = strtolower($this->meses_do_ano["{$mes}"]);
     $data = date('d') . " de {$mes} de " . date('Y');
     $this->pdf->escreve_relativo("Brasilia, {$data}", 30, 600, 535, 80, $fonte, 14, $corTexto, 'center');
     $this->rodape();
     $this->pdf->CloseFile();
     $this->get_link = $this->pdf->GetLink();
     //echo "<script>window.location='$this->get_link';</script>";
     //header("location:download.php?filename=".$this->get_link);
     //echo "location:download.php?filename=".$this->get_link;die;
     echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>";
     echo "<center><a target='blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>Clique aqui para visualizar o arquivo!</a><br><br>\n\t\t\t<span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\n\t\t\tClique na Imagem para Baixar o instalador<br><br>\n\t\t\t<a href=\"http://www.adobe.com.br/products/acrobat/readstep2.html\" target=\"new\"><br><img src=\"imagens/acrobat.gif\" width=\"88\" height=\"31\" border=\"0\"></a>\n\t\t\t</span>\n\t\t\t</center>";
 }
 function renderHTML()
 {
     if ($_POST) {
         foreach ($_POST as $key => $value) {
             $this->{$key} = $value;
         }
     }
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     if ($this->ref_ref_cod_serie) {
         $this->ref_cod_serie = $this->ref_ref_cod_serie;
     }
     $fonte = 'arial';
     $corTexto = '#000000';
     if ($this->escola_sem_avaliacao == 1) {
         $this->escola_sem_avaliacao = true;
     } elseif ($this->escola_sem_avaliacao == 2) {
         $this->escola_sem_avaliacao = false;
     } else {
         $this->escola_sem_avaliacao = null;
     }
     $obj_escola_instituicao = new clsPmieducarEscola();
     $lst_escola_instituicao = $obj_escola_instituicao->lista($this->ref_cod_escola, null, null, $this->ref_cod_instituicao, null, null, null, null, null, null, 1, null, $this->escola_sem_avaliacao);
     $this->pdf = new clsPDF("Alunos Matriculados - Sintético - {$this->ano}", "Alunos Matriculados - Sintético", "A4", "", false, false);
     if ($this->is_padrao || $this->ano == 2007) {
         $this->semestre = null;
     }
     if (is_array($lst_escola_instituicao) && count($lst_escola_instituicao)) {
         foreach ($lst_escola_instituicao as $escola) {
             $page_open = false;
             $this->ref_cod_escola = $escola['cod_escola'];
             if ($this->ref_cod_escola) {
                 $obj_escola = new clsPmieducarEscola($this->ref_cod_escola);
                 $det_escola = $obj_escola->detalhe();
                 $this->nm_escola = $det_escola['nome'];
                 $obj_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao);
                 $det_instituicao = $obj_instituicao->detalhe();
                 $this->nm_instituicao = $det_instituicao['nm_instituicao'];
                 if ($det_escola['ref_idpes']) {
                     $obj_endereco_escola = new clsEndereco($det_escola['ref_idpes']);
                     $det_enderedo_escola = $obj_endereco_escola->detalhe();
                     $this->nm_localidade = $this->nm_municipio = $det_enderedo_escola['cidade'];
                     if (!$det_enderedo_escola) {
                         $obj_endereco_externo_escola = new clsEnderecoExterno($det_escola['ref_idpes']);
                         $det_enderedo_externo_escola = $obj_endereco_externo_escola->detalhe();
                         $this->nm_localidade = $this->nm_municipio = $det_enderedo_externo_escola['cidade'];
                     }
                 } else {
                     $obj_escola_complemento = new clsPmieducarEscolaComplemento($this->ref_cod_escola);
                     $det_escola_complemento = $obj_escola_complemento->detalhe();
                     $this->nm_localidade = $this->nm_municipio = $det_escola_complemento['municipio'];
                 }
             }
             $total_geral_escola_nao_enturmado_feminino = 0;
             $total_geral_escola_nao_enturmado_masculino = 0;
             $total_geral_escola_enturmado_feminino = 0;
             $total_geral_escola_enturmado_masculino = 0;
             $obj_cursos = new clsPmieducarCurso();
             $obj_cursos->setOrderby("cod_curso asc");
             $lst_cursos = $obj_cursos->lista($this->ref_cod_curso, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 1, null, $this->ref_cod_instituicao);
             if ($lst_cursos) {
                 foreach ($lst_cursos as $curso) {
                     $obj_serie_curso = new clsPmieducarSerie();
                     $obj_serie_curso->setOrderby('etapa_curso asc');
                     $lst_serie_curso = $obj_serie_curso->lista($this->ref_cod_serie, null, null, $curso['cod_curso'], null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao, null, null, null, $this->ref_cod_escola);
                     $existe_matriculas = false;
                     if ($lst_serie_curso) {
                         $total = 0;
                         foreach ($lst_serie_curso as $key_serie => $serie) {
                             $obj_turmas = new clsPmieducarTurma();
                             $lst_turmas = $obj_turmas->lista(null, null, null, $serie['cod_serie'], $escola['cod_escola'], null, null, null, null, null, null, null, null, null, 1, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, true);
                             if (!$lst_turmas) {
                                 $obj_turmas = new clsPmieducarTurma();
                                 $lst_turmas = $obj_turmas->lista(null, null, null, null, null, null, null, null, null, null, null, null, null, null, 1, null, null, null, null, null, null, null, null, null, null, null, null, null, $escola['cod_escola'], $serie['cod_serie']);
                             }
                             if ($lst_turmas) {
                                 if (!$page_open) {
                                     $x_quadrado = 30;
                                     $this->page_y = 80;
                                     $altura_caixa = 20;
                                     $this->pdf->OpenPage();
                                     $this->addCabecalho();
                                     $this->addCabecalho2();
                                     $page_open = true;
                                 }
                                 $existe_matriculas = true;
                                 $total_enturmados_turma_masculino = 0;
                                 $total_enturmados_turma_feminino = 0;
                                 $total_nao_enturmados_turma_masculino = 0;
                                 $total_nao_enturmados_turma_feminino = 0;
                                 foreach ($lst_turmas as $key_turma => $turma) {
                                     if ($turma['hora_inicial']) {
                                         if ($turma['hora_inicial'] <= '12:00') {
                                             $turno = 'Matutino';
                                         } elseif ($turma['hora_inicial'] > '12:00' && $turma['hora_inicial'] <= '18:00') {
                                             $turno = 'Vespert.';
                                         } else {
                                             $turno = 'Noturno';
                                         }
                                     }
                                     $this->pdf->quadrado_relativo($x_quadrado, $this->page_y, 535, $altura_caixa);
                                     $this->pdf->escreve_relativo("{$escola['cod_escola']}", 25, $this->page_y + 5, 45, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     $this->pdf->linha_relativa(60, $this->page_y, 0, $altura_caixa, '0.1');
                                     $this->pdf->escreve_relativo("{$curso['nm_curso']}", 67, $this->page_y + 5, 258, $altura_caixa, $fonte, 8, $corTexto, 'left');
                                     $this->pdf->linha_relativa(250, $this->page_y, 0, $altura_caixa, '0.1');
                                     $this->pdf->escreve_relativo("{$serie['nm_serie']} / {$turma['nm_turma']}", 250, $this->page_y + 2, 70, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     $this->pdf->linha_relativa(320, $this->page_y, 0, $altura_caixa, '0.1');
                                     $this->pdf->escreve_relativo("{$turno}", 323, $this->page_y + 5, 258, $altura_caixa, $fonte, 8, $corTexto, 'left');
                                     $this->pdf->linha_relativa(360, $this->page_y, 0, $altura_caixa, '0.1');
                                     $obj_matriculas_turma = new clsPmieducarMatriculaTurma();
                                     $lst_matriculas_turma = $obj_matriculas_turma->lista(null, $turma['cod_turma'], null, null, null, null, null, null, 1, $serie['cod_serie'], $curso['cod_curso'], $escola['cod_escola'], $this->ref_cod_instituicao, null, null, array(1, 2, 3), null, null, $this->ano, null, null, null, 1, true, null, null, null, null, $this->semestre);
                                     $enturmados_turma_masculino = 0;
                                     $enturmados_turma_feminino = 0;
                                     if ($lst_matriculas_turma) {
                                         $total_enturmados_turma_geral = count($lst_matriculas_turma);
                                         //aqui verificar aluno que estao na multiseriada
                                         foreach ($lst_matriculas_turma as $matricula) {
                                             $obj_matricula = new clsPmieducarMatricula($matricula['ref_cod_matricula']);
                                             $det_matricula = $obj_matricula->detalhe();
                                             $obj_aluno = new clsPmieducarAluno($det_matricula['ref_cod_aluno']);
                                             $det_aluno = $obj_aluno->detalhe();
                                             $obj_pessoa = new clsFisica($det_aluno['ref_idpes']);
                                             $det_pessoa = $obj_pessoa->detalhe();
                                             /**
                                              * verifica se o aluno possui transferencia
                                              * e nao exibe na enturmacao
                                              */
                                             //$obj_transf = new clsPmieducarTransferenciaSolicitacao();
                                             //$lst_transf = $obj_transf->lista(null,null,null,null,null,$matricula['ref_cod_matricula'],null,null,null,null,null,null,null,null,null,null,$this->ref_cod_escola,$this->ref_ref_cod_serie);
                                             //if($lst_transf)
                                             //	continue;
                                             if (strtoupper($det_pessoa['sexo']) == 'M') {
                                                 $enturmados_turma_masculino++;
                                             } else {
                                                 $enturmados_turma_feminino++;
                                             }
                                         }
                                     }
                                     $total_enturmados_turma_masculino += $enturmados_turma_masculino;
                                     $total_enturmados_turma_feminino += $enturmados_turma_feminino;
                                     $total_geral_escola_enturmado_masculino += $enturmados_turma_masculino;
                                     $total_geral_escola_enturmado_feminino += $enturmados_turma_feminino;
                                     /***************************INVERTIDO ABAIXO*******************************************************/
                                     //enturmados
                                     /*$this->pdf->escreve_relativo( "{$enturmados_turma_feminino}", 355, $this->page_y + 5 , 40, $altura_caixa, $fonte, 8, $corTexto, 'center' );
                                     		$this->pdf->escreve_relativo( "{$enturmados_turma_masculino}", 385, $this->page_y + 5 , 40, $altura_caixa, $fonte, 8, $corTexto, 'center' );*/
                                     $this->pdf->escreve_relativo("{$enturmados_turma_masculino}", 355, $this->page_y + 5, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     $this->pdf->escreve_relativo("{$enturmados_turma_feminino}", 385, $this->page_y + 5, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     /**************************************************************************************************/
                                     $this->pdf->escreve_relativo($enturmados_turma_masculino + $enturmados_turma_feminino, 425, $this->page_y + 5, 30, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     $this->pdf->linha_relativa(460, $this->page_y, 0, $altura_caixa, '0.1');
                                     $this->pdf->linha_relativa(390, $this->page_y, 0, $altura_caixa, '0.1');
                                     $this->pdf->linha_relativa(420, $this->page_y, 0, $altura_caixa, '0.1');
                                     //$obj_matriculas = new clsPmieducarMatricula();
                                     //									$lst_matriculas = $obj_matriculas->lista(null, null, $escola['cod_escola'], $serie['cod_serie'], null, null, null, null, null, null, null, null, 1, $this->ano, $curso['cod_curso'], $this->ref_cod_instituicao );
                                     if (!$executou) {
                                         $obj_nao_enturmados = new clsPmieducarMatriculaTurma();
                                         $lst_nao_enturmados = $obj_nao_enturmados->dadosAlunosNaoEnturmados($escola['cod_escola'], $serie['cod_serie'], $curso['cod_curso'], $this->ano, true);
                                         $executou = true;
                                         //$total_nao_enturmados_turma_masculino = $total_nao_enturmados_turma_feminino = 0;
                                         if ($lst_nao_enturmados) {
                                             foreach ($lst_nao_enturmados as $matricula) {
                                                 ////$obj_aluno = new clsPmieducarAluno($matricula['ref_cod_aluno']);
                                                 //$det_aluno = $obj_aluno->detalhe();
                                                 //$obj_pessoa = new clsFisica($det_aluno['ref_idpes']);
                                                 //$det_pessoa = $obj_pessoa->detalhe();
                                                 if (strtoupper($matricula['sexo']) == 'M') {
                                                     $total_nao_enturmados_turma_masculino++;
                                                 } else {
                                                     $total_nao_enturmados_turma_feminino++;
                                                 }
                                             }
                                         }
                                     }
                                     if ($this->page_y + $altura_caixa >= 800) {
                                         $this->page_y = 80;
                                         $this->pdf->ClosePage();
                                         $this->pdf->OpenPage();
                                         $page_open = true;
                                         $this->addCabecalho();
                                         $this->addCabecalho2();
                                     }
                                     $this->page_y += $altura_caixa;
                                 }
                                 if ($key_serie < count($lst_serie_curso)) {
                                     $mult = count($lst_turmas);
                                     $centraliza = $altura_caixa * ($mult + 1) / 2;
                                     $this->pdf->quadrado_relativo(460, $this->page_y - $altura_caixa * $mult, 105, $altura_caixa * $mult);
                                     $this->pdf->linha_relativa(498, $this->page_y - $altura_caixa * $mult, 0, $altura_caixa * $mult, '0.1');
                                     //nao enturmados
                                     $total_geral_escola_nao_enturmado_feminino += $tot_fem = $total_nao_enturmados_turma_feminino;
                                     $total_geral_escola_nao_enturmado_masculino += $tot_masc = $total_nao_enturmados_turma_masculino;
                                     /**********************************INVERTIDO********************************************/
                                     /*$this->pdf->escreve_relativo( $tot_fem , 463, $this->page_y + 5 - $centraliza , 35, $altura_caixa, $fonte, 8, $corTexto, 'center' );
                                     		$this->pdf->escreve_relativo( $tot_masc, 500, $this->page_y + 5 - $centraliza, 35, $altura_caixa, $fonte, 8, $corTexto, 'center' );*/
                                     $this->pdf->escreve_relativo($tot_masc, 463, $this->page_y + 5 - $centraliza, 35, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     $this->pdf->escreve_relativo($tot_fem, 500, $this->page_y + 5 - $centraliza, 35, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                     /***************************************************************************************/
                                     $this->pdf->linha_relativa(538, $this->page_y - $altura_caixa * $mult, 0, $altura_caixa * $mult, '0.1');
                                     $this->pdf->escreve_relativo($tot_fem + $tot_masc, 530, $this->page_y + 5 - $centraliza, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                                 }
                             }
                         }
                     }
                 }
             }
             if ($page_open) {
                 //total geral
                 $this->pdf->quadrado_relativo(320, $this->page_y, 40, $altura_caixa);
                 $this->pdf->escreve_relativo("TOTAL", 327, $this->page_y + 5, 258, $altura_caixa, $fonte, 9, $corTexto, 'left');
                 $this->pdf->quadrado_relativo(360, $this->page_y, 205, $altura_caixa);
                 /***************************************INVERTIDO******************************************/
                 //enturmados
                 /*$this->pdf->escreve_relativo( "{$total_geral_escola_enturmado_feminino}", 355, $this->page_y + 5 , 40, $altura_caixa, $fonte, 8, $corTexto, 'center' );
                 		$this->pdf->escreve_relativo( "{$total_geral_escola_enturmado_masculino}", 385, $this->page_y + 5 , 40, $altura_caixa, $fonte, 8, $corTexto, 'center' );*/
                 $this->pdf->escreve_relativo("{$total_geral_escola_enturmado_masculino}", 355, $this->page_y + 5, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                 $this->pdf->escreve_relativo("{$total_geral_escola_enturmado_feminino}", 385, $this->page_y + 5, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                 /******************************************************************************************/
                 $this->pdf->escreve_relativo($total_geral_escola_enturmado_feminino + $total_geral_escola_enturmado_masculino, 425, $this->page_y + 5, 30, $altura_caixa, $fonte, 8, $corTexto, 'center');
                 $this->pdf->linha_relativa(460, $this->page_y, 0, $altura_caixa, '0.1');
                 $this->pdf->linha_relativa(390, $this->page_y, 0, $altura_caixa, '0.1');
                 $this->pdf->linha_relativa(420, $this->page_y, 0, $altura_caixa, '0.1');
                 $this->pdf->linha_relativa(498, $this->page_y, 0, $altura_caixa, '0.1');
                 /***************************************INVERTIDO******************************************/
                 //nao enturmados
                 /*$this->pdf->escreve_relativo( "$total_geral_escola_nao_enturmado_feminino", 463, $this->page_y + 5 , 35, $altura_caixa, $fonte, 8, $corTexto, 'center' );
                 		$this->pdf->escreve_relativo( "$total_geral_escola_nao_enturmado_masculino", 500, $this->page_y + 5, 35, $altura_caixa, $fonte, 8, $corTexto, 'center' );*/
                 $this->pdf->escreve_relativo("{$total_geral_escola_nao_enturmado_masculino}", 463, $this->page_y + 5, 35, $altura_caixa, $fonte, 8, $corTexto, 'center');
                 $this->pdf->escreve_relativo("{$total_geral_escola_nao_enturmado_feminino}", 500, $this->page_y + 5, 35, $altura_caixa, $fonte, 8, $corTexto, 'center');
                 /******************************************************************************************/
                 $this->pdf->linha_relativa(538, $this->page_y, 0, $altura_caixa, '0.1');
                 $this->pdf->escreve_relativo($total_geral_escola_nao_enturmado_masculino + $total_geral_escola_nao_enturmado_feminino, 530, $this->page_y + 5, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                 if ($page_open && $existe_matriculas) {
                     $this->pdf->ClosePage();
                     $page_open = false;
                 }
             }
         }
         $this->pdf->CloseFile();
         $this->get_link = $this->pdf->GetLink();
         echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>";
         echo "<html><center>Se o download não iniciar automaticamente <br /><a target='_blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n\t\t\t\t<span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\n\t\t\t\tClique na Imagem para Baixar o instalador<br><br>\n\t\t\t\t<a href=\"http://www.adobe.com.br/products/acrobat/readstep2.html\" target=\"new\"><br><img src=\"imagens/acrobat.gif\" width=\"88\" height=\"31\" border=\"0\"></a>\n\t\t\t\t</span>\n\t\t\t\t</center>";
     } else {
         echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');}</script>";
         echo "<script>\n\t\t\t\t\t\t\talert('Nenhuma informação a ser apresentada');\n\t\t\t\t\t\t\twindow.parent.fechaExpansivel('div_dinamico_'+(window.parent.DOM_divs.length-1));\n\t\t\t\t\t  </script>";
     }
 }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     unset($_SESSION['reload']);
     session_write_close();
     $this->titulo = "Exemplar Devolu&ccedil;&atilde;o - Detalhe";
     $this->cod_emprestimo = $_GET["cod_emprestimo"];
     if (!$this->cod_emprestimo) {
         header("Location: educar_exemplar_devolucao_lst.php");
     }
     $obj_exemplar_emprestimo = new clsPmieducarExemplarEmprestimo();
     $lista = $obj_exemplar_emprestimo->lista($this->cod_emprestimo);
     if (is_array($lista) && count($lista)) {
         $registro = array_shift($lista);
         if (!$registro) {
             header("location: educar_exemplar_devolucao_lst.php");
             die;
         }
         if (class_exists("clsPmieducarBiblioteca")) {
             $obj_ref_cod_biblioteca = new clsPmieducarBiblioteca($registro["ref_cod_biblioteca"]);
             $det_ref_cod_biblioteca = $obj_ref_cod_biblioteca->detalhe();
             $registro["ref_cod_biblioteca"] = $det_ref_cod_biblioteca["nm_biblioteca"];
         } else {
             $registro["ref_cod_biblioteca"] = "Erro na geracao";
             echo "<!--\nErro\nClasse nao existente: clsPmieducarBiblioteca\n-->";
         }
         if (class_exists("clsPmieducarInstituicao")) {
             $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"];
         } else {
             $registro["ref_cod_instituicao"] = "Erro na geracao";
             echo "<!--\nErro\nClasse nao existente: clsPmieducarInstituicao\n-->";
         }
         if (class_exists("clsPmieducarEscola")) {
             $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_cod_escola"]);
             $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
             $idpes = $det_ref_cod_escola["ref_idpes"];
             if ($idpes) {
                 $obj_escola = new clsPessoaJuridica($idpes);
                 $obj_escola_det = $obj_escola->detalhe();
                 $registro["ref_cod_escola"] = $obj_escola_det["fantasia"];
             } else {
                 $obj_escola = new clsPmieducarEscolaComplemento($registro["ref_cod_escola"]);
                 $obj_escola_det = $obj_escola->detalhe();
                 $registro["ref_cod_escola"] = $obj_escola_det["nm_escola"];
             }
         }
         if (class_exists("clsPmieducarExemplar")) {
             $obj_ref_cod_exemplar = new clsPmieducarExemplar($registro["ref_cod_exemplar"]);
             $det_ref_cod_exemplar = $obj_ref_cod_exemplar->detalhe();
             if (class_exists("clsPmieducarAcervo")) {
                 $acervo = $det_ref_cod_exemplar["ref_cod_acervo"];
                 $obj_acervo = new clsPmieducarAcervo($acervo);
                 $det_acervo = $obj_acervo->detalhe();
                 $titulo_exemplar = $det_acervo["titulo"];
             }
         } else {
             $registro["ref_cod_exemplar"] = "Erro na geracao";
             echo "<!--\nErro\nClasse nao existente: clsPmieducarExemplar\n-->";
         }
         if (class_exists("clsPmieducarCliente")) {
             $obj_cliente = new clsPmieducarCliente($registro["ref_cod_cliente"]);
             $det_cliente = $obj_cliente->detalhe();
             $ref_idpes = $det_cliente["ref_idpes"];
             $obj_pessoa = new clsPessoa_($ref_idpes);
             $det_pessoa = $obj_pessoa->detalhe();
             $registro["ref_cod_cliente"] = $det_pessoa["nome"];
         } else {
             $registro["ref_cod_cliente"] = "Erro na geracao";
             echo "<!--\nErro\nClasse nao existente: clsPmieducarCliente\n-->";
         }
     }
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if ($nivel_usuario == 1) {
         if ($registro["ref_cod_instituicao"]) {
             $this->addDetalhe(array("Institui&ccedil;&atilde;o", "{$registro["ref_cod_instituicao"]}"));
         }
     }
     if ($nivel_usuario == 1 || $nivel_usuario == 2) {
         if ($registro["ref_cod_escola"]) {
             $this->addDetalhe(array("Escola", "{$registro["ref_cod_escola"]}"));
         }
     }
     if ($registro["ref_cod_biblioteca"]) {
         $this->addDetalhe(array("Biblioteca", "{$registro["ref_cod_biblioteca"]}"));
     }
     if ($registro["ref_cod_cliente"]) {
         $this->addDetalhe(array("Cliente", "{$registro["ref_cod_cliente"]}"));
     }
     if ($titulo_exemplar) {
         $this->addDetalhe(array("Obra", "{$titulo_exemplar}"));
     }
     $this->addDetalhe(array("Código exemplar", "{$registro["ref_cod_exemplar"]}"));
     $this->addDetalhe(array("Tombo", "{$det_ref_cod_exemplar["tombo"]}"));
     if ($registro["data_retirada"]) {
         $this->addDetalhe(array("Data Retirada", dataFromPgToBr($registro["data_retirada"], "d/m/Y")));
     }
     if ($registro["valor_multa"]) {
         $this->addDetalhe(array("Valor Multa", "{$registro["valor_multa"]}"));
     }
     if ($obj_permissoes->permissao_cadastra(628, $this->pessoa_logada, 11)) {
         $this->caption_novo = "Devolu&ccedil;&atilde;o";
         $this->url_novo = "educar_exemplar_devolucao_cad.php?cod_emprestimo={$registro["cod_emprestimo"]}";
     }
     $this->url_cancelar = "educar_exemplar_devolucao_lst.php";
     $this->largura = "100%";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_biblioteca_index.php" => "i-Educar - Biblioteca", "" => "Detalhe do exemplar para devolu&ccedil;&atilde;o"));
     $this->enviaLocalizacao($localizacao->montar());
 }
Ejemplo n.º 12
0
 function Novo()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(650, $this->pessoa_logada, 7, "educar_turma_mvto_det.php");
     $this->lst_matriculas = unserialize(urldecode($_POST["lst_matriculas"]));
     $this->cod_disciplinas = unserialize(urldecode($_POST["cod_disciplinas"]));
     $this->lst_apura_falta = unserialize(urldecode($_POST["lst_apura_falta"]));
     if (is_array($this->lst_matriculas)) {
         //			Verifica se o professor aprovou ou reprovou algum aluno
         if ($this->classifica == "S") {
             $obj_nota_aluno = new clsPmieducarNotaAluno();
             $lst_exame = $obj_nota_aluno->listaMedias($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma, $this->qtd_modulos, $this->ref_cod_curso, true, true, true);
             if ($lst_exame) {
                 foreach ($lst_exame as $exame) {
                     $obj_matricula = new clsPmieducarMatricula($exame["ref_ref_cod_matricula"]);
                     $det_matricula = $obj_matricula->detalhe();
                     if ($det_matricula) {
                         $obj_aluno = new clsPmieducarAluno($det_matricula["ref_cod_aluno"]);
                         $det_aluno = $obj_aluno->detalhe();
                         if ($det_aluno) {
                             $campo_aprovacao = "aprovacao_{$det_aluno["ref_idpes"]}_";
                             $campo_aluno = "nm_aluno_{$det_aluno["ref_idpes"]}";
                         }
                     }
                     if (isset($this->{$campo_aluno})) {
                         //							Verifica se a média é maior ou igual a média mínima e se foi aprovado pelo professor
                         if ($exame["media"] >= $this->media && $this->{$campo_aprovacao} == "on") {
                             //								Verifica se o aluno não foi reprovado ou deixado em exame
                             if ($aprovado[$exame["ref_ref_cod_matricula"]] != "N" && $aprovado[$exame["ref_ref_cod_matricula"]] != "R") {
                                 $aprovado[$exame["ref_ref_cod_matricula"]] = "S";
                             }
                         } else {
                             if ($exame["media"] < $this->media && $this->{$campo_aprovacao} == "on") {
                                 //								Verifica se o aluno não foi reprovado
                                 if ($aprovado[$exame["ref_ref_cod_matricula"]] != "N") {
                                     $aprovado[$exame["ref_ref_cod_matricula"]] = "R";
                                 }
                             } else {
                                 $aprovado[$exame["ref_ref_cod_matricula"]] = "N";
                             }
                         }
                     }
                 }
                 if (is_array($aprovado)) {
                     foreach ($aprovado as $matricula => $verificador) {
                         //							Verifica se o aluno foi aprovado ou deixado em exame
                         if ($verificador == "S" || $verificador == "R") {
                             $obj_matricula = new clsPmieducarMatricula($matricula);
                             $det_matricula = $obj_matricula->detalhe();
                             //								Verifica se a matrícula aida está em andamento
                             if ($det_matricula["aprovado"] == 3) {
                                 $obj_historico = new clsPmieducarHistoricoEscolar();
                                 $lst_historico = $obj_historico->lista($matricula);
                                 $seq = count($lst_historico) + 1;
                                 $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo($this->ref_ref_cod_escola, null, null, null, 1, null, null, 1);
                                 $det_ano_letivo = $obj_ano_letivo->detalhe();
                                 $obj_escola = new clsPmieducarEscolaComplemento($this->ref_ref_cod_escola);
                                 $det_escola = $obj_escola->detalhe();
                                 //									Verifica se o aluno foi aprovado
                                 if ($verificador == "S") {
                                     $obj_historico = new clsPmieducarHistoricoEscolar($det_matricula["ref_cod_aluno"], $seq, null, $this->pessoa_logada, $this->ref_ref_cod_serie, $det_ano_letivo["ano"], $this->carga_horaria, null, $det_escola["nm_escola"], $det_escola["municipio"], null, null, 1, null, null, 1);
                                     if ($obj_historico->cadastra()) {
                                         $obj_matricula = new clsPmieducarMatricula($det_matricula["cod_matricula"], null, null, null, $this->pessoa_logada, null, null, 1);
                                         $obj_matricula->edita();
                                     } else {
                                         $this->mensagem = "Falha ao cadastrar o historico!<br>";
                                     }
                                 } else {
                                     if ($verificador == "R") {
                                         $obj_matricula = new clsPmieducarMatricula($det_matricula["cod_matricula"], null, null, null, $this->pessoa_logada, null, null, 7);
                                         if (!$obj_matricula->edita()) {
                                             $this->mensagem = "Falha ao editar a matricula!<br>";
                                         }
                                     }
                                 }
                             }
                         } else {
                             $obj_matricula = new clsPmieducarMatricula($matricula);
                             $det_matricula = $obj_matricula->detalhe();
                             //								Verifica se a matricula ainda está em andamento
                             if ($det_matricula["aprovado"] == 3) {
                                 $obj_historico = new clsPmieducarHistoricoEscolar();
                                 $lst_historico = $obj_historico->lista($matricula);
                                 $seq = count($lst_historico) + 1;
                                 $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo($this->ref_ref_cod_escola, null, null, null, 1, null, null, 1);
                                 $det_ano_letivo = $obj_ano_letivo->detalhe();
                                 $obj_escola = new clsPmieducarEscolaComplemento($this->ref_ref_cod_escola);
                                 $det_escola = $obj_escola->detalhe();
                                 //									Verifica se o aluno foi reprovado
                                 if ($verificador == "N") {
                                     $obj_historico = new clsPmieducarHistoricoEscolar($det_matricula["ref_cod_aluno"], $seq, null, $this->pessoa_logada, $this->ref_ref_cod_serie, $det_ano_letivo["ano"], $this->carga_horaria, null, $det_escola["nm_escola"], $det_escola["municipio"], null, null, 2, null, null, 1);
                                     if ($obj_historico->cadastra()) {
                                         $obj_matricula = new clsPmieducarMatricula($det_matricula["cod_matricula"], null, null, null, $this->pessoa_logada, null, null, 2);
                                         if (!$obj_matricula->edita()) {
                                             $this->mensagem = "Falha ao alterar a matricula!<br>";
                                         }
                                     } else {
                                         $this->mensagem = "Falha ao cadastrar o historico!<br>";
                                     }
                                 }
                             }
                         }
                     }
                 }
             }
             header("location: educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}");
             die;
         } else {
             foreach ($this->lst_matriculas as $matriculas) {
                 //					Verifica se o ano letivo ainda está em andamento
                 if ($this->num_modulo <= $this->qtd_modulos) {
                     //						Verifica se a disciplina apura falta
                     if ($this->lst_apura_falta[$this->ref_cod_disciplina] == 1) {
                         $campo_falta = "faltas_{$matriculas[1]}";
                     } else {
                         if ($this->falta_ch_globalizada == 1) {
                             $campo_falta = "faltas_{$matriculas[1]}";
                         }
                     }
                     $campo_nota = "nota_{$matriculas[1]}";
                     $obj_mat_tur = new clsPmieducarMatriculaTurma();
                     $lst_mat_tur = $obj_mat_tur->lista($matriculas[2], $this->ref_cod_turma, null, null, null, null, null, null, 1);
                     $sequencial = 0;
                     //echo "<pre>";
                     //print_r( $lst_mat_tur );
                     if (is_array($lst_mat_tur)) {
                         foreach ($lst_mat_tur as $registro) {
                             if ($sequencial == 0) {
                                 $sequencial = $registro["sequencial"];
                             } else {
                                 if ($sequencial < $registro["sequencial"]) {
                                     $sequencial = $registro["sequencial"];
                                 }
                             }
                         }
                         //$sequencial = ( count( $lst_mat_tur ) );
                         //$sequencial = $lst_mat_tur["sequencial"];
                     } else {
                         $this->mensagem = "Erro no cadastro de nota!<br>";
                     }
                     $obj_nota_aluno = new clsPmieducarNotaAluno(null, $this->{$campo_nota}, $this->ref_cod_tipo_avaliacao, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $this->ref_cod_turma, $matriculas[2], $this->ref_cod_turma, null, $this->pessoa_logada, null, null, 1, $sequencial);
                     if (!$obj_nota_aluno->cadastra()) {
                         $this->mensagem = "Erro no cadastro de nota!<br>";
                     }
                     //						Verifica se a falta não é globalizada
                     if ($this->falta_ch_globalizada == 0) {
                         //							Verifica se a disciplina apura falta
                         if ($this->lst_apura_falta[$this->ref_cod_disciplina] == 1) {
                             //								Verifica se o aluno possui alguma falta
                             if ($this->{$campo_falta} > 0) {
                                 $obj_falta_aluno = new clsPmieducarFaltaAluno(null, null, $this->pessoa_logada, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $this->ref_cod_turma, $this->ref_cod_turma, $matriculas[2], $this->{$campo_falta}, null, null, 1, $sequencial);
                                 if (!$obj_falta_aluno->cadastra()) {
                                     $this->mensagem = "Erro no cadastro de falta!<br>";
                                 }
                             }
                         }
                     } else {
                         if ($this->falta_ch_globalizada == 1) {
                             //							Verifica se o aluno possui alguma falta
                             if ($this->{$campo_falta} > 0) {
                                 $obj_faltas = new clsPmieducarFaltas();
                                 $lst_faltas = $obj_faltas->lista($matriculas[2]);
                                 $sequencial = count($lst_faltas) + 1;
                                 $obj_faltas = new clsPmieducarFaltas($matriculas[2], $sequencial, $this->pessoa_logada, $this->{$campo_falta});
                                 if (!$obj_faltas->cadastra()) {
                                     $this->mensagem = "Erro no cadastro de falta!<br>";
                                 }
                             }
                         }
                     }
                 }
             }
             //				Verifica se a turma está no último módulo
             if ($this->qtd_modulos == $this->num_modulo) {
                 $obj_matricula_turma = new clsPmieducarMatriculaTurma();
                 $lst_matricula_turma = $obj_matricula_turma->lista(null, $this->ref_cod_turma, null, null, null, null, null, null, 1);
                 if ($lst_matricula_turma) {
                     foreach ($lst_matricula_turma as $matricula) {
                         $obj_nota_aluno = new clsPmieducarNotaAluno();
                         //							Busca se todas as notas já foram dadas para o aluno
                         $todas_notas = $obj_nota_aluno->todasNotas($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma, $this->num_modulo, $matricula["ref_cod_matricula"]);
                         //							Verifica se todas as notas já foram dadas para o aluno
                         if ($todas_notas == 'S') {
                             if ($this->conceitual == 0) {
                                 //									Carrega as médias de cada disciplina do aluno
                                 $lst_exame = $obj_nota_aluno->listaMedias($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma, $this->qtd_modulos, $this->ref_cod_curso, true, true);
                                 if ($lst_exame) {
                                     foreach ($lst_exame as $exame) {
                                         if ($exame["ref_ref_cod_matricula"] == $matricula["ref_cod_matricula"]) {
                                             //												Verifica se a média do aluno é igual ou superior a média mínima e se a freqüência do aluno é igual ou maior que a freqüência mínima
                                             if ($exame["media"] >= $this->media && 100 - $exame["faltas"] >= $this->frequencia_minima) {
                                                 //													Verifica se o aluno não foi reprovado ou deixado de recuperação
                                                 if ($aprovado[$exame["ref_ref_cod_matricula"]] != "N" && $aprovado[$exame["ref_ref_cod_matricula"]] != "R") {
                                                     $aprovado[$exame["ref_ref_cod_matricula"]] = "S";
                                                 }
                                             } else {
                                                 if ($exame["media"] < $this->media && 100 - $exame["faltas"] >= $this->frequencia_minima) {
                                                     //													Verifica se o aluno não foi reprovado
                                                     if ($aprovado[$exame["ref_ref_cod_matricula"]] != "N") {
                                                         $aprovado[$exame["ref_ref_cod_matricula"]] = "R";
                                                     }
                                                 } else {
                                                     $aprovado[$exame["ref_ref_cod_matricula"]] = "N";
                                                 }
                                             }
                                         }
                                     }
                                 }
                             }
                             if ($this->conceitual == 1) {
                                 $obj_aluno = new clsPmieducarAluno($matricula["ref_cod_aluno"]);
                                 $det_aluno = $obj_aluno->detalhe();
                                 $campo_aprovacao = "aprovacao_{$det_aluno["ref_idpes"]}";
                                 if ($this->{$campo_aprovacao} == "S") {
                                     $aprovado[$matricula["ref_cod_matricula"]] = "S";
                                 } elseif ($this->{$campo_aprovacao} == "N") {
                                     $aprovado[$matricula["ref_cod_matricula"]] = "N";
                                 }
                             }
                         }
                     }
                 }
                 if (is_array($aprovado)) {
                     foreach ($aprovado as $matricula => $verificador) {
                         //							Verifica se o aluno foi aprovado ou deixado em exame
                         if ($verificador == "S" || $verificador == "R") {
                             $obj_matricula = new clsPmieducarMatricula($matricula);
                             $det_matricula = $obj_matricula->detalhe();
                             //								Verifica se a matrícula está em andamento
                             if ($det_matricula["aprovado"] == 3) {
                                 $obj_historico = new clsPmieducarHistoricoEscolar();
                                 $lst_historico = $obj_historico->lista($matricula);
                                 $seq = count($lst_historico) + 1;
                                 $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo($this->ref_ref_cod_escola, null, null, null, 1, null, null, 1);
                                 $det_ano_letivo = $obj_ano_letivo->detalhe();
                                 $obj_escola = new clsPmieducarEscolaComplemento($this->ref_ref_cod_escola);
                                 $det_escola = $obj_escola->detalhe();
                                 //									Verifica se o aluno foi aprovado
                                 if ($verificador == "S") {
                                     if ($this->falta_ch_globalizada == 1) {
                                         $obj_historico = new clsPmieducarHistoricoEscolar($det_matricula["ref_cod_aluno"], $seq, null, $this->pessoa_logada, $this->ref_ref_cod_serie, $det_ano_letivo["ano"], $this->carga_horaria, null, $det_escola["nm_escola"], $det_escola["municipio"], null, null, 1, null, null, 1, 1);
                                     } else {
                                         $obj_historico = new clsPmieducarHistoricoEscolar($det_matricula["ref_cod_aluno"], $seq, null, $this->pessoa_logada, $this->ref_ref_cod_serie, $det_ano_letivo["ano"], $this->carga_horaria, null, $det_escola["nm_escola"], $det_escola["municipio"], null, null, 1, null, null, 1, 0);
                                     }
                                     if ($obj_historico->cadastra()) {
                                         $obj_matricula = new clsPmieducarMatricula($det_matricula["cod_matricula"], null, null, null, $this->pessoa_logada, null, null, 1);
                                         if ($obj_matricula->edita()) {
                                             $this->mensagem = "Falha ao editar a matricula!<br>";
                                         }
                                     } else {
                                         $this->mensagem = "Falha ao cadastrar o historico!<br>";
                                     }
                                 } else {
                                     if ($verificador == "R") {
                                         $obj_matricula = new clsPmieducarMatricula($det_matricula["cod_matricula"], null, null, null, $this->pessoa_logada, null, null, 7);
                                         if (!$obj_matricula->edita()) {
                                             $this->mensagem = "Falha ao editar a matricula!<br>";
                                         }
                                     }
                                 }
                             }
                         } else {
                             if ($verificador == "N" && $this->conceitual == 1) {
                                 $obj_matricula = new clsPmieducarMatricula($matricula);
                                 $det_matricula = $obj_matricula->detalhe();
                                 if ($det_matricula["aprovado"] == 3) {
                                     $obj_historico = new clsPmieducarHistoricoEscolar();
                                     $lst_historico = $obj_historico->lista($matricula);
                                     $seq = count($lst_historico) + 1;
                                     $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo($this->ref_ref_cod_escola, null, null, null, 1, null, null, 1);
                                     $det_ano_letivo = $obj_ano_letivo->detalhe();
                                     $obj_escola = new clsPmieducarEscolaComplemento($this->ref_ref_cod_escola);
                                     $det_escola = $obj_escola->detalhe();
                                     if ($this->falta_ch_globalizada == 1) {
                                         $obj_historico = new clsPmieducarHistoricoEscolar($det_matricula["ref_cod_aluno"], $seq, null, $this->pessoa_logada, $this->ref_ref_cod_serie, $det_ano_letivo["ano"], $this->carga_horaria, null, $det_escola["nm_escola"], $det_escola["municipio"], null, null, 2, null, null, 1, 1);
                                     } else {
                                         $obj_historico = new clsPmieducarHistoricoEscolar($det_matricula["ref_cod_aluno"], $seq, null, $this->pessoa_logada, $this->ref_ref_cod_serie, $det_ano_letivo["ano"], $this->carga_horaria, null, $det_escola["nm_escola"], $det_escola["municipio"], null, null, 2, null, null, 1, 0);
                                     }
                                     if ($obj_historico->cadastra()) {
                                         $obj_matricula = new clsPmieducarMatricula($det_matricula["cod_matricula"], null, null, null, $this->pessoa_logada, null, null, 2);
                                         if ($obj_matricula->edita()) {
                                             $this->mensagem = "Falha ao editar a matricula!<br>";
                                         }
                                     } else {
                                         $this->mensagem = "Falha ao cadastrar o historico!<br>";
                                     }
                                 }
                             }
                         }
                     }
                 }
                 $obj_turma_modulo = new clsPmieducarTurmaModulo();
                 $fimAnoLetivo = $obj_turma_modulo->fimAno($this->ref_cod_turma, $this->qtd_modulos);
                 //					$total_notas = $obj_nota_aluno->retornaTotalNotas( $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma );
                 //					if ( $total_notas == ( $this->qtd_modulos * $this->qtd_disciplinas ) )
                 if ($fimAnoLetivo == "S") {
                     header("location: educar_turma_mvto_det.php?cod_turma={$this->ref_cod_turma}");
                     die;
                 } else {
                     header("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}");
                     die;
                 }
             } else {
                 if ($this->exame == "S") {
                     foreach ($this->lst_matriculas as $matriculas) {
                         //						Verifica se todos os módulos já terminaram
                         if ($this->num_modulo > $this->qtd_modulos) {
                             $campo_nota = "nota_{$matriculas[1]}";
                             $obj_mat_tur = new clsPmieducarMatriculaTurma();
                             $lst_mat_tur = $obj_mat_tur->lista($matriculas[2], $this->ref_cod_turma, null, null, null, null, null, null, 1);
                             if (is_array($lst_mat_tur)) {
                                 //$sequencial = ( count( $lst_mat_tur ) );
                                 $sequencial = $lst_mat_tur["sequencial"];
                             } else {
                                 $this->mensagem = "Erro no cadastro de nota!<br>";
                             }
                             $obj_nota_aluno = new clsPmieducarNotaAluno(null, $this->{$campo_nota}, $this->ref_cod_tipo_avaliacao, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $this->ref_cod_turma, $matriculas[2], $this->ref_cod_turma, null, $this->pessoa_logada, null, null, 1, $sequencial);
                             if (!$obj_nota_aluno->cadastra()) {
                                 $this->mensagem = "Erro no cadastro de nota!<br>";
                             }
                             $obj_nota_aluno = new clsPmieducarNotaAluno();
                             $lst_exame = $obj_nota_aluno->listaMedias($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma, $this->qtd_modulos, $this->ref_cod_curso, true, true, false, true);
                             $obj_turma_disciplina = new clsPmieducarTurmaDisciplina();
                             //							Carrega o código das disciplinas da turma
                             $lst_turma_disciplina = $obj_turma_disciplina->lista($this->ref_cod_turma);
                             if (is_array($lst_turma_disciplina)) {
                                 //								Carrega a quantidade de disciplinas da turma
                                 $this->qtd_disciplinas = count($lst_turma_disciplina);
                                 foreach ($lst_turma_disciplina as $valores) {
                                     $obj_disciplina = new clsPmieducarDisciplina($valores["ref_cod_disciplina"]);
                                     $det_disciplina = $obj_disciplina->detalhe();
                                     if ($det_disciplina) {
                                         $obj_dispensa = new clsPmieducarDispensaDisciplina();
                                         $det_dispensa = $obj_dispensa->lista($this->ref_cod_turma, $matriculas[2], $this->ref_cod_turma, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $det_disciplina["cod_disciplina"], null, null, null, null, null, null, null, 1);
                                         //										Verifica se o aluno não foi dispensado da disciplina
                                         if (!is_array($det_dispensa)) {
                                             $obj_notas = new clsPmieducarNotaAluno();
                                             //											Carrega a quantidade de notas por aluno de uma turma numa determinada disciplina
                                             $lst_notas = $obj_notas->retornaDiscMod($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $det_disciplina["cod_disciplina"], $this->ref_cod_turma, $this->ref_cod_turma, $matriculas[2]);
                                             //											Carrega a média da disciplina
                                             if ($lst_exame) {
                                                 foreach ($lst_exame as $exame) {
                                                     if ($exame["disc_ref_ref_cod_disciplina"] == $det_disciplina["cod_disciplina"] && $exame["ref_ref_cod_matricula"] == $matriculas[2]) {
                                                         $media_disciplina = $exame["media"];
                                                     }
                                                 }
                                             }
                                             if ($lst_notas == $this->qtd_modulos) {
                                                 if ($media_disciplina >= $this->media) {
                                                     $pula_disciplina = false;
                                                 } else {
                                                     $pula_disciplina = true;
                                                 }
                                             } else {
                                                 $pula_disciplina = true;
                                             }
                                             if ($pula_disciplina) {
                                                 if (!is_array($det_dispensa)) {
                                                     //													Verifica se a quantidade de notas por aluno é diferente do número do módulo em que a turma se encontra
                                                     if ($lst_notas == $this->qtd_modulos + 1) {
                                                         if ($salva_historico != "N") {
                                                             $lst_disc_exame[$det_disciplina["cod_disciplina"]] = "S";
                                                             $salva_historico = "S";
                                                         }
                                                     } else {
                                                         $salva_historico = "N";
                                                     }
                                                 }
                                             }
                                         }
                                     }
                                 }
                             }
                             if ($salva_historico == "S") {
                                 $lst_exame = $obj_nota_aluno->listaMedias($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->ref_cod_turma, $this->ref_cod_turma, $this->qtd_modulos + 1, $this->ref_cod_curso, true, true, false, true);
                                 if ($lst_exame) {
                                     foreach ($lst_exame as $exame) {
                                         if ($exame["ref_ref_cod_matricula"] == $matriculas[2] && $lst_disc_exame[$exame["disc_ref_ref_cod_disciplina"]] == "S") {
                                             //											Verifica se a média do aluno é igual ou superior a média mínima
                                             if ($exame["media"] >= $this->media_exame) {
                                                 //												Verifica se o aluno não foi reprovado
                                                 if ($aprovado[$exame["ref_ref_cod_matricula"]] != "N") {
                                                     $aprovado[$exame["ref_ref_cod_matricula"]] = "S";
                                                 }
                                             } else {
                                                 $aprovado[$exame["ref_ref_cod_matricula"]] = "N";
                                             }
                                         }
                                     }
                                 }
                             }
                             if (is_array($aprovado)) {
                                 foreach ($aprovado as $matricula => $verificador) {
                                     //									Verifica se o aluno foi aprovado
                                     if ($verificador == "S") {
                                         $obj_matricula = new clsPmieducarMatricula($matricula);
                                         $det_matricula = $obj_matricula->detalhe();
                                         //										Verifica se a matrícula está em exame
                                         if ($det_matricula["aprovado"] == 7) {
                                             $obj_historico = new clsPmieducarHistoricoEscolar();
                                             $lst_historico = $obj_historico->lista($matricula);
                                             $seq = count($lst_historico) + 1;
                                             $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo($this->ref_ref_cod_escola, null, null, null, 1, null, null, 1);
                                             $det_ano_letivo = $obj_ano_letivo->detalhe();
                                             $obj_escola = new clsPmieducarEscolaComplemento($this->ref_ref_cod_escola);
                                             $det_escola = $obj_escola->detalhe();
                                             //											Verifica se o aluno foi aprovado
                                             if ($verificador == "S") {
                                                 if ($this->falta_ch_globalizada == 1) {
                                                     $obj_historico = new clsPmieducarHistoricoEscolar($det_matricula["ref_cod_aluno"], $seq, null, $this->pessoa_logada, $this->ref_ref_cod_serie, $det_ano_letivo["ano"], $this->carga_horaria, null, $det_escola["nm_escola"], $det_escola["municipio"], null, null, 1, null, null, 1, 1);
                                                 } else {
                                                     $obj_historico = new clsPmieducarHistoricoEscolar($det_matricula["ref_cod_aluno"], $seq, null, $this->pessoa_logada, $this->ref_ref_cod_serie, $det_ano_letivo["ano"], $this->carga_horaria, null, $det_escola["nm_escola"], $det_escola["municipio"], null, null, 1, null, null, 1, 0);
                                                 }
                                                 if ($obj_historico->cadastra()) {
                                                     $obj_matricula = new clsPmieducarMatricula($det_matricula["cod_matricula"], null, null, null, $this->pessoa_logada, null, null, 1);
                                                     if ($obj_matricula->edita()) {
                                                         $this->mensagem = "Falha ao editar a matricula!<br>";
                                                     }
                                                 } else {
                                                     $this->mensagem = "Falha ao cadastrar o historico!<br>";
                                                 }
                                             }
                                         }
                                     }
                                     //									Verifica se o aluno foi reprovado
                                     if ($verificador == "N") {
                                         $obj_historico = new clsPmieducarHistoricoEscolar();
                                         $lst_historico = $obj_historico->lista($matriculas[0]);
                                         $seq = count($lst_historico) + 1;
                                         $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo($this->ref_ref_cod_escola, null, null, null, 1, null, null, 1);
                                         $det_ano_letivo = $obj_ano_letivo->detalhe();
                                         $obj_escola = new clsPmieducarEscolaComplemento($this->ref_ref_cod_escola);
                                         $det_escola = $obj_escola->detalhe();
                                         if ($this->falta_ch_globalizada == 1) {
                                             $obj_historico = new clsPmieducarHistoricoEscolar($matriculas[0], $seq, null, $this->pessoa_logada, $this->ref_ref_cod_serie, $det_ano_letivo["ano"], $this->carga_horaria, null, $det_escola["nm_escola"], $det_escola["municipio"], null, null, 2, null, null, 1, 1);
                                         } else {
                                             $obj_historico = new clsPmieducarHistoricoEscolar($matriculas[0], $seq, null, $this->pessoa_logada, $this->ref_ref_cod_serie, $det_ano_letivo["ano"], $this->carga_horaria, null, $det_escola["nm_escola"], $det_escola["municipio"], null, null, 2, null, null, 1, 0);
                                         }
                                         if ($obj_historico->cadastra()) {
                                             $obj_matricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, 2);
                                             if (!$obj_matricula->edita()) {
                                                 $this->mensagem = "Falha ao alterar a matricula!<br>";
                                             }
                                         } else {
                                             $this->mensagem = "Falha ao cadastrar o historico!<br>";
                                         }
                                     }
                                 }
                             }
                             header("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}");
                             die;
                         }
                     }
                 }
             }
             header("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}");
             die;
         }
     }
 }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Pagamento Multa - Listagem";
     foreach ($_GET as $var => $val) {
         // passa todos os valores obtidos no GET para atributos do objeto
         $this->{$var} = $val === "" ? null : $val;
     }
     $lista_busca = array("Cliente", "Valor Multa (Biblioteca)", "Valor Multa (Total)", "Valor Pago");
     $obrigatorio = false;
     $get_instituicao = true;
     $get_escola = true;
     $get_biblioteca = true;
     $get_cliente_tipo = true;
     $get_cabecalho = "lista_busca";
     include "include/pmieducar/educar_campo_lista.php";
     $this->addCabecalhos($lista_busca);
     $parametros = new clsParametrosPesquisas();
     $parametros->setSubmit(0);
     $parametros->adicionaCampoSelect("ref_idpes", "idpes", "nome");
     $parametros->setPessoa('F');
     $parametros->setPessoaCPF('N');
     $parametros->setCodSistema(1);
     $this->campoListaPesq("ref_idpes", "Cliente", array('' => "Selecione"), $this->ref_idpes, "pesquisa_pessoa_lst.php", "", false, "", "", null, null, "", false, $parametros->serializaCampos());
     // Paginador
     $this->limite = 20;
     $this->offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->limite - $this->limite : 0;
     $obj_exemplar_emprestimo = new clsPmieducarExemplarEmprestimo();
     $lst_exemplar_emprestimo = $obj_exemplar_emprestimo->listaDividaPagamentoCliente($this->ref_cod_cliente, $this->ref_idpes, $this->ref_cod_cliente_tipo, $this->pessoa_logada, $this->ref_cod_biblioteca, $this->ref_cod_escola, $this->ref_cod_instituicao);
     // monta a lista
     if (is_array($lst_exemplar_emprestimo) && count($lst_exemplar_emprestimo)) {
         foreach ($lst_exemplar_emprestimo as $registro) {
             $obj_cliente = new clsPmieducarCliente($registro["ref_cod_cliente"]);
             $det_cliente = $obj_cliente->detalhe();
             if ($det_cliente) {
                 $obj_pessoa = new clsPessoa_($det_cliente["ref_idpes"]);
                 $det_pessoa = $obj_pessoa->detalhe();
                 if ($det_tipo) {
                     $nm_tipo = $det_tipo["nm_tipo"];
                 }
             }
             if (!is_numeric($registro["valor_pago"])) {
                 $registro["valor_pago"] = 0;
             }
             $obj_ex_em = new clsPmieducarExemplarEmprestimo();
             $lst_ex_em = $obj_ex_em->listaTotalMulta($registro["ref_cod_cliente"]);
             $multa_total = 0;
             if ($lst_ex_em) {
                 foreach ($lst_ex_em as $divida_total) {
                     if ($divida_total["cod_cliente"] == $registro["ref_cod_cliente"]) {
                         $multa_total = $divida_total["valor_multa_total"];
                     }
                 }
             }
             $obj_bib = new clsPmieducarBiblioteca($registro["ref_cod_biblioteca"]);
             $det_bib = $obj_bib->detalhe();
             if ($det_bib) {
                 $obj_inst = new clsPmieducarInstituicao($det_bib["ref_cod_instituicao"]);
                 $det_inst = $obj_inst->detalhe();
                 $obj_esc = new clsPmieducarEscolaComplemento($det_bib["ref_cod_escola"]);
                 $det_esc = $obj_esc->detalhe();
                 if ($det_esc) {
                     $nome_escola = $det_esc["nm_escola"];
                 } else {
                     $obj_escola = new clsPmieducarEscola($det_bib["ref_cod_escola"]);
                     $det_escola = $obj_escola->detalhe();
                     if ($det_escola) {
                         $obj_pes = new clsPessoa_($det_escola["ref_idpes"]);
                         $det_pes = $obj_pes->detalhe();
                         if ($det_pes) {
                             $nome_escola = $det_pes["nome"];
                         }
                     }
                 }
             }
             $obj_tipo = new clsPmieducarCliente();
             $det_tipo = $obj_tipo->retornaTipoCliente($registro["ref_cod_cliente"], $registro["ref_cod_biblioteca"]);
             $lista_busca = array($lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">{$det_pessoa["nome"]}</a>", $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">" . "R\$" . number_format($registro["valor_multa"], 2, ",", ".") . "</a>", $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">" . "R\$" . number_format($multa_total, 2, ",", ".") . "</a>", $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">" . "R\$" . number_format($registro["valor_pago"], 2, ",", ".") . "</a>");
             if ($qtd_bibliotecas > 1 && ($nivel_usuario == 4 || $nivel_usuario == 8)) {
                 $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">{$det_bib["nm_biblioteca"]}</a>";
             } else {
                 if ($nivel_usuario == 1 || $nivel_usuario == 2 || $nivel_usuario == 4) {
                     $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">{$det_bib["nm_biblioteca"]}</a>";
                 }
             }
             if ($nivel_usuario == 1 || $nivel_usuario == 2) {
                 $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">{$nome_escola}</a>";
             }
             if ($nivel_usuario == 1) {
                 $lista_busca[] = "<a href=\"educar_pagamento_multa_det.php?cod_cliente={$registro["ref_cod_cliente"]}&cod_cliente_tipo={$det_tipo["cod_cliente_tipo"]}\">{$det_inst["nm_instituicao"]}</a>";
             }
             $this->addLinhas($lista_busca);
         }
     }
     $this->addPaginador2("educar_pagamento_multa_lst.php", $total, $_GET, $this->nome, $this->limite);
     $obj_permissoes = new clsPermissoes();
     //		if( $obj_permissoes->permissao_cadastra( 622, $this->pessoa_logada, 11 ) )
     //		{
     //		$this->acao = "go(\"educar_pagamento_multa_cad.php\")";
     //		$this->nome_acao = "Novo";
     //		}
     $this->largura = "100%";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_biblioteca_index.php" => "i-Educar - Biblioteca", "" => "Listagem de d&iacute;vidas"));
     $this->enviaLocalizacao($localizacao->montar());
 }
Ejemplo n.º 14
0
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Biblioteca - Listagem";
     foreach ($_GET as $var => $val) {
         // passa todos os valores obtidos no GET para atributos do objeto
         $this->{$var} = $val === "" ? null : $val;
     }
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $lista_busca = array("Biblioteca", "Escola");
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if ($nivel_usuario == 1) {
         $lista_busca[] = "Institui&ccedil;&atilde;o";
     }
     // Filtros de Foreign Keys
     $get_escola = true;
     include "include/pmieducar/educar_campo_lista.php";
     $this->addCabecalhos($lista_busca);
     // outros Filtros
     $this->campoTexto("nm_biblioteca", "Biblioteca", $this->nm_biblioteca, 30, 255, false);
     // Paginador
     $this->limite = 20;
     $this->offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->limite - $this->limite : 0;
     $obj_biblioteca = new clsPmieducarBiblioteca();
     $obj_biblioteca->setOrderby("nm_biblioteca ASC");
     $obj_biblioteca->setLimite($this->limite, $this->offset);
     $lista = $obj_biblioteca->lista(null, $this->ref_cod_instituicao, $this->ref_cod_escola, $this->nm_biblioteca, null, null, null, null, null, null, null, null, 1);
     $total = $obj_biblioteca->_total;
     // monta a lista
     if (is_array($lista) && count($lista)) {
         foreach ($lista as $registro) {
             // pega detalhes de foreign_keys
             if (class_exists("clsPmieducarInstituicao")) {
                 $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"];
             } 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_cod_escola"]);
                 $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
                 $idpes = $det_ref_cod_escola["ref_idpes"];
                 if ($idpes) {
                     $obj_escola = new clsPessoaJuridica($idpes);
                     $obj_escola_det = $obj_escola->detalhe();
                     $registro["ref_cod_escola"] = $obj_escola_det["fantasia"];
                 } else {
                     $obj_escola = new clsPmieducarEscolaComplemento($registro["ref_cod_escola"]);
                     $obj_escola_det = $obj_escola->detalhe();
                     $registro["ref_cod_escola"] = $obj_escola_det["nm_escola"];
                 }
             } else {
                 $registro["ref_cod_escola"] = "Erro na gera&ccedil;&atilde;o";
                 echo "<!--\nErro\nClasse n&atilde;o existente: clsPmieducarEscola\n-->";
             }
             $lista_busca = array("<a href=\"educar_biblioteca_det.php?cod_biblioteca={$registro["cod_biblioteca"]}\">{$registro["nm_biblioteca"]}</a>", "<a href=\"educar_biblioteca_det.php?cod_biblioteca={$registro["cod_biblioteca"]}\">{$registro["ref_cod_escola"]}</a>");
             if ($nivel_usuario == 1) {
                 $lista_busca[] = "<a href=\"educar_biblioteca_det.php?cod_biblioteca={$registro["cod_biblioteca"]}\">{$registro["ref_cod_instituicao"]}</a>";
             }
             $this->addLinhas($lista_busca);
         }
     }
     $this->addPaginador2("educar_biblioteca_lst.php", $total, $_GET, $this->nome, $this->limite);
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(591, $this->pessoa_logada, 3)) {
         $this->acao = "go(\"educar_biblioteca_cad.php\")";
         $this->nome_acao = "Novo";
     }
     $this->largura = "100%";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "i-Educar", "educar_biblioteca_index.php" => "Biblioteca", "" => "Lista de Biblioteca"));
     $this->enviaLocalizacao($localizacao->montar());
 }
 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';
     $obj_escola_instituicao = new clsPmieducarEscola();
     $lst_escola_instituicao = $obj_escola_instituicao->lista($this->ref_cod_escola, null, null, $this->ref_cod_instituicao, null, null, null, null, null, null, 1);
     $this->pdf = new clsPDF("Documentos Pendentes", "Documentos Pendentes", "A4", "", false, false);
     $join = "";
     $where = "";
     if (is_numeric($this->ref_cod_escola)) {
         $where .= " AND matricula.ref_cod_aluno = cod_aluno ";
         $where .= " AND matricula.ref_ref_cod_escola = {$this->ref_cod_escola} ";
         $join .= " ,pmieducar.matricula ";
     }
     if (is_numeric($this->ref_cod_curso)) {
         $where .= " AND matricula.ref_cod_curso = {$this->ref_cod_curso} ";
     }
     if (is_numeric($this->ref_cod_serie)) {
         $where .= " AND matricula.ref_ref_cod_serie = {$this->ref_cod_serie} ";
     }
     if (is_numeric($this->cod_aluno)) {
         $where .= " AND cod_aluno = '{$this->cod_aluno}' ";
     }
     if (is_string($this->nm_aluno)) {
         $where .= " AND nome like '%{$this->nm_aluno}%' ";
     }
     $SELECT = "SELECT cod_aluno\n\t\t\t\t\t       ,nome\n\t\t\t\t\t       ,data_nasc \t\t\tas \"Data de Nascimento\"\n\t\t\t\t\t       ,ideciv\t   \t\t\tas \"Estado Civil\"\n\t\t\t\t\t       ,idmun_nascimento\tas \"Naturalidade\"\n\t\t\t\t\t       ,tipo_cert_civil\t   \tas \"Tipo de Certidão Civil\"\n\t\t\t\t\t       ,num_termo\t   \t\tas \"Número Termo\"\n\t\t\t\t\t       ,num_livro\t   \t\tas \"Número Livro\"\n\t\t\t\t\t       ,num_folha\t   \t\tas \"Número Folha\"\n\t\t\t\t\t       ,data_emissao_cert_civil\tas \"Data Emissão Civil\"\n\t\t\t\t\t       ,sigla_uf_cert_civil\t   \tas \"Sigla Uf Cert. Civil\"\n\t\t\t\t\t       ,cartorio_cert_civil\t   \tas \"Cartório cert. Civil\"\n\t\t\t\t\t\t   ,cep   \t\tas \"CEP\"\n\t\t\t\t\t\t   ,idbai::text as \"Bairro\"\n\t\t\t\t\t\t   ,idlog::text as \"Logradouro\"\n\t\t\t\t\t\t   ,1::text \tas \"Cidade\"\n\t\t\t\t\t\t   ,1::text \tas \"Estado\"\n\t\t\t\t\t  FROM pmieducar.aluno\n\t\t\t\t\t       ,cadastro.pessoa\n\t\t\t\t\t       ,cadastro.fisica\n\t\t\t\t\t       ,cadastro.endereco_pessoa\n\t\t\t\t\t       ,cadastro.documento\n\t\t\t\t\t       {$join}\n\t\t\t\t\t WHERE aluno.ref_idpes       = pessoa.idpes\n\t\t\t\t\t   AND endereco_pessoa.idpes = pessoa.idpes\n\t\t\t\t\t   AND documento.idpes\t     = pessoa.idpes\n\t\t\t\t\t   AND fisica.idpes\t     = pessoa.idpes\n\t\t\t\t\t   AND fisica.idpes\t     = documento.idpes\n\t\t\t\t\t   AND fisica.idpes\t     = aluno.ref_idpes\n\t\t\t\t\t   AND documento.idpes\t = aluno.ref_idpes\n\t\t\t\t\t   {$where}\n\t\t\t\t\t   AND (\n\t\t\t\t\t\tdata_nasc IS NULL\n\t\t\t\t\t    OR ideciv IS NULL\n\t\t\t\t\t\tOR idmun_nascimento IS NULL\n\t\t\t\t\t\tOR tipo_cert_civil  IS NULL\n\t\t\t\t\t\tOR num_termo\t    IS NULL\n\t\t\t\t\t\tOR num_livro\t    IS NULL\n\t\t\t\t\t\tOR num_folha\t    IS NULL\n\t\t\t\t\t\tOR data_emissao_cert_civil IS NULL\n\t\t\t\t\t\tOR sigla_uf_cert_civil     IS NULL\n\t\t\t\t\t\tOR cartorio_cert_civil     IS NULL\n\t\t\t\t\t\tOR cep   IS NULL\n\t\t\t\t\t\tOR idbai IS NULL\n\t\t\t\t\t\tOR idlog IS NULL\n\t\t\t\t\t       )\n\n\t\t\t\t\tUNION\n\n\t\t\t\t\tSELECT cod_aluno\n\t\t\t\t\t       ,nome\n\t\t\t\t\t       ,data_nasc\n\t\t\t\t\t       ,ideciv\n\t\t\t\t\t       ,idmun_nascimento\n\t\t\t\t\t       ,tipo_cert_civil\n\t\t\t\t\t       ,num_termo\n\t\t\t\t\t       ,num_livro\n\t\t\t\t\t       ,num_folha\n\t\t\t\t\t       ,data_emissao_cert_civil\n\t\t\t\t\t       ,sigla_uf_cert_civil\n\t\t\t\t\t       ,cartorio_cert_civil\n\t\t\t\t\t       ,cep\n\t\t\t\t\t       ,bairro\n\t\t\t\t\t       ,logradouro\n\t\t\t\t\t       ,cidade\n\t\t\t\t\t       ,sigla_uf\n\t\t\t\t\t  FROM pmieducar.aluno\n\t\t\t\t\t       ,cadastro.pessoa\n\t\t\t\t\t       ,cadastro.fisica\n\t\t\t\t\t       ,cadastro.endereco_externo\n\t\t\t\t\t       ,cadastro.documento\n\t\t\t\t\t       {$join}\n\t\t\t\t\t WHERE aluno.ref_idpes        = pessoa.idpes\n\t\t\t\t\t   AND endereco_externo.idpes = pessoa.idpes\n\t\t\t\t\t   AND documento.idpes\t      = pessoa.idpes\n\t\t\t\t\t   AND fisica.idpes\t     = pessoa.idpes\n\t\t\t\t\t   AND fisica.idpes\t     = aluno.ref_idpes\n\t\t\t\t\t   AND fisica.idpes\t     = documento.idpes\n\t\t\t\t\t   {$where}\n\t\t\t\t\t   AND (\n\t\t\t\t\t\tdata_nasc IS NULL\n\t\t\t\t\t    OR ideciv IS NULL\n\t\t\t\t\t\tOR idmun_nascimento IS NULL\n\t\t\t\t\t\tOR tipo_cert_civil  IS NULL\n\t\t\t\t\t\tOR num_termo\t    IS NULL\n\t\t\t\t\t\tOR num_livro\t    IS NULL\n\t\t\t\t\t\tOR num_folha\t    IS NULL\n\t\t\t\t\t\tOR data_emissao_cert_civil IS NULL\n\t\t\t\t\t\tOR sigla_uf_cert_civil     IS NULL\n\t\t\t\t\t\tOR cartorio_cert_civil     IS NULL\n\t\t\t\t\t\tOR logradouro IS NULL\n\t\t\t\t\t\tOR bairro     IS NULL\n\t\t\t\t\t\tOR cidade     IS NULL\n\t\t\t\t\t\tOR sigla_uf   IS NULL\n\t\t\t\t\t\tOR cep        IS NULL\n\t\t\t\t\t       )\n\t\t\t\t\tORDER BY nome\n\t\t\t\t\t";
     if ($this->ref_cod_escola) {
         $obj_escola = new clsPmieducarEscola($this->ref_cod_escola);
         $det_escola = $obj_escola->detalhe();
         $this->nm_escola = $det_escola['nome'];
         $obj_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao);
         $det_instituicao = $obj_instituicao->detalhe();
         $this->nm_instituicao = $det_instituicao['nm_instituicao'];
         if ($det_escola['ref_idpes']) {
             $obj_endereco_escola = new clsEndereco($det_escola['ref_idpes']);
             $det_enderedo_escola = $obj_endereco_escola->detalhe();
             $this->nm_localidade = $this->nm_municipio = $det_enderedo_escola['cidade'];
             if (!$det_enderedo_escola) {
                 $obj_endereco_externo_escola = new clsEnderecoExterno($det_escola['ref_idpes']);
                 $det_enderedo_externo_escola = $obj_endereco_externo_escola->detalhe();
                 $this->nm_localidade = $this->nm_municipio = $det_enderedo_externo_escola['cidade'];
             }
         } else {
             $obj_escola_complemento = new clsPmieducarEscolaComplemento($this->ref_cod_escola);
             $det_escola_complemento = $obj_escola_complemento->detalhe();
             $this->nm_localidade = $this->nm_municipio = $det_escola_complemento['municipio'];
         }
     }
     $db = new clsBanco();
     $db->Consulta($SELECT);
     if ($db->numLinhas()) {
         $x_quadrado = 30;
         $this->page_y = 120;
         $altura_caixa = 20;
         $this->pdf->OpenPage();
         $this->addCabecalho();
         $total_alunos = 0;
         while ($db->ProximoRegistro()) {
             $tupla = $db->Tupla();
             $dados_pendentes = 0;
             for ($id = 2; $id < count($tupla) / 2; $id++) {
                 if (!$tupla[$id]) {
                     $dados_pendentes++;
                 }
             }
             if ($this->page_y + $altura_caixa >= 780) {
                 $this->page_y = 120;
                 $this->pdf->ClosePage();
                 $this->pdf->OpenPage();
                 $page_open = true;
                 $this->addCabecalho();
             }
             if ($dados_pendentes) {
                 $total_alunos++;
                 if ($this->page_y + $altura_caixa * $dados_pendentes >= 780) {
                     $this->page_y = 120;
                     $this->pdf->ClosePage();
                     $this->pdf->OpenPage();
                     $page_open = true;
                     $this->addCabecalho();
                 }
                 $this->pdf->quadrado_relativo($x_quadrado, $this->page_y, 535, $altura_caixa, 0.1, "#ffffff", "#D0D0D0");
                 $sql = "SELECT \n\t\t\t\t\t\t\t\tnm_turma, nm_serie \n\t\t\t\t\t\t\tFROM \n\t\t\t\t\t\t\t\tpmieducar.matricula, \n\t\t\t\t\t\t\t\tpmieducar.matricula_turma, \n\t\t\t\t\t\t\t\tpmieducar.turma t, \n\t\t\t\t\t\t\t\tpmieducar.serie\n\t\t\t\t\t\t\tWHERE \n\t\t\t\t\t\t\t\tref_cod_aluno = {$tupla['cod_aluno']} \n\t\t\t\t\t\t\t\tAND cod_matricula = ref_cod_matricula \n\t\t\t\t\t\t\t\tAND ref_cod_turma = cod_turma \n\t\t\t\t\t\t\t\tAND t.ref_ref_cod_serie = cod_serie";
                 $db2 = new clsBanco();
                 $db2->Consulta($sql);
                 $db2->ProximoRegistro();
                 list($nm_turma, $nm_serie) = $db2->Tupla();
                 $this->pdf->escreve_relativo("Aluno:      {$tupla['cod_aluno']} - {$tupla['nome']}         Série:    {$nm_serie}        Turma:      {$nm_turma}", 35, $this->page_y + 5, 400, $altura_caixa, $fonte, 8, $corTexto, 'left');
                 $this->page_y += $altura_caixa;
                 $this->pdf->quadrado_relativo($x_quadrado, $this->page_y, 535, $altura_caixa * $dados_pendentes);
                 $this->pdf->linha_relativa($x_quadrado, $this->page_y, 535, 0, '1');
                 foreach ($tupla as $key => $valor) {
                     if (!$valor && !is_numeric($key)) {
                         $this->pdf->escreve_relativo($key, 35, $this->page_y + 5, 300, $altura_caixa, $fonte, 8, $corTexto, 'left');
                         $this->page_y += $altura_caixa;
                     }
                 }
             }
         }
         if ($total_alunos != 0) {
             $this->pdf->quadrado_relativo($x_quadrado, $this->page_y, 535, $altura_caixa * $dados_pendentes);
             $this->pdf->linha_relativa($x_quadrado, $this->page_y, 535, 0, '1');
             $this->pdf->escreve_relativo("TOTAL: {$total_alunos} alunos", 35, $this->page_y + 5, 400, $altura_caixa, $fonte, 8, $corTexto, 'left');
         }
     } else {
         echo '<script>alert("Não existem alunos com documentos pendentes para os filtros informados!");window.parent.fechaExpansivel("div_dinamico_" + (window.parent.DOM_divs.length-1)); </script>';
     }
     $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>";
 }
Ejemplo n.º 16
0
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Cole&ccedil&atilde;o - Detalhe";
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->cod_acervo_colecao = $_GET["cod_acervo_colecao"];
     $tmp_obj = new clsPmieducarAcervoColecao($this->cod_acervo_colecao);
     $registro = $tmp_obj->detalhe();
     if (class_exists("clsPmieducarBiblioteca")) {
         $obj_ref_cod_biblioteca = new clsPmieducarBiblioteca($registro["ref_cod_biblioteca"]);
         $det_ref_cod_biblioteca = $obj_ref_cod_biblioteca->detalhe();
         $registro["ref_cod_biblioteca"] = $det_ref_cod_biblioteca["nm_biblioteca"];
         if (class_exists("clsPmieducarInstituicao")) {
             $registro["ref_cod_instituicao"] = $det_ref_cod_biblioteca["ref_cod_instituicao"];
             $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"];
         } else {
             $registro["ref_cod_instituicao"] = "Erro na geracao";
             echo "<!--\nErro\nClasse nao existente: clsPmieducarInstituicao\n-->";
         }
     }
     if (class_exists("clsPmieducarEscola")) {
         $registro["ref_cod_escola"] = $det_ref_cod_biblioteca["ref_cod_escola"];
         $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_cod_escola"]);
         $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
         $idpes = $det_ref_cod_escola["ref_idpes"];
         if ($idpes) {
             $obj_escola = new clsPessoaJuridica($idpes);
             $obj_escola_det = $obj_escola->detalhe();
             $registro["ref_cod_escola"] = $obj_escola_det["fantasia"];
         } else {
             $obj_escola = new clsPmieducarEscolaComplemento($registro["ref_cod_escola"]);
             $obj_escola_det = $obj_escola->detalhe();
             $registro["ref_cod_escola"] = $obj_escola_det["nm_escola"];
         }
     }
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if (!$registro) {
         header("location: educar_acervo_colecao_lst.php");
         die;
     }
     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 ($registro["ref_cod_escola"]) {
             $this->addDetalhe(array("Escola", "{$registro["ref_cod_escola"]}"));
         }
     }
     if ($registro["ref_cod_biblioteca"]) {
         $this->addDetalhe(array("Biblioteca", "{$registro["ref_cod_biblioteca"]}"));
     }
     if ($registro["cod_acervo_colecao"]) {
         $this->addDetalhe(array("C&oacute;digo Cole&ccedil;&atilde;o", "{$registro["cod_acervo_colecao"]}"));
     }
     if ($registro["nm_colecao"]) {
         $this->addDetalhe(array("Cole&ccedil;&atilde;o", "{$registro["nm_colecao"]}"));
     }
     if ($registro["descricao"]) {
         $this->addDetalhe(array("Descri&ccedil;&atilde;o", "{$registro["descricao"]}"));
     }
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(593, $this->pessoa_logada, 11)) {
         $this->url_novo = "educar_acervo_colecao_cad.php";
         $this->url_editar = "educar_acervo_colecao_cad.php?cod_acervo_colecao={$registro["cod_acervo_colecao"]}";
     }
     $this->url_cancelar = "educar_acervo_colecao_lst.php";
     $this->largura = "100%";
 }
Ejemplo n.º 17
0
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Biblioteca - Detalhe";
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->cod_biblioteca = $_GET["cod_biblioteca"];
     $tmp_obj = new clsPmieducarBiblioteca($this->cod_biblioteca);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header("location: educar_biblioteca_lst.php");
         die;
     }
     if (class_exists("clsPmieducarInstituicao")) {
         $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"];
     } else {
         $registro["ref_cod_instituicao"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarInstituicao\n-->";
     }
     if (class_exists("clsPmieducarEscola")) {
         $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_cod_escola"]);
         $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
         $idpes = $det_ref_cod_escola["ref_idpes"];
         if ($idpes) {
             $obj_escola = new clsPessoaJuridica($idpes);
             $obj_escola_det = $obj_escola->detalhe();
             $registro["ref_cod_escola"] = $obj_escola_det["fantasia"];
         } else {
             $obj_escola = new clsPmieducarEscolaComplemento($registro["ref_cod_escola"]);
             $obj_escola_det = $obj_escola->detalhe();
             $registro["ref_cod_escola"] = $obj_escola_det["nm_escola"];
         }
     } else {
         $registro["ref_cod_escola"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarEscola\n-->";
     }
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if ($nivel_usuario == 1) {
         if ($registro["ref_cod_instituicao"]) {
             $this->addDetalhe(array("Institui&ccedil;&atilde;o", "{$registro["ref_cod_instituicao"]}"));
         }
     }
     if ($registro["ref_cod_escola"]) {
         $this->addDetalhe(array("Escola", "{$registro["ref_cod_escola"]}"));
     }
     if ($registro["nm_biblioteca"]) {
         $this->addDetalhe(array("Biblioteca", "{$registro["nm_biblioteca"]}"));
     }
     if ($registro["tombo_automatico"]) {
         $this->addDetalhe(array("Tombo Automático", dbBool($registro["tombo_automatico"]) ? "Sim" : "Não"));
     }
     $obj = new clsPmieducarBibliotecaUsuario();
     $lst = $obj->lista($this->cod_biblioteca);
     if ($lst) {
         $tabela = "<TABLE>\n\t\t\t\t\t       <TR align=center>\n\t\t\t\t\t           <TD bgcolor=#A1B3BD><B>Nome</B></TD>\n\t\t\t\t\t       </TR>";
         $cont = 0;
         foreach ($lst as $valor) {
             if ($cont % 2 == 0) {
                 $color = " bgcolor=#E4E9ED ";
             } else {
                 $color = " bgcolor=#FFFFFF ";
             }
             $obj_cod_usuario = new clsPessoa_($valor["ref_cod_usuario"]);
             $obj_usuario_det = $obj_cod_usuario->detalhe();
             $nome_usuario = $obj_usuario_det['nome'];
             $tabela .= "<TR>\n\t\t\t\t\t\t\t    <TD {$color} align=left>{$nome_usuario}</TD>\n\t\t\t\t\t\t\t</TR>";
             $cont++;
         }
         $tabela .= "</TABLE>";
     }
     if ($tabela) {
         $this->addDetalhe(array("Usu&aacute;rio", "{$tabela}"));
     }
     if ($obj_permissoes->permissao_cadastra(591, $this->pessoa_logada, 3)) {
         $this->url_novo = "educar_biblioteca_cad.php";
         $this->url_editar = "educar_biblioteca_cad.php?cod_biblioteca={$registro["cod_biblioteca"]}";
     }
     $this->url_cancelar = "educar_biblioteca_lst.php";
     $this->largura = "100%";
 }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = 'Falta Atraso - Detalhe';
     $this->ref_cod_servidor = $_GET['ref_cod_servidor'];
     $this->ref_cod_escola = $_GET['ref_cod_escola'];
     $this->ref_ref_cod_instituicao = $_GET['ref_cod_instituicao'];
     $tmp_obj = new clsPmieducarFaltaAtraso();
     $tmp_obj->setOrderby('data_falta_atraso DESC');
     $this->cod_falta_atraso = $_GET['cod_falta_atraso'];
     $registro = $tmp_obj->lista($this->cod_falta_atraso);
     if (!$registro) {
         header('Location: ' . sprintf('educar_falta_atraso_lst.php?ref_cod_servidor=%d&ref_cod_instituicao=%d', $this->ref_cod_servidor, $this->ref_ref_cod_instituicao));
         die;
     } else {
         $tabela = '<table>
              <tr align=center>
                  <td bgcolor="#a1b3bd"><b>Dia</b></td>
                  <td bgcolor="#a1b3bd"><b>Tipo</b></td>
                  <td bgcolor="#a1b3bd"><b>Qtd. Horas</b></td>
                  <td bgcolor="#a1b3bd"><b>Qtd. Minutos</b></td>
                  <td bgcolor="#a1b3bd"><b>Escola</b></td>
                  <td bgcolor="#a1b3bd"><b>Instituição</b></td>
              </tr>';
         $cont = 0;
         $total = 0;
         foreach ($registro as $falta) {
             if ($cont % 2 == 0) {
                 $color = ' bgcolor="#E4E9ED" ';
             } else {
                 $color = ' bgcolor="#FFFFFF" ';
             }
             $obj_esc = new clsPmieducarEscolaComplemento($falta['ref_cod_escola']);
             $det_esc = $obj_esc->detalhe();
             $obj_ins = new clsPmieducarInstituicao($falta['ref_ref_cod_instituicao']);
             $det_ins = $obj_ins->detalhe();
             $corpo .= sprintf('
       <tr>
         <td %s align="left">%s</td>
         <td %s align="left">%s</td>
         <td %s align="right">%s</td>
         <td %s align="right">%s</td>
         <td %s align="left">%s</td>
         <td %s align="left">%s</td>
       </tr>', $color, dataFromPgToBr($falta['data_falta_atraso']), $color, $falta['tipo'] == 1 ? 'Atraso' : 'Falta', $color, $falta['qtd_horas'], $color, $falta['qtd_min'], $color, $det_esc['nm_escola'], $color, $det_ins['nm_instituicao']);
             $cont++;
         }
         $tabela .= $corpo;
         $tabela .= "</table>";
         if ($tabela) {
             $this->addDetalhe(array('Faltas/Atrasos', $tabela));
         }
     }
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(635, $this->pessoa_logada, 7)) {
         $this->caption_novo = 'Compensar';
         $this->url_editar = FALSE;
         $this->url_novo = sprintf('educar_falta_atraso_compensado_cad.php?ref_cod_servidor=%d&ref_cod_escola=%d&ref_cod_instituicao=%d', $this->ref_cod_servidor, $this->ref_cod_escola, $this->ref_ref_cod_instituicao);
     }
     $this->url_cancelar = sprintf("educar_falta_atraso_lst.php?ref_cod_servidor=%d&ref_cod_instituicao=%d", $this->ref_cod_servidor, $this->ref_ref_cod_instituicao);
     $this->largura = '100%';
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_index.php" => "i-Educar - Escola", "" => "Detalhe da falta/atraso do servidor"));
     $this->enviaLocalizacao($localizacao->montar());
 }
Ejemplo n.º 19
0
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Dados Biblioteca - Detalhe";
     $this->addBanner("imagens/nvp_top_intranet.jpg", "imagens/nvp_vert_intranet.jpg", "Intranet");
     $this->cod_biblioteca = $_GET["cod_biblioteca"];
     $tmp_obj = new clsPmieducarBiblioteca($this->cod_biblioteca);
     $registro = $tmp_obj->detalhe();
     if (class_exists("clsPmieducarInstituicao")) {
         $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"];
     } else {
         $registro["ref_cod_instituicao"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarInstituicao\n-->";
     }
     if (class_exists("clsPmieducarEscola")) {
         $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_cod_escola"]);
         $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
         $idpes = $det_ref_cod_escola["ref_idpes"];
         if ($idpes) {
             $obj_escola = new clsPessoaJuridica($idpes);
             $obj_escola_det = $obj_escola->detalhe();
             $registro["ref_cod_escola"] = $obj_escola_det["fantasia"];
         } else {
             $obj_escola = new clsPmieducarEscolaComplemento($registro["ref_cod_escola"]);
             $obj_escola_det = $obj_escola->detalhe();
             $registro["ref_cod_escola"] = $obj_escola_det["nm_escola"];
         }
     } else {
         $registro["ref_cod_escola"] = "Erro na geracao";
         echo "<!--\nErro\nClasse nao existente: clsPmieducarEscola\n-->";
     }
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if ($nivel_usuario <= 3) {
         $permitido = true;
     } else {
         $obj_usuario_bib = new clsPmieducarBibliotecaUsuario();
         $lista_bib = $obj_usuario_bib->lista(null, $this->pessoa_logada);
         $permitido = false;
         if ($lista_bib) {
             foreach ($lista_bib as $biblioteca) {
                 if ($this->cod_biblioteca == $biblioteca['ref_cod_biblioteca']) {
                     $permitido = true;
                 }
             }
         }
     }
     if (!$registro || !$permitido) {
         header("location: educar_biblioteca_dados_lst.php");
         die;
     }
     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 ($registro["ref_cod_escola"]) {
             $this->addDetalhe(array("Escola", "{$registro["ref_cod_escola"]}"));
         }
     }
     if ($registro["nm_biblioteca"]) {
         $this->addDetalhe(array("Biblioteca", "{$registro["nm_biblioteca"]}"));
     }
     if ($registro["valor_multa"]) {
         $registro["valor_multa"] = number_format($registro["valor_multa"], 2, ",", ".");
         $this->addDetalhe(array("Valor Multa", "{$registro["valor_multa"]}"));
     }
     if ($registro["max_emprestimo"]) {
         $this->addDetalhe(array("M&aacute;ximo Empr&eacute;stimo", "{$registro["max_emprestimo"]}"));
     }
     if ($registro["valor_maximo_multa"]) {
         $registro["valor_maximo_multa"] = number_format($registro["valor_maximo_multa"], 2, ",", ".");
         $this->addDetalhe(array("Valor M&aacute;ximo Multa", "{$registro["valor_maximo_multa"]}"));
     }
     if ($registro["requisita_senha"]) {
         if ($registro["requisita_senha"] == 0) {
             $registro["requisita_senha"] = "n&atilde;o";
         } else {
             if ($registro["requisita_senha"] == 1) {
                 $registro["requisita_senha"] = "sim";
             }
         }
         $this->addDetalhe(array("Requisita Senha", "{$registro["requisita_senha"]}"));
     }
     if ($registro["dias_espera"]) {
         $this->addDetalhe(array("Dias Espera", "{$registro["dias_espera"]}"));
     }
     $obj = new clsPmieducarBibliotecaDia();
     $lst = $obj->lista($this->cod_biblioteca);
     if ($lst) {
         $tabela = "<TABLE>\n\t\t\t\t\t       <TR align=center>\n\t\t\t\t\t           <TD bgcolor=#A1B3BD><B>Nome</B></TD>\n\t\t\t\t\t       </TR>";
         $cont = 0;
         foreach ($lst as $valor) {
             if ($cont % 2 == 0) {
                 $color = " bgcolor=#E4E9ED ";
             } else {
                 $color = " bgcolor=#FFFFFF ";
             }
             $tabela .= "<TR>\n\t\t\t\t\t\t\t    <TD {$color} align=left>{$this->dias_da_semana[$valor["dia"]]}</TD>\n\t\t\t\t\t\t\t</TR>";
             $cont++;
         }
         $tabela .= "</TABLE>";
     }
     if ($tabela) {
         $this->addDetalhe(array("Dia da Semana", "{$tabela}"));
     }
     $obj = new clsPmieducarBibliotecaFeriados();
     $obj->setOrderby("data_feriado ASC");
     $lst = $obj->lista(null, $this->cod_biblioteca);
     if ($lst) {
         $tabela1 = "<TABLE>\n\t\t\t\t\t       <TR align=center>\n\t\t\t\t\t           <TD bgcolor=#A1B3BD><B>Nome</B></TD>\n\t\t\t\t\t           <TD bgcolor=#A1B3BD><B>Data</B></TD>\n\t\t\t\t\t       </TR>";
         $cont = 0;
         foreach ($lst as $valor) {
             if ($cont % 2 == 0) {
                 $color = " bgcolor=#E4E9ED ";
             } else {
                 $color = " bgcolor=#FFFFFF ";
             }
             $valor["data_feriado"] = dataFromPgToBr($valor["data_feriado"]);
             $tabela1 .= "<TR>\n\t\t\t\t\t\t\t    <TD {$color} align=left>{$valor["nm_feriado"]}</TD>\n\t\t\t\t\t\t\t    <TD {$color} align=left>{$valor["data_feriado"]}</TD>\n\t\t\t\t\t\t\t</TR>";
             $cont++;
         }
         $tabela1 .= "</TABLE>";
     }
     if ($tabela1) {
         $this->addDetalhe(array("Data do Feriado", "{$tabela1}"));
     }
     if ($obj_permissoes->permissao_cadastra(629, $this->pessoa_logada, 11)) {
         $this->url_editar = "educar_biblioteca_dados_cad.php?cod_biblioteca={$registro["cod_biblioteca"]}";
     }
     $this->url_cancelar = "educar_biblioteca_dados_lst.php";
     $this->largura = "100%";
 }
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = "Acervo Assunto - Detalhe";
     $this->cod_acervo_assunto = $_GET["cod_acervo_assunto"];
     $tmp_obj = new clsPmieducarAcervoAssunto($this->cod_acervo_assunto);
     $registro = $tmp_obj->detalhe();
     if (class_exists("clsPmieducarBiblioteca")) {
         $obj_ref_cod_biblioteca = new clsPmieducarBiblioteca($registro["ref_cod_biblioteca"]);
         $det_ref_cod_biblioteca = $obj_ref_cod_biblioteca->detalhe();
         $registro["ref_cod_biblioteca"] = $det_ref_cod_biblioteca["nm_biblioteca"];
         if (class_exists("clsPmieducarInstituicao")) {
             $registro["ref_cod_instituicao"] = $det_ref_cod_biblioteca["ref_cod_instituicao"];
             $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"];
         } else {
             $registro["ref_cod_instituicao"] = "Erro na geracao";
             echo "<!--\nErro\nClasse nao existente: clsPmieducarInstituicao\n-->";
         }
     }
     if (class_exists("clsPmieducarEscola")) {
         $registro["ref_cod_escola"] = $det_ref_cod_biblioteca["ref_cod_escola"];
         $obj_ref_cod_escola = new clsPmieducarEscola($registro["ref_cod_escola"]);
         $det_ref_cod_escola = $obj_ref_cod_escola->detalhe();
         $idpes = $det_ref_cod_escola["ref_idpes"];
         if ($idpes) {
             $obj_escola = new clsPessoaJuridica($idpes);
             $obj_escola_det = $obj_escola->detalhe();
             $registro["ref_cod_escola"] = $obj_escola_det["fantasia"];
         } else {
             $obj_escola = new clsPmieducarEscolaComplemento($registro["ref_cod_escola"]);
             $obj_escola_det = $obj_escola->detalhe();
             $registro["ref_cod_escola"] = $obj_escola_det["nm_escola"];
         }
     }
     $obj_permissoes = new clsPermissoes();
     $nivel_usuario = $obj_permissoes->nivel_acesso($this->pessoa_logada);
     if (!$registro) {
         header("location: educar_acervo_assunto_lst.php");
         die;
     }
     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 ($registro["ref_cod_escola"]) {
             $this->addDetalhe(array("Escola", "{$registro["ref_cod_escola"]}"));
         }
     }
     if ($registro["ref_cod_biblioteca"]) {
         $this->addDetalhe(array("Biblioteca", "{$registro["ref_cod_biblioteca"]}"));
     }
     if ($registro["nm_assunto"]) {
         $this->addDetalhe(array("Assunto", "{$registro["nm_assunto"]}"));
     }
     if ($registro["descricao"]) {
         $this->addDetalhe(array("Descri&ccedil;&atilde;o", "{$registro["descricao"]}"));
     }
     $obj_permissoes = new clsPermissoes();
     if ($obj_permissoes->permissao_cadastra(592, $this->pessoa_logada, 11)) {
         $this->url_novo = "educar_acervo_assunto_cad.php";
         $this->url_editar = "educar_acervo_assunto_cad.php?cod_acervo_assunto={$registro["cod_acervo_assunto"]}";
     }
     $this->url_cancelar = "educar_acervo_assunto_lst.php";
     $this->largura = "100%";
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_biblioteca_index.php" => "i-Educar - Biblioteca", "" => "Listagem de assuntos"));
     $this->enviaLocalizacao($localizacao->montar());
 }
 function Novo()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     $obj_permissoes = new clsPermissoes();
     $obj_permissoes->permissao_cadastra(650, $this->pessoa_logada, 7, "educar_turma_mvto_det.php");
     if ($this->passo == 1) {
         // selecionou o curso, nao cadastra nada
         return true;
     } else {
         if ($this->passo == 2) {
             // deu notas e faltas aos alunos
             $objCurso = new clsPmieducarCurso($this->ref_cod_curso);
             $detalhe_curso = $objCurso->detalhe();
             $db = new clsBanco();
             $qtd_disciplinas = $db->CampoUnico("SELECT COUNT(0) FROM pmieducar.escola_serie_disciplina WHERE ref_ref_cod_serie = '{$this->ref_cod_serie_disciplina}' AND ref_ref_cod_escola = '{$this->ref_ref_cod_escola}' AND ativo = 1");
             foreach ($this->nota as $matricula => $sequencial) {
                 // cadastra a nota
                 if ($this->is_nota_exame) {
                     $nota = str_replace(",", ".", $sequencial);
                     $objNotaAluno = new clsPmieducarNotaAluno(null, null, null, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, null, $this->pessoa_logada, null, null, null, $this->num_modulo, null, $nota);
                 } else {
                     $objNotaAluno = new clsPmieducarNotaAluno(null, $sequencial, $detalhe_curso["ref_cod_tipo_avaliacao"], $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, null, $this->pessoa_logada, null, null, null, $this->num_modulo, null);
                 }
                 $existe_nota = $objNotaAluno->lista(null, null, $detalhe_curso["ref_cod_tipo_avaliacao"], $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, null, null, null, null, null, null, 1, $this->num_modulo, null, null);
                 /**
                  * somente cadastra
                  * se nao tiver nenhuma nota
                  * cadastrada para a disciplina
                  */
                 if ($existe_nota) {
                     $cadastrado = $objNotaAluno->edita();
                 } else {
                     $cadastrado = $objNotaAluno->cadastra();
                 }
                 $existe_nota = null;
                 $ultima_nota = false;
                 if ($cadastrado) {
                     // nota cadastrada com sucesso
                     // verifica se essa eh a ultima nota desse modulo. Se for passa o aluno pro proximo modulo
                     $qtd_dispensas = (int) $db->CampoUnico("SELECT COUNT(0) AS dispensas FROM pmieducar.dispensa_disciplina WHERE ref_cod_matricula = '{$matricula}' AND ativo = 1");
                     $qtd_notas = (int) $db->CampoUnico("SELECT COUNT(0) AS notas FROM pmieducar.nota_aluno WHERE ref_cod_matricula = '{$matricula}' AND ativo = 1 AND modulo = '{$this->num_modulo}'");
                     if ($qtd_dispensas + $qtd_notas >= $qtd_disciplinas) {
                         // eh a ultima nota do modulo, vamos passar o aluno adiante
                         $ultima_nota = true;
                         $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada);
                         $det_matricula = $objMatricula->detalhe();
                         $max_modulo_nota = (int) $db->CampoUnico("SELECT max(modulo) FROM pmieducar.nota_aluno WHERE ref_cod_matricula = '{$matricula}' AND ativo = 1");
                         /**
                          * so avança o modulo
                          * caso ele seja igual ao da maior nota
                          * e que seja a ultima disciplina
                          */
                         if ($det_matricula['modulo'] <= $max_modulo_nota) {
                             $objMatricula->avancaModulo();
                         }
                     }
                     // tratamento para faltas
                     if (!$this->falta_ch_globalizada) {
                         // se a falta nao for globalizada adiciona falta
                         $this->falta[$matricula] = $this->falta[$matricula] ? $this->falta[$matricula] : 0;
                         $objFaltaAluno = new clsPmieducarFaltaAluno(null, null, $this->pessoa_logada, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, $this->falta[$matricula], null, null, null, $this->num_modulo);
                         $existe_falta = $objFaltaAluno->lista(null, null, null, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, null, null, null, null, null, 1, $this->num_modulo);
                         /**
                          * somente cadastra se
                          * jah nao tiver sido cadastrado
                          */
                         if ($existe_falta) {
                             $objFaltaAluno->edita();
                         } else {
                             $objFaltaAluno->cadastra();
                         }
                     } else {
                         // falta eh globalizada
                         if ($this->ultima_nota[$matricula]) {
                             // essa eh a ultima nota do aluno nesse modulo, vamos adicionar a falta globalizada dele
                             $this->falta[$matricula] = $this->falta[$matricula] ? $this->falta[$matricula] : 0;
                             $objFaltas = new clsPmieducarFaltas($matricula, $this->num_modulo, $this->pessoa_logada, $this->falta[$matricula]);
                             if ($objFaltas->existe()) {
                                 $objFaltas->edita();
                             } else {
                                 $objFaltas->cadastra();
                             }
                         }
                     }
                     // quando for o ultimo modulo o aluno deve ser aprovado, reprovado, marcado como excessao, ou colocado em exame
                     if ($ultima_nota && $this->num_modulo == $this->max_modulos) {
                         // esta na ultima nota do ultimo modulo
                         $objEscolaSerieDisciplina = new clsPmieducarEscolaSerieDisciplina();
                         $listaEscolaSerieDisciplina = $objEscolaSerieDisciplina->lista($this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, null, 1);
                         //$this->ref_cod_serie_disciplina $this->ref_ref_cod_serie
                         $reprovado_por_nota = false;
                         $existiu_excessao = false;
                         $obj_serie = new clsPmieducarSerie($this->ref_cod_serie_disciplina);
                         $det_serie = $obj_serie->detalhe();
                         $media_especial = dbBool($det_serie['media_especial']);
                         if (is_array($listaEscolaSerieDisciplina)) {
                             // percorre todas as disciplinas
                             $reprovou_ultima_nota = false;
                             $foi_aprovado = null;
                             foreach ($listaEscolaSerieDisciplina as $value) {
                                 $excessao = false;
                                 $nota = false;
                                 //  ve as faltas
                                 if (!$this->falta_ch_globalizada) {
                                     $objFaltaAluno = new clsPmieducarFaltaAluno();
                                     $faltas = $objFaltaAluno->total_faltas_disciplina($matricula, $value["ref_cod_disciplina"], $value["ref_ref_cod_serie"]);
                                     if ($reprovou) {
                                         // se reprovou cria uma excessao
                                         $existiu_excessao = true;
                                         $excessao = true;
                                     }
                                 }
                                 /**
                                  * se a media for especial somente
                                  * verifica se nao esta reprovado por falta
                                  */
                                 if ($media_especial) {
                                     continue;
                                 }
                                 if (!dbBool($det_serie["ultima_nota_define"])) {
                                     //  ve a media
                                     /**
                                      * @author HY 15-12-2006
                                      * @see quando for dar as notas e for calcular a ultima
                                      * ao fazer a media e essa nota estiver abaixo nao
                                      * pode ser feito o arredondamento, somente se estiver
                                      *  acima da media deixando o aluno em exame
                                      */
                                     $objNotaAluno = new clsPmieducarNotaAluno();
                                     $media = $objNotaAluno->getMediaAluno($matricula, $value["ref_cod_disciplina"], $value["ref_ref_cod_serie"], $this->max_modulos, $detalhe_curso["media"]);
                                     if ($media < $detalhe_curso["media"]) {
                                         //  se reprovar em alguma marca uma flag de reprovado por nota (nao edita o aluno porque ele ainda vai fazer exame)
                                         $reprovado_por_nota = true;
                                         $nota = true;
                                     }
                                 } else {
                                     //									echo "<pre>"; print_r($detalhe_curso); die();
                                     $objNotaAluno = new clsPmieducarNotaAluno();
                                     $ultima_nota_modulo = $objNotaAluno->getUltimaNotaModulo($matricula, $value["ref_cod_disciplina"], $value["ref_ref_cod_serie"], $this->num_modulo);
                                     if ($ultima_nota_modulo < $detalhe_curso["media"]) {
                                         $foi_aprovado = 2;
                                         $reprovou_ultima_nota = true;
                                     }
                                 }
                                 if ($excessao) {
                                     // existiu uma excessao entao cria um registro de excessao no banco
                                     $objExcessao = new clsPmieducarMatriculaExcessao(null, $matricula, $this->ref_cod_turma, 1, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $value["ref_cod_disciplina"], true, $nota);
                                     $objExcessao->cadastra();
                                 }
                             }
                             if (dbBool($det_serie["ultima_nota_define"])) {
                                 if ($reprovou_ultima_nota) {
                                     $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, 2);
                                     $objMatricula->edita();
                                 } else {
                                     $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, 1);
                                     $objMatricula->edita();
                                     $foi_aprovado = 1;
                                 }
                             }
                             /**
                              * calcula outro modo de média se for especial
                              */
                             if ($media_especial) {
                                 $objNotaAluno = new clsPmieducarNotaAluno();
                                 $media = $objNotaAluno->getMediaEspecialAluno($matricula, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $this->max_modulos, $detalhe_curso["media"]);
                                 if ($media < $detalhe_curso["media"]) {
                                     //  se reprovar marca uma flag de reprovado por nota (
                                     $reprovado_por_nota = true;
                                     $nota = true;
                                 }
                             }
                         }
                         if (!$reprovado_por_nota && !$existiu_excessao && !dbBool($det_serie["ultima_nota_define"])) {
                             // nao foi reprovado em nenhuma disciplina e nao teve nenhuma excessao
                             //marca como aprovado
                             $foi_aprovado = 1;
                             $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, 1);
                             $objMatricula->edita();
                         }
                         /**
                          * media especial e reprovado por falta.. marca aluno como reprovado se nao marca como aprovado
                          */
                         if ($media_especial) {
                             $aprovado = $reprovado_por_nota ? '2' : '1';
                             $foi_aprovado = $aprovado;
                             $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, $aprovado);
                             $objMatricula->edita();
                         }
                     } else {
                         if ($this->num_modulo - 1 == $this->max_modulos) {
                             // se estiver recebendo nota do exame temos que ver se eh a ultima, se for temos que aprovar/reprovar o aluno
                             // num_modulo == max_modulo = ultimo modulo
                             // num_modulo - 1 == max_modulo = exame
                             // esta no exame
                             $objNotaAluno = new clsPmieducarNotaAluno();
                             $qtd_exames = $objNotaAluno->getQtdMateriasExame($matricula, $this->max_modulos, $detalhe_curso["media"], true);
                             $qtd_notas_exame = $objNotaAluno->getQtdNotasExame($matricula, $this->max_modulos);
                             //die("recebendo nota de exame!!!! [{$qtd_exames}] [{$qtd_notas_exame}]");
                             if ($qtd_exames == $qtd_notas_exame) {
                                 // eh a ultima disciplina do exame
                                 $reprovado = false;
                                 $disciplinas_exame = $objNotaAluno->getDisciplinasExameDoAluno($matricula, $this->max_modulos, $detalhe_curso["media"], true);
                                 if (is_array($disciplinas_exame)) {
                                     foreach ($disciplinas_exame as $disciplina) {
                                         $media_exame = $objNotaAluno->getMediaAlunoExame($matricula, $disciplina["cod_disciplina"], $disciplina["cod_serie"], $this->max_modulos);
                                         // se reprovou marca como reprovado e sai do loop (break)
                                         //abaixo original
                                         //									$media_exame = $objNotaAluno->getMediaAluno($matricula,$disciplina["cod_disciplina"],$disciplina["cod_serie"],$this->max_modulos + 1, false, true);
                                         if ($media_exame < $detalhe_curso["media_exame"]) {
                                             // reprovou
                                             //remove possiveis excessoes
                                             $objExcessoes = new clsPmieducarMatriculaExcessao();
                                             $objExcessoes->excluirPorMatricula($matricula);
                                             // marca como reprovado
                                             $foi_aprovado = 2;
                                             $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, 2);
                                             $objMatricula->edita();
                                             $reprovado = true;
                                             break;
                                         }
                                     }
                                 }
                                 if (!$reprovado) {
                                     // se chegar aqui sem ter sido reprovado, marca como aprovado
                                     //remove possiveis excessoes
                                     $objExcessoes = new clsPmieducarMatriculaExcessao();
                                     $objExcessoes->excluirPorMatricula($matricula);
                                     // aprova
                                     $foi_aprovado = 1;
                                     $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, 1);
                                     $objMatricula->edita();
                                 } else {
                                     // se chegar aqui sem ter sido reprovado, marca como aprovado
                                     //remove possiveis excessoes
                                     $objExcessoes = new clsPmieducarMatriculaExcessao();
                                     $objExcessoes->excluirPorMatricula($matricula);
                                     // reprova
                                     $foi_aprovado = 2;
                                     $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, null, null, 2);
                                     $objMatricula->edita();
                                 }
                             }
                         }
                     }
                 }
                 /**************HISTORICO ESCOLAR****************************/
                 if ($foi_aprovado == 1 || $foi_aprovado == 2) {
                     $obj_serie = new clsPmieducarSerie($this->ref_ref_cod_serie);
                     $det_serie = $obj_serie->detalhe();
                     $carga_horaria_serie = $det_serie["carga_horaria"];
                     $obj_escola = new clsPmieducarEscola($this->ref_ref_cod_escola);
                     $det_escola = $obj_escola->detalhe();
                     $ref_idpes = $det_escola["ref_idpes"];
                     $this->ref_cod_instituicao = $det_escola["ref_cod_instituicao"];
                     $obj_ano_letivo = new clsPmieducarEscolaAnoLetivo();
                     $lst_ano_letivo = $obj_ano_letivo->lista($this->ref_ref_cod_escola, null, null, null, 1, null, null, null, null, 1);
                     if (is_array($lst_ano_letivo)) {
                         $det_ano_letivo = array_shift($lst_ano_letivo);
                         $this->ano_letivo = $det_ano_letivo["ano"];
                     }
                     // 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($this->ref_ref_cod_escola);
                             $det_escola = $obj_escola->detalhe();
                             $nm_escola = $det_escola["nm_escola"];
                             $cidade = $det_escola["municipio"];
                         }
                     }
                     $this->padrao_ano_escolar = $detalhe_curso["padrao_ano_escolar"];
                     if ($this->padrao_ano_escolar) {
                         $extra_curricular = 0;
                     } else {
                         $extra_curricular = 1;
                     }
                     $sql = "SELECT SUM(falta) FROM pmieducar.faltas WHERE ref_cod_matricula = {$matricula}";
                     $db5 = new clsBanco();
                     $total_faltas = $db5->CampoUnico($sql);
                     $obj_tipo_avaliacao = new clsPmieducarTipoAvaliacao($detalhe_curso["ref_cod_tipo_avaliacao"]);
                     $det_tipo_avaliacao = $obj_tipo_avaliacao->detalhe();
                     $this->conceitual = $det_tipo_avaliacao["conceitual"];
                     $obj_aluno = new clsPmieducarMatricula($matricula);
                     $det_aluno = $obj_aluno->detalhe();
                     $this->ref_cod_aluno = $det_aluno["ref_cod_aluno"];
                     $obj = new clsPmieducarHistoricoEscolar($this->ref_cod_aluno, null, null, $this->pessoa_logada, $det_serie['nm_serie'], $this->ano_letivo, $carga_horaria_serie, null, $nm_escola, $cidade, $uf, null, $foi_aprovado, null, null, 1, $total_faltas, $this->ref_cod_instituicao, 0, $extra_curricular, $matricula);
                     $cadastrou2 = $obj->cadastra();
                     if ($cadastrou2 && !$this->conceitual) {
                         $obj_historico = new clsPmieducarHistoricoEscolar();
                         $sequencial = $obj_historico->getMaxSequencial($this->ref_cod_aluno);
                         $historico_disciplina = array();
                         $obj_disciplina_hist = new clsPmieducarEscolaSerieDisciplina();
                         $lst_disciplina_hist = $obj_disciplina_hist->lista($this->ref_ref_cod_serie, $this->ref_ref_cod_escola, null, 1);
                         foreach ($lst_disciplina_hist as $disciplina_hist) {
                             $objFaltaAluno = new clsPmieducarFaltaAluno();
                             $faltas = $objFaltaAluno->total_faltas_disciplina($matricula, $disciplina_hist["ref_cod_disciplina"], $this->ref_ref_cod_serie);
                             $historico_disciplina[$disciplina_hist["ref_cod_disciplina"]] = $faltas;
                             $obj_nota_aluno = new clsPmieducarNotaAluno();
                             $obj_nota_aluno->setOrderby("modulo ASC");
                             $lst_nota_aluno = $obj_nota_aluno->lista(null, null, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $disciplina_hist["ref_cod_disciplina"], $matricula, null, null, null, null, null, null, 1);
                             $possui_nota_exame = false;
                             foreach ($lst_nota_aluno as $nota_aluno) {
                                 if (dbBool($det_serie["ultima_nota_define"])) {
                                     $obj_tipo_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores($nota_aluno["ref_ref_cod_tipo_avaliacao"], $nota_aluno["ref_sequencial"], null, null, null, null, 1);
                                     $det_tipo_avaliacao_valores = $obj_tipo_avaliacao_valores->detalhe();
                                     $soma_notas[$disciplina_hist["ref_cod_disciplina"]] = $det_tipo_avaliacao_valores["valor"];
                                 } else {
                                     if ($nota_aluno["nota"]) {
                                         $soma_notas[$disciplina_hist["ref_cod_disciplina"]] += $nota_aluno["nota"] * 2;
                                         $possui_nota_exame = true;
                                     } else {
                                         $obj_tipo_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores($nota_aluno["ref_ref_cod_tipo_avaliacao"], $nota_aluno["ref_sequencial"], null, null, null, null, 1);
                                         $det_tipo_avaliacao_valores = $obj_tipo_avaliacao_valores->detalhe();
                                         $soma_notas[$disciplina_hist["ref_cod_disciplina"]] += $det_tipo_avaliacao_valores["valor"];
                                     }
                                 }
                             }
                             if (!dbBool($det_serie["ultima_nota_define"])) {
                                 if ($possui_nota_exame) {
                                     $soma_notas[$disciplina_hist["ref_cod_disciplina"]] /= $this->num_modulo + 1;
                                 } else {
                                     $soma_notas[$disciplina_hist["ref_cod_disciplina"]] /= $this->max_modulos;
                                 }
                             }
                             /*************FALTAS******************/
                             //											$this->falta_ch_globalizada = $detalhe_curso["falta_ch_globalizada"];
                             $this->ref_cod_tipo_avaliacao = $detalhe_curso["ref_cod_tipo_avaliacao"];
                             if (!$detalhe_curso["falta_ch_globalizada"]) {
                                 $obj_falta_aluno = new clsPmieducarFaltaAluno();
                                 $lst_falta_aluno = $obj_falta_aluno->lista(null, null, null, $this->ref_ref_cod_serie, $this->ref_ref_cod_escola, $disciplina_hist["ref_cod_disciplina"], $matricula, null, null, null, null, null, 1);
                                 if (is_array($lst_falta_aluno)) {
                                     foreach ($lst_falta_aluno as $key => $falta_aluno) {
                                         $soma_faltas[$disciplina_hist["ref_cod_disciplina"]][$key] = $falta_aluno["faltas"];
                                     }
                                 }
                             }
                         }
                         $faltas_media_aluno = array();
                         if (is_array($soma_faltas)) {
                             foreach ($soma_faltas as $cod_disciplina => $faltas) {
                                 foreach ($array_faltas as $falta) {
                                     $faltas_media_aluno[$disciplina] += $falta;
                                 }
                             }
                         }
                         $obj_historico = new clsPmieducarHistoricoEscolar();
                         $sequencial = $obj_historico->getMaxSequencial($this->ref_cod_aluno);
                         $historico_disciplina = array();
                         foreach ($soma_notas as $key => $nota) {
                             $historico_disciplina[$key] = array($nota, $faltas_media_aluno[$key]);
                         }
                         foreach ($historico_disciplina as $cod_disciplina => $campo) {
                             $obj_disciplina_cad = new clsPmieducarDisciplina($cod_disciplina);
                             $det_disciplina_cad = $obj_disciplina_cad->detalhe();
                             $nm_disciplina = $det_disciplina_cad["nm_disciplina"];
                             $obj_avaliacao_valores = new clsPmieducarTipoAvaliacaoValores();
                             $lst_avaliacao_valores = $obj_avaliacao_valores->lista($this->ref_cod_tipo_avaliacao, null, null, null, $campo[0], $campo[0]);
                             if (is_array($lst_avaliacao_valores)) {
                                 $det_avaliacao_valores = array_shift($lst_avaliacao_valores);
                                 $nm_nota = $det_avaliacao_valores["nome"];
                                 $obj = new clsPmieducarHistoricoDisciplinas(null, $this->ref_cod_aluno, $sequencial, $nm_disciplina, $nm_nota, $campo[1]);
                                 $cadastrou3 = $obj->cadastra();
                                 if (!$cadastrou3) {
                                     die("nao cadastrou");
                                 }
                             }
                         }
                     } else {
                         if (!$cadastrou2) {
                             $this->mensagem = "Cadastro do Hist&oacute;rico Escolar n&atilde;o realizado.<br>";
                             return false;
                         }
                     }
                 }
                 /**************HISTORICO ESCOLAR****************************/
             }
             $this->ref_cod_disciplina = null;
             $this->passo = 0;
             return true;
         } else {
             if ($this->passo == 3) {
                 if ($this->pula_passo) {
                     $this->pula_passo = false;
                     if (is_array($this->nota) && is_array($this->resultado_final) && is_array($this->falta)) {
                         foreach ($this->nota as $matricula => $value) {
                             $objTpAvalValores = new clsPmieducarTipoAvaliacaoValores($this->ref_cod_tipo_avaliacao, $value, null, null, null, null, 1);
                             $valorNota = $objTpAvalValores->detalhe();
                             $objNotaAluno = new clsPmieducarNotaAluno(null, $value, $this->ref_cod_tipo_avaliacao, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, null, $this->pessoa_logada, null, null, null, $this->num_modulo, $this->ref_cod_curso, $valorNota["valor"]);
                             if (!$objNotaAluno->cadastra()) {
                                 die("não cadastrou (nota)");
                             }
                             $objMatricula = new clsPmieducarMatricula($matricula, null, null, null, $this->pessoa_logada, $this->pessoa_logada, null, $this->resultado_final[$matricula]);
                             if (!$objMatricula->edita()) {
                                 die("não cadastrou (resultado final)");
                             }
                             $objFaltaAluno = new clsPmieducarFaltaAluno();
                             $existe_falta = $objFaltaAluno->lista(null, null, null, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, null, null, null, null, null, 1, $this->modulo, $this->ref_cod_disciplina);
                             if ($existe_falta) {
                                 $objFaltaAluno = new clsPmieducarFaltaAluno($existe_falta[0]['cod_falta_aluno'], $this->pessoa_logada, $this->pessoa_logada, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, $this->falta[$matricula], null, null, null, $this->num_modulo);
                                 if (!$objFaltaAluno->edita()) {
                                     die("não editou (falta)");
                                 }
                             } else {
                                 $objFaltaAluno = new clsPmieducarFaltaAluno(null, null, $this->pessoa_logada, $this->ref_cod_serie_disciplina, $this->ref_ref_cod_escola, $this->ref_cod_disciplina, $matricula, $this->falta[$matricula], null, null, null, $this->num_modulo);
                                 if (!$objFaltaAluno->cadastra()) {
                                     die("não cadastrou (falta)");
                                 }
                             }
                         }
                     } else {
                         die("falto parâmetros");
                     }
                 }
                 //			die("nao");
                 // o professor decidiu sobre as excessoes
                 foreach ($this->excessao as $cod_excessao => $sentenca) {
                     $objExcessao = new clsPmieducarMatriculaExcessao($cod_excessao);
                     $detalhe_excessao = $objExcessao->detalhe();
                     // verifica se ela ainda existe porque se houve uma sentenca anterior para o mesmo aluno reprovando ele, todas as outras sentencas sao removidas
                     if ($detalhe_excessao) {
                         if ($sentenca == 0) {
                             // aluno reprovado
                             // reprova aluno
                             $objMatricula = new clsPmieducarMatricula($detalhe_excessao["ref_cod_matricula"], null, null, null, $this->pessoa_logada, null, null, 2);
                             $objMatricula->edita();
                             // remove excessoes
                             $objExcessao->excluirPorMatricula($detalhe_excessao["ref_cod_matricula"]);
                             $this->passo = 0;
                             return true;
                         } else {
                             if ($sentenca == 1) {
                                 // aluno podera fazer exame
                                 // remove excessao
                                 $objExcessao->excluir();
                                 $this->passo = 0;
                                 return true;
                             } else {
                                 if ($sentenca == 2) {
                                     // aluno aprovado
                                     // aprova aluno
                                     $objMatricula = new clsPmieducarMatricula($detalhe_excessao["ref_cod_matricula"], null, null, null, $this->pessoa_logada, null, null, 1);
                                     $objMatricula->edita();
                                     // remove excessao
                                     $objExcessao->excluir();
                                     $this->passo = 0;
                                     return true;
                                 }
                             }
                         }
                     }
                 }
             } else {
                 if ($this->passo == 4) {
                     //			echo "<pre>"; print_r($this->resultado_final); die();
                     // aprovou/reprovou alunos manualmente
                     $objCurso = new clsPmieducarCurso($this->ref_cod_curso);
                     foreach ($this->resultado_final as $key => $value) {
                         if ($value) {
                             // remove excessoes
                             $objExcessao = new clsPmieducarMatriculaExcessao();
                             $objExcessao->excluirPorMatricula($key);
                             // aprova/reprova
                             $objMatricula = new clsPmieducarMatricula($key, null, null, null, $this->pessoa_logada, null, null, $value);
                             $objMatricula->edita();
                         }
                     }
                     $this->passo = 0;
                     return true;
                 }
             }
         }
     }
     return false;
 }