Пример #1
0
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     // Verificação de permissão para cadastro.
     $this->obj_permissao = new clsPermissoes();
     $this->nivel_usuario = $this->obj_permissao->nivel_acesso($this->pessoa_logada);
     $this->titulo = 'Aluno - Detalhe';
     $this->cod_aluno = $_GET['cod_aluno'];
     $tmp_obj = new clsPmieducarAluno($this->cod_aluno);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header('Location: educar_aluno_lst.php');
         die;
     } else {
         foreach ($registro as $key => $value) {
             $this->{$key} = $value;
         }
     }
     if ($this->ref_idpes) {
         $obj_pessoa_fj = new clsPessoaFj($this->ref_idpes);
         $det_pessoa_fj = $obj_pessoa_fj->detalhe();
         $obj_fisica = new clsFisica($this->ref_idpes);
         $det_fisica = $obj_fisica->detalhe();
         $obj_fisica_raca = new clsCadastroFisicaRaca();
         $lst_fisica_raca = $obj_fisica_raca->lista($this->ref_idpes);
         if ($lst_fisica_raca) {
             $det_fisica_raca = array_shift($lst_fisica_raca);
             $obj_raca = new clsCadastroRaca($det_fisica_raca['ref_cod_raca']);
             $det_raca = $obj_raca->detalhe();
         }
         $objFoto = new clsCadastroFisicaFoto($this->ref_idpes);
         $detalheFoto = $objFoto->detalhe();
         if ($detalheFoto) {
             $caminhoFoto = $detalheFoto['caminho'];
         }
         $registro['nome_aluno'] = strtoupper($det_pessoa_fj['nome']);
         $registro['cpf'] = int2IdFederal($det_fisica['cpf']);
         $registro['data_nasc'] = dataToBrasil($det_fisica['data_nasc']);
         $registro['sexo'] = $det_fisica['sexo'] == 'F' ? 'Feminino' : 'Masculino';
         $obj_estado_civil = new clsEstadoCivil();
         $obj_estado_civil_lista = $obj_estado_civil->lista();
         $lista_estado_civil = array();
         if ($obj_estado_civil_lista) {
             foreach ($obj_estado_civil_lista as $estado_civil) {
                 $lista_estado_civil[$estado_civil['ideciv']] = $estado_civil['descricao'];
             }
         }
         $registro['ideciv'] = $lista_estado_civil[$det_fisica['ideciv']->ideciv];
         $registro['email'] = $det_pessoa_fj['email'];
         $registro['url'] = $det_pessoa_fj['url'];
         $registro['nacionalidade'] = $det_fisica['nacionalidade'];
         $registro['naturalidade'] = $det_fisica['idmun_nascimento']->detalhe();
         $registro['naturalidade'] = $registro['naturalidade']['nome'];
         $registro['pais_origem'] = $det_fisica['idpais_estrangeiro']->detalhe();
         $registro['pais_origem'] = $registro['pais_origem']['nome'];
         $registro['ref_idpes_responsavel'] = $det_fisica['idpes_responsavel'];
         $this->idpes_pai = $det_fisica['idpes_pai'];
         $this->idpes_mae = $det_fisica['idpes_mae'];
         $this->sus = $det_fisica['sus'];
         $this->nm_pai = $registro['nm_pai'];
         $this->nm_mae = $registro['nm_mae'];
         if ($this->idpes_pai) {
             $obj_pessoa_pai = new clsPessoaFj($this->idpes_pai);
             $det_pessoa_pai = $obj_pessoa_pai->detalhe();
             if ($det_pessoa_pai) {
                 $registro['nm_pai'] = $det_pessoa_pai['nome'];
                 // CPF
                 $obj_cpf = new clsFisica($this->idpes_pai);
                 $det_cpf = $obj_cpf->detalhe();
                 if ($det_cpf['cpf']) {
                     $this->cpf_pai = int2CPF($det_cpf['cpf']);
                 }
             }
         }
         if ($this->idpes_mae) {
             $obj_pessoa_mae = new clsPessoaFj($this->idpes_mae);
             $det_pessoa_mae = $obj_pessoa_mae->detalhe();
             if ($det_pessoa_mae) {
                 $registro['nm_mae'] = $det_pessoa_mae['nome'];
                 // CPF
                 $obj_cpf = new clsFisica($this->idpes_mae);
                 $det_cpf = $obj_cpf->detalhe();
                 if ($det_cpf['cpf']) {
                     $this->cpf_mae = int2CPF($det_cpf['cpf']);
                 }
             }
         }
         $registro['ddd_fone_1'] = $det_pessoa_fj['ddd_1'];
         $registro['fone_1'] = $det_pessoa_fj['fone_1'];
         $registro['ddd_fone_2'] = $det_pessoa_fj['ddd_2'];
         $registro['fone_2'] = $det_pessoa_fj['fone_2'];
         $registro['ddd_fax'] = $det_pessoa_fj['ddd_fax'];
         $registro['fone_fax'] = $det_pessoa_fj['fone_fax'];
         $registro['ddd_mov'] = $det_pessoa_fj['ddd_mov'];
         $registro['fone_mov'] = $det_pessoa_fj['fone_mov'];
         $obj_deficiencia_pessoa = new clsCadastroFisicaDeficiencia();
         $obj_deficiencia_pessoa_lista = $obj_deficiencia_pessoa->lista($this->ref_idpes);
         if ($obj_deficiencia_pessoa_lista) {
             $deficiencia_pessoa = array();
             foreach ($obj_deficiencia_pessoa_lista as $deficiencia) {
                 $obj_def = new clsCadastroDeficiencia($deficiencia['ref_cod_deficiencia']);
                 $det_def = $obj_def->detalhe();
                 $deficiencia_pessoa[$deficiencia['ref_cod_deficiencia']] = $det_def['nm_deficiencia'];
             }
         }
         $ObjDocumento = new clsDocumento($this->ref_idpes);
         $detalheDocumento = $ObjDocumento->detalhe();
         $registro['rg'] = $detalheDocumento['rg'];
         if ($detalheDocumento['data_exp_rg']) {
             $registro['data_exp_rg'] = date('d/m/Y', strtotime(substr($detalheDocumento['data_exp_rg'], 0, 19)));
         }
         $registro['sigla_uf_exp_rg'] = $detalheDocumento['sigla_uf_exp_rg'];
         $registro['tipo_cert_civil'] = $detalheDocumento['tipo_cert_civil'];
         $registro['num_termo'] = $detalheDocumento['num_termo'];
         $registro['num_livro'] = $detalheDocumento['num_livro'];
         $registro['num_folha'] = $detalheDocumento['num_folha'];
         if ($detalheDocumento['data_emissao_cert_civil']) {
             $registro['data_emissao_cert_civil'] = date('d/m/Y', strtotime(substr($detalheDocumento['data_emissao_cert_civil'], 0, 19)));
         }
         $registro['sigla_uf_cert_civil'] = $detalheDocumento['sigla_uf_cert_civil'];
         $registro['cartorio_cert_civil'] = $detalheDocumento['cartorio_cert_civil'];
         $registro['num_cart_trabalho'] = $detalheDocumento['num_cart_trabalho'];
         $registro['serie_cart_trabalho'] = $detalheDocumento['serie_cart_trabalho'];
         if ($detalheDocumento['data_emissao_cart_trabalho']) {
             $registro['data_emissao_cart_trabalho'] = date('d/m/Y', strtotime(substr($detalheDocumento['data_emissao_cart_trabalho'], 0, 19)));
         }
         $registro['sigla_uf_cart_trabalho'] = $detalheDocumento['sigla_uf_cart_trabalho'];
         $registro['num_tit_eleitor'] = $detalheDocumento['num_titulo_eleitor'];
         $registro['zona_tit_eleitor'] = $detalheDocumento['zona_titulo_eleitor'];
         $registro['secao_tit_eleitor'] = $detalheDocumento['secao_titulo_eleitor'];
         $registro['idorg_exp_rg'] = $detalheDocumento['ref_idorg_rg'];
         $obj_endereco = new clsPessoaEndereco($this->ref_idpes);
         if ($obj_endereco_det = $obj_endereco->detalhe()) {
             $registro['id_cep'] = $obj_endereco_det['cep']->cep;
             $registro['id_bairro'] = $obj_endereco_det['idbai']->idbai;
             $registro['id_logradouro'] = $obj_endereco_det['idlog']->idlog;
             $registro['numero'] = $obj_endereco_det['numero'];
             $registro['letra'] = $obj_endereco_det['letra'];
             $registro['complemento'] = $obj_endereco_det['complemento'];
             $registro['andar'] = $obj_endereco_det['andar'];
             $registro['apartamento'] = $obj_endereco_det['apartamento'];
             $registro['bloco'] = $obj_endereco_det['bloco'];
             $registro['nm_logradouro'] = $obj_endereco_det['logradouro'];
             $registro['cep_'] = int2CEP($registro['id_cep']);
             $obj_bairro = new clsBairro($registro['id_bairro']);
             $obj_bairro_det = $obj_bairro->detalhe();
             if ($obj_bairro_det) {
                 $registro['nm_bairro'] = $obj_bairro_det['nome'];
             }
             $obj_log = new clsLogradouro($registro['id_logradouro']);
             $obj_log_det = $obj_log->detalhe();
             if ($obj_log_det) {
                 $registro['nm_logradouro'] = $obj_log_det['nome'];
                 $registro['idtlog'] = $obj_log_det['idtlog']->detalhe();
                 $registro['idtlog'] = $registro['idtlog']['descricao'];
                 $obj_mun = new clsMunicipio($obj_log_det['idmun']);
                 $det_mun = $obj_mun->detalhe();
                 if ($det_mun) {
                     $registro['cidade'] = ucfirst(strtolower($det_mun['nome']));
                 }
             }
             $obj_bairro = new clsBairro($registro["id_bairro"]);
             $obj_bairro_det = $obj_bairro->detalhe();
             if ($obj_bairro_det) {
                 $registro['nm_bairro'] = $obj_bairro_det['nome'];
             }
         } else {
             $obj_endereco = new clsEnderecoExterno($this->ref_idpes);
             if ($obj_endereco_det = $obj_endereco->detalhe()) {
                 $registro['id_cep'] = $obj_endereco_det['cep'];
                 $registro['cidade'] = $obj_endereco_det['cidade'];
                 $registro['nm_bairro'] = $obj_endereco_det['bairro'];
                 $registro['nm_logradouro'] = $obj_endereco_det['logradouro'];
                 $registro['numero'] = $obj_endereco_det['numero'];
                 $registro['letra'] = $obj_endereco_det['letra'];
                 $registro['complemento'] = $obj_endereco_det['complemento'];
                 $registro['andar'] = $obj_endereco_det['andar'];
                 $registro['apartamento'] = $obj_endereco_det['apartamento'];
                 $registro['bloco'] = $obj_endereco_det['bloco'];
                 $registro['idtlog'] = $obj_endereco_det['idtlog']->detalhe();
                 $registro['idtlog'] = $registro['idtlog']['descricao'];
                 $det_uf = $obj_endereco_det['sigla_uf']->detalhe();
                 $registro['ref_sigla_uf'] = $det_uf['nome'];
                 $registro['cep_'] = int2CEP($registro['id_cep']);
             }
         }
     }
     // Adiciona a informação de zona de localização junto ao bairro do
     // endereço.
     $zona = App_Model_ZonaLocalizacao::getInstance();
     $registro['nm_bairro'] = sprintf('%s (Zona %s)', $registro['nm_bairro'], $zona->getValue($obj_endereco_det['zona_localizacao']));
     if ($registro['cod_aluno']) {
         $this->addDetalhe(array('Código Aluno', $registro['cod_aluno']));
     }
     // código inep
     $alunoMapper = new Educacenso_Model_AlunoDataMapper();
     $alunoInep = NULL;
     try {
         $alunoInep = $alunoMapper->find(array('aluno' => $this->cod_aluno));
         $this->addDetalhe(array('Código inep', $alunoInep->alunoInep));
     } catch (Exception $e) {
     }
     // código estado
     $this->addDetalhe(array('Código estado', $registro['aluno_estado_id']));
     if ($registro['caminho_foto']) {
         $this->addDetalhe(array('Foto', sprintf('<img src="arquivos/educar/aluno/small/%s" border="0">', $registro['caminho_foto'])));
     }
     if ($registro['nome_aluno']) {
         if ($caminhoFoto != null and $caminhoFoto != '') {
             $this->addDetalhe(array('Nome Aluno', $registro['nome_aluno'] . '<p><img height="117" src="' . $caminhoFoto . '"/></p>'));
         } else {
             $this->addDetalhe(array('Nome Aluno', $registro['nome_aluno']));
         }
     }
     if (idFederal2int($registro['cpf'])) {
         $this->addDetalhe(array('CPF', $registro['cpf']));
     }
     if ($registro['data_nasc']) {
         $this->addDetalhe(array('Data de Nascimento', $registro['data_nasc']));
     }
     /**
      * Analfabeto.
      */
     $this->addDetalhe(array('Analfabeto', $registro['analfabeto'] == 0 ? 'Não' : 'Sim'));
     if ($registro['sexo']) {
         $this->addDetalhe(array('Sexo', $registro['sexo']));
     }
     if ($registro['ideciv']) {
         $this->addDetalhe(array('Estado Civil', $registro['ideciv']));
     }
     if ($registro['id_cep']) {
         $this->addDetalhe(array('CEP', $registro['cep_']));
     }
     if ($registro['ref_sigla_uf']) {
         $this->addDetalhe(array('UF', $registro['ref_sigla_uf']));
     }
     if ($registro['cidade']) {
         $this->addDetalhe(array('Cidade', $registro['cidade']));
     }
     if ($registro['nm_bairro']) {
         $this->addDetalhe(array('Bairro', $registro['nm_bairro']));
     }
     if ($registro['nm_logradouro']) {
         $logradouro = '';
         if ($registro['idtlog']) {
             $logradouro .= $registro['idtlog'] . ' ';
         }
         $logradouro .= $registro['nm_logradouro'];
         $this->addDetalhe(array('Logradouro', $logradouro));
     }
     if ($registro['numero']) {
         $this->addDetalhe(array('Número', $registro['numero']));
     }
     if ($registro['letra']) {
         $this->addDetalhe(array('Letra', $registro['letra']));
     }
     if ($registro['complemento']) {
         $this->addDetalhe(array('Complemento', $registro['complemento']));
     }
     if ($registro['bloco']) {
         $this->addDetalhe(array('Bloco', $registro['bloco']));
     }
     if ($registro['andar']) {
         $this->addDetalhe(array('Andar', $registro['andar']));
     }
     if ($registro['apartamento']) {
         $this->addDetalhe(array('Apartamento', $registro['apartamento']));
     }
     if ($registro['naturalidade']) {
         $this->addDetalhe(array('Naturalidade', $registro['naturalidade']));
     }
     if ($registro['nacionalidade']) {
         $lista_nacionalidade = array('NULL' => 'Selecione', 1 => 'Brasileiro', 2 => 'Naturalizado Brasileiro', 3 => 'Estrangeiro');
         $registro['nacionalidade'] = $lista_nacionalidade[$registro['nacionalidade']];
         $this->addDetalhe(array('Nacionalidade', $registro['nacionalidade']));
     }
     if ($registro['pais_origem']) {
         $this->addDetalhe(array('País de Origem', $registro['pais_origem']));
     }
     $responsavel = $tmp_obj->getResponsavelAluno();
     if ($responsavel) {
         $this->addDetalhe(array('Responsável Aluno', $responsavel['nome_responsavel']));
     }
     if ($registro['ref_idpes_responsavel']) {
         $obj_pessoa_resp = new clsPessoaFj($registro['ref_idpes_responsavel']);
         $det_pessoa_resp = $obj_pessoa_resp->detalhe();
         if ($det_pessoa_resp) {
             $registro['ref_idpes_responsavel'] = $det_pessoa_resp['nome'];
         }
         $this->addDetalhe(array('Responsável', $registro['ref_idpes_responsavel']));
     }
     if ($registro['nm_pai']) {
         $this->addDetalhe(array('Pai', $registro['nm_pai']));
     }
     if ($registro["nm_mae"]) {
         $this->addDetalhe(array('Mãe', $registro['nm_mae']));
     }
     if ($registro['fone_1']) {
         if ($registro['ddd_fone_1']) {
             $registro['ddd_fone_1'] = sprintf('(%s)&nbsp;', $registro['ddd_fone_1']);
         }
         $this->addDetalhe(array('Telefone 1', $registro['ddd_fone_1'] . $registro['fone_1']));
     }
     if ($registro['fone_2']) {
         if ($registro['ddd_fone_2']) {
             $registro['ddd_fone_2'] = sprintf('(%s)&nbsp;', $registro['ddd_fone_2']);
         }
         $this->addDetalhe(array('Telefone 2', $registro['ddd_fone_2'] . $registro['fone_2']));
     }
     if ($registro['fone_mov']) {
         if ($registro['ddd_mov']) {
             $registro['ddd_mov'] = sprintf('(%s)&nbsp;', $registro['ddd_mov']);
         }
         $this->addDetalhe(array('Celular', $registro['ddd_mov'] . $registro['fone_mov']));
     }
     if ($registro['fone_fax']) {
         if ($registro['ddd_fax']) {
             $registro['ddd_fax'] = sprintf('(%s)&nbsp;', $registro['ddd_fax']);
         }
         $this->addDetalhe(array('Fax', $registro['ddd_fax'] . $registro['fone_fax']));
     }
     if ($registro['email']) {
         $this->addDetalhe(array('E-mail', $registro['email']));
     }
     if ($registro['url']) {
         $this->addDetalhe(array('Página Pessoal', $registro['url']));
     }
     if ($registro['ref_cod_aluno_beneficio']) {
         $obj_beneficio = new clsPmieducarAlunoBeneficio($registro['ref_cod_aluno_beneficio']);
         $obj_beneficio_det = $obj_beneficio->detalhe();
         $this->addDetalhe(array('Benefício', $obj_beneficio_det['nm_beneficio']));
     }
     if ($registro['ref_cod_religiao']) {
         $obj_religiao = new clsPmieducarReligiao($registro['ref_cod_religiao']);
         $obj_religiao_det = $obj_religiao->detalhe();
         $this->addDetalhe(array('Religião', $obj_religiao_det['nm_religiao']));
     }
     if ($det_raca['nm_raca']) {
         $this->addDetalhe(array('Raça', $det_raca['nm_raca']));
     }
     if ($deficiencia_pessoa) {
         $tabela = '<table border="0" width="300" cellpadding="3"><tr bgcolor="#A1B3BD" align="center"><td>Deficiências</td></tr>';
         $cor = '#D1DADF';
         foreach ($deficiencia_pessoa as $indice => $valor) {
             $cor = $cor == '#D1DADF' ? '#E4E9ED' : '#D1DADF';
             $tabela .= sprintf('<tr bgcolor="%s" align="center"><td>%s</td></tr>', $cor, $valor);
         }
         $tabela .= '</table>';
         $this->addDetalhe(array('Deficiências', $tabela));
     }
     if ($registro['rg']) {
         $this->addDetalhe(array('RG', $registro['rg']));
     }
     if ($registro['data_exp_rg']) {
         $this->addDetalhe(array('Data de Expedição RG', $registro['data_exp_rg']));
     }
     if ($registro['idorg_exp_rg']) {
         $this->addDetalhe(array('Órgão Expedição RG', $registro['idorg_exp_rg']));
     }
     if ($registro['sigla_uf_exp_rg']) {
         $this->addDetalhe(array('Estado Expedidor', $registro['sigla_uf_exp_rg']));
     }
     /**
      * @todo CoreExt_Enum?
      */
     if ($registro['tipo_cert_civil']) {
         $lista_tipo_cert_civil = array();
         $lista_tipo_cert_civil["0"] = 'Selecione';
         $lista_tipo_cert_civil[91] = 'Nascimento';
         $lista_tipo_cert_civil[92] = 'Casamento';
         $this->addDetalhe(array('Tipo Certificado Civil', $registro['tipo_cert_civil']));
     }
     if ($registro['num_termo']) {
         $this->addDetalhe(array('Termo', $registro['num_termo']));
     }
     if ($registro['num_livro']) {
         $this->addDetalhe(array('Livro', $registro['num_livro']));
     }
     if ($registro['num_folha']) {
         $this->addDetalhe(array('Folha', $registro['num_folha']));
     }
     if ($registro['data_emissao_cert_civil']) {
         $this->addDetalhe(array('Emissão Certidão Civil', $registro['data_emissao_cert_civil']));
     }
     if ($registro['sigla_uf_cert_civil']) {
         $this->addDetalhe(array('Sigla Certidão Civil', $registro['sigla_uf_cert_civil']));
     }
     if ($registro['cartorio_cert_civil']) {
         $this->addDetalhe(array('Cartório', $registro['cartorio_cert_civil']));
     }
     if ($registro['num_tit_eleitor']) {
         $this->addDetalhe(array('Título de Eleitor', $registro['num_tit_eleitor']));
     }
     if ($registro['zona_tit_eleitor']) {
         $this->addDetalhe(array('Zona', $registro['zona_tit_eleitor']));
     }
     if ($registro['secao_tit_eleitor']) {
         $this->addDetalhe(array('Seção', $registro['secao_tit_eleitor']));
     }
     // Transporte escolar.
     $transporteMapper = new Transporte_Model_AlunoDataMapper();
     $transporteAluno = NULL;
     try {
         $transporteAluno = $transporteMapper->find(array('aluno' => $this->cod_aluno));
     } catch (Exception $e) {
     }
     $this->addDetalhe(array('Transporte escolar', isset($transporteAluno) && $transporteAluno->responsavel != 'Não utiliza' ? 'Sim' : 'Não'));
     if ($transporteAluno && $transporteAluno->responsavel != 'Não utiliza') {
         $this->addDetalhe(array('Responsável transporte', $transporteAluno->responsavel));
     }
     if ($this->obj_permissao->permissao_cadastra(578, $this->pessoa_logada, 7)) {
         $this->url_novo = '/module/Cadastro/aluno';
         $this->url_editar = '/module/Cadastro/aluno?id=' . $registro['cod_aluno'];
         $this->array_botao = array('Nova matrícula', 'Atualizar Histórico');
         $this->array_botao_url_script = array(sprintf('go("educar_matricula_cad.php?ref_cod_aluno=%d");', $registro['cod_aluno']), sprintf('go("educar_historico_escolar_lst.php?ref_cod_aluno=%d");', $registro['cod_aluno']));
     }
     $objFichaMedica = new clsModulesFichaMedicaAluno($this->cod_aluno);
     $reg = $objFichaMedica->detalhe();
     if ($reg) {
         $this->addDetalhe(array('<span id="fmedica"></span>Altura/metro', $reg['altura']));
         if (trim($reg['peso']) != '') {
             $this->addDetalhe(array('Peso/kg', $reg['peso']));
         }
         if (trim($reg['grupo_sanguineo']) != '') {
             $this->addDetalhe(array('Grupo sanguíneo', $reg['grupo_sanguineo']));
         }
         if (trim($reg['fator_rh']) != '') {
             $this->addDetalhe(array('Fator RH', $reg['fator_rh']));
         }
         if (trim($this->sus) != '') {
             $this->addDetalhe(array('Número do cartão do SUS', $this->sus));
         }
         $this->addDetalhe(array('Possui alergia a algum medicamento', $reg['alergia_medicamento'] == 'S' ? 'Sim' : 'Não'));
         if (trim($reg['desc_alergia_medicamento']) != '') {
             $this->addDetalhe(array('Quais', $reg['desc_alergia_medicamento']));
         }
         $this->addDetalhe(array('Possui alergia a algum alimento', $reg['alergia_alimento'] == 'S' ? 'Sim' : 'Não'));
         if (trim($reg['desc_alergia_alimento']) != '') {
             $this->addDetalhe(array('Quais', $reg['desc_alergia_alimento']));
         }
         $this->addDetalhe(array('Possui alguma doenca congênita', $reg['doenca_congenita'] == 'S' ? 'Sim' : 'Não'));
         if (trim($reg['desc_doenca_congenita']) != '') {
             $this->addDetalhe(array('Quais', $reg['desc_doenca_congenita']));
         }
         $this->addDetalhe(array('É fumante', $reg['fumante'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('Já contraiu caxumba', $reg['doenca_caxumba'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('Já contraiu sarampo', $reg['doenca_sarampo'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('Já contraiu rubeola', $reg['doenca_rubeola'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('Já contraiu catapora', $reg['doenca_catapora'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('Já contraiu escarlatina', $reg['doenca_escarlatina'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('Já contraiu coqueluche', $reg['doenca_coqueluche'] == 'S' ? 'Sim' : 'Não'));
         if (trim($reg['doenca_outras']) != '') {
             $this->addDetalhe(array('Outras doenças que o aluno já contraiu', $reg['doenca_outras']));
         }
         $this->addDetalhe(array('Epilético', $reg['epiletico'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('Está em tratamento', $reg['epiletico_tratamento'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('Hemofílico', $reg['hemofilico'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('Hipertenso', $reg['hipertenso'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('Asmático', $reg['asmatico'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('Diabético', $reg['diabetico'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('Depende de insulina', $reg['insulina'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('Faz tratamento médico', $reg['tratamento_medico'] == 'S' ? 'Sim' : 'Não'));
         if (trim($reg['desc_tratamento_medico']) != '') {
             $this->addDetalhe(array('Qual', $reg['desc_tratamento_medico']));
         }
         $this->addDetalhe(array('Ingere medicação específica', $reg['medicacao_especifica'] == 'S' ? 'Sim' : 'Não'));
         if (trim($reg['desc_medicacao_especifica']) != '') {
             $this->addDetalhe(array('Qual', $reg['desc_medicacao_especifica']));
         }
         $this->addDetalhe(array('Acompanhamento médico ou psicológico', $reg['acomp_medico_psicologico'] == 'S' ? 'Sim' : 'Não'));
         if (trim($reg['desc_acomp_medico_psicologico']) != '') {
             $this->addDetalhe(array('Motivo', $reg['desc_acomp_medico_psicologico']));
         }
         $this->addDetalhe(array('Restrição para atividades físicas', $reg['restricao_atividade_fisica'] == 'S' ? 'Sim' : 'Não'));
         if (trim($reg['desc_restricao_atividade_fisica']) != '') {
             $this->addDetalhe(array('Qual', $reg['desc_restricao_atividade_fisica']));
         }
         $this->addDetalhe(array('Teve alguma fratura ou trauma', $reg['fratura_trauma'] == 'S' ? 'Sim' : 'Não'));
         if (trim($reg['desc_fratura_trauma']) != '') {
             $this->addDetalhe(array('Qual', $reg['desc_fratura_trauma']));
         }
         $this->addDetalhe(array('Tem plano de saúde', $reg['plano_saude'] == 'S' ? 'Sim' : 'Não'));
         if (trim($reg['desc_plano_saude']) != '') {
             $this->addDetalhe(array('Qual', $reg['desc_plano_saude']));
         }
         $this->addDetalhe(array('<span id="tr_tit_dados_hospital">Em caso de emergência, levar para hospital ou clínica</span>'));
         $this->addDetalhe(array('Nome', $reg['hospital_clinica']));
         $this->addDetalhe(array('Endereço', $reg['hospital_clinica_endereco']));
         $this->addDetalhe(array('Telefone', $reg['hospital_clinica_telefone']));
         $this->addDetalhe(array('<span id="tr_tit_dados_responsavel">Em caso de emergência, se não for possível contatar os responsáveis, comunicar</span>'));
         $this->addDetalhe(array('Nome', $reg['responsavel']));
         $this->addDetalhe(array('Parentesco', $reg['responsavel_parentesco']));
         $this->addDetalhe(array('Telefone', $reg['responsavel_parentesco_telefone']));
         $this->addDetalhe(array('Celular', $reg['responsavel_parentesco_celular']));
     }
     $objUniforme = new clsModulesUniformeAluno($this->cod_aluno);
     $reg = $objUniforme->detalhe();
     if ($reg) {
         $this->addDetalhe(array('<span id="funiforme"></span>Recebeu uniforme escolar', $reg['recebeu_uniforme'] == 'S' ? 'Sim' : 'Não'));
         $this->addDetalhe(array('<span class="tit_uniforme">Camiseta</span>'));
         $this->addDetalhe(array('Quantidade', $reg['quantidade_camiseta']));
         $this->addDetalhe(array('Tamanho', $reg['tamanho_camiseta']));
         $this->addDetalhe(array('<span class="tit_uniforme">Blusa/Jaqueta</span>'));
         $this->addDetalhe(array('Quantidade', $reg['quantidade_blusa_jaqueta']));
         $this->addDetalhe(array('Tamanho', $reg['tamanho_blusa_jaqueta']));
         $this->addDetalhe(array('<span class="tit_uniforme">Bermuda</span>'));
         $this->addDetalhe(array('Quantidade', $reg['quantidade_bermuda']));
         $this->addDetalhe(array('Tamanho', $reg['tamanho_bermuda']));
         $this->addDetalhe(array('<span class="tit_uniforme">Calça</span>'));
         $this->addDetalhe(array('Quantidade', $reg['quantidade_calca']));
         $this->addDetalhe(array('Tamanho', $reg['tamanho_calca']));
         $this->addDetalhe(array('<span class="tit_uniforme">Saia</span>'));
         $this->addDetalhe(array('Quantidade', $reg['quantidade_saia']));
         $this->addDetalhe(array('Tamanho', $reg['tamanho_saia']));
         $this->addDetalhe(array('<span class="tit_uniforme">Calçado</span>'));
         $this->addDetalhe(array('Quantidade', $reg['quantidade_calcado']));
         $this->addDetalhe(array('Tamanho', $reg['tamanho_calcado']));
         $this->addDetalhe(array('<span class="tit_uniforme">Meia</span>'));
         $this->addDetalhe(array('Quantidade', $reg['quantidade_meia']));
         $this->addDetalhe(array('Tamanho', $reg['tamanho_meia']));
     }
     $objMoradia = new clsModulesMoradiaAluno($this->cod_aluno);
     $reg = $objMoradia->detalhe();
     if ($reg) {
         $moradia = '';
         switch ($reg['moradia']) {
             case 'A':
                 $moradia = 'Apartamento';
                 break;
             case 'C':
                 $moradia = 'Casa';
                 switch ($reg['material']) {
                     case 'A':
                         $moradia .= ' de alvenaria';
                         break;
                     case 'M':
                         $moradia .= ' de madeira';
                         break;
                     case 'I':
                         $moradia .= ' mista';
                         break;
                 }
                 break;
             case 'O':
                 $moradia = 'Outra: ' . $reg['casa_outra'];
                 break;
             default:
                 $moradia = 'Não informado';
         }
         $this->addDetalhe(array('<span id="fmoradia"></span>Moradia', $moradia));
         $situacao;
         switch ($reg['moradia_situacao']) {
             case 1:
                 $situacao = 'Alugado';
                 break;
             case 2:
                 $situacao = 'Próprio';
                 break;
             case 3:
                 $situacao = 'Cedido';
                 break;
             case 4:
                 $situacao = 'Financiado';
                 break;
             case 5:
                 $situacao = 'Outra';
                 break;
         }
         $this->addDetalhe(array('Situação', $situacao));
         $this->addDetalhe(array('Quantidade de quartos', $reg['quartos']));
         $this->addDetalhe(array('Quantidade de salas', $reg['sala']));
         $this->addDetalhe(array('Quantidade de copas', $reg['copa']));
         $this->addDetalhe(array('Quantidade de banheiros', $reg['banheiro']));
         $this->addDetalhe(array('Quantidade de garagens', $reg['garagem']));
         $this->addDetalhe(array('Possui empregada doméstica', $reg['empregada_domestica']));
         $this->addDetalhe(array('Possui automóvel', $reg['automovel']));
         $this->addDetalhe(array('Possui motocicleta', $reg['motocicleta']));
         $this->addDetalhe(array('Possui computador', $reg['computador']));
         $this->addDetalhe(array('Possui geladeira', $reg['geladeira']));
         $this->addDetalhe(array('Possui fogão', $reg['fogao']));
         $this->addDetalhe(array('Possui máquina de lavar', $reg['maquina_lavar']));
         $this->addDetalhe(array('Possui microondas', $reg['microondas']));
         $this->addDetalhe(array('Possui vídeo/dvd', $reg['video_dvd']));
         $this->addDetalhe(array('Possui televisão', $reg['televisao']));
         $this->addDetalhe(array('Possui celular', $reg['celular']));
         $this->addDetalhe(array('Possui telefone', $reg['telefone']));
         $this->addDetalhe(array('Quantidade de pessoas', $reg['quant_pessoas']));
         $this->addDetalhe(array('Renda familiar', 'R$ ' . $reg['renda']));
         $this->addDetalhe(array('Possui água encanada', $reg['agua_encanada']));
         $this->addDetalhe(array('Possui poço', $reg['poco']));
         $this->addDetalhe(array('Possui energia elétrica', $reg['energia']));
         $this->addDetalhe(array('Possui tratamento de esgoto', $reg['esgoto']));
         $this->addDetalhe(array('Possui fossa', $reg['fossa']));
         $this->addDetalhe(array('Possui coleta de lixo', $reg['lixo']));
     }
     $this->url_cancelar = 'educar_aluno_lst.php';
     $this->largura = '100%';
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_index.php" => "i-Educar - Escola", "" => "Detalhe do aluno"));
     $this->enviaLocalizacao($localizacao->montar());
     $this->addDetalhe("<input type='hidden' id='escola_id' name='aluno_id' value='{$registro['ref_cod_escola']}' />");
     $this->addDetalhe("<input type='hidden' id='aluno_id' name='aluno_id' value='{$registro['cod_aluno']}' />");
     // js
     Portabilis_View_Helper_Application::loadJQueryLib($this);
     $scripts = array('/modules/Portabilis/Assets/Javascripts/Utils.js', '/modules/Portabilis/Assets/Javascripts/ClientApi.js', '/modules/Cadastro/Assets/Javascripts/AlunoShow.js');
     Portabilis_View_Helper_Application::loadJavascript($this, $scripts);
     $styles = array('/modules/Cadastro/Assets/Stylesheets/Aluno.css');
     Portabilis_View_Helper_Application::loadStylesheet($this, $styles);
 }
    function renderHTML()
    {
        if ($_POST) {
            foreach ($_POST as $key => $value) {
                $this->{$key} = $value;
            }
        }
        if ($this->ref_ref_cod_serie) {
            $this->ref_cod_serie = $this->ref_ref_cod_serie;
        }
        $fonte = 'arial';
        $corTexto = '#000000';
        if ($this->ref_cod_escola) {
            $obj_escola = new clsPmieducarEscola($this->ref_cod_escola);
            $det_escola = $obj_escola->detalhe();
            $this->nm_escola = $det_escola['nome'];
            $obj_instituicao = new clsPmieducarInstituicao($det_escola['ref_cod_instituicao']);
            $det_instituicao = $obj_instituicao->detalhe();
            $this->nm_instituicao = $det_instituicao['nm_instituicao'];
        }
        if (is_numeric($this->ref_cod_serie)) {
            $obj_serie = new clsPmieducarSerie($this->ref_cod_serie);
            $det_serie = $obj_serie->detalhe();
            $this->nm_serie_ = $det_serie["nm_serie"];
        }
        if (is_numeric($this->ref_cod_turma)) {
            $obj_turma = new clsPmieducarTurma($this->ref_cod_turma);
            $det_turma = $obj_turma->detalhe();
            $this->nm_turma_ = $det_turma["nm_turma"];
        }
        $this->pdf = new clsPDF("Registro de Matrículas - {$this->ano}", "Registro de Matrículas", "A4", "", false, false);
        $this->pdf->largura = 842.0;
        $this->pdf->altura = 595.0;
        $this->page_y = 125;
        if ($this->is_padrao || $this->ano == 2007) {
            $this->semestre = null;
        }
        $obj_matricula = new clsPmieducarMatricula();
        $obj_matricula->setOrderby("ref_ref_cod_escola, ref_ref_cod_serie, ref_cod_curso");
        $lista_matricula = $obj_matricula->lista(null, null, $this->ref_cod_escola, $this->ref_cod_serie, null, null, null, array(1, 2, 3), null, null, null, null, 1, $this->ano, $this->ref_cod_curso, $this->ref_cod_instituicao, null, null, null, null, null, null, null, null, null, null, null, null, null, null, $this->semestre, $this->ref_cod_turma);
        if ($lista_matricula) {
            $obj_series = new clsPmieducarSerie();
            $lst_series = $obj_series->lista(null, null, null, $this->ref_cod_curso, null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao, null, null, null, $this->ref_cod_escola);
            if ($lst_series) {
                $lst_series2 = array();
                foreach ($lst_series as $serie) {
                    $lst_series2[$serie['cod_serie']] = $serie;
                }
                $lst_series = $lst_series2;
                unset($lst_series2);
            }
            $obj_turmas = new clsPmieducarTurma();
            $lst_turmas = $obj_turmas->lista(null, null, null, $this->ref_cod_serie, $this->ref_cod_escola, null, null, null, null, null, null, null, null, null, 1, null, null, null, null, null, null, null, null, null, $this->ref_cod_curso, $this->ref_cod_instituicao);
            if ($lst_turmas) {
                $lst_turmas2 = array();
                foreach ($lst_turmas as $turma) {
                    $lst_turmas2[$turma['cod_turma']] = $turma;
                }
                $lst_turmas = $lst_turmas2;
                unset($lst_turmas2);
            }
            $obj_cursos = new clsPmieducarCurso();
            $lst_cursos = $obj_cursos->lista(null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, 1, null, $this->ref_cod_instituicao);
            if ($lst_cursos) {
                $lst_curso2 = array();
                foreach ($lst_cursos as $curso) {
                    $lst_cursos2[$curso['cod_curso']] = $curso;
                }
                $lst_cursos = $lst_cursos2;
                unset($lst_curso2);
            }
            $altura_caixa = 45;
            //$curso = $lst_cursos[$lista_matricula[0]['cod_curso']];
            //$this->nm_curso = $curso['nm_curso'];
            $ultimo_cod = $lista_matricula[0]['cod_curso'];
            $this->pdf->OpenPage();
            $this->addCabecalho();
            $this->addTitulo();
            foreach ($lista_matricula as $matricula) {
                $this->nm_curso = $lst_cursos[$matricula['ref_cod_curso']]['nm_curso'];
                if ($this->page_y > 530 || $ultimo_cod != $matricula['ref_cod_curso']) {
                    $this->pdf->ClosePage();
                    $this->pdf->OpenPage();
                    $this->page_y = 125;
                    $this->addCabecalho();
                    $this->addTitulo();
                }
                $obj_pessoa = new clsPessoaFisica($matricula['ref_idpes']);
                $det_pessoa = $obj_pessoa->detalhe();
                $nacionalidade = array('NULL' => "Selecione", '1' => "Brasileiro", '2' => "Naturalizado Brasileiro", '3' => "Estrangeiro");
                $nacionalidade = $nacionalidade[$det_pessoa['nacionalidade']];
                $det_municipio = $det_pessoa['idmun_nascimento']->detalhe();
                $data_nasc = explode("-", $det_pessoa['data_nasc']);
                $idade = calculoIdade($data_nasc[2], $data_nasc[1], $data_nasc[0]);
                $data_nasc = implode("/", array($data_nasc[2], $data_nasc[1], $data_nasc[0]));
                $y_escrita = $this->page_y + $altura_caixa / 4;
                $obj_aluno = new clsPmieducarAluno($matricula['ref_cod_aluno']);
                $det_aluno = $obj_aluno->detalhe();
                $obj_fisica = new clsFisica($det_aluno["ref_idpes"]);
                $det_fisica = $obj_fisica->detalhe();
                if (!$det_aluno['nm_mae']) {
                    if ($det_fisica["idpes_mae"]) {
                        $obj_ref_idpes = new clsPessoa_($det_fisica["idpes_mae"]);
                        $det_ref_idpes = $obj_ref_idpes->detalhe();
                        $det_aluno['nm_mae'] = $det_ref_idpes['nome'];
                    } elseif ($det_fisica['nome_mae']) {
                        $det_aluno['nm_mae'] = $det_fisica['nome_mae'];
                    }
                }
                if (!$det_aluno['nm_pai']) {
                    if ($det_fisica["idpes_pai"]) {
                        $obj_ref_idpes = new clsPessoa_($det_fisica["idpes_pai"]);
                        $det_ref_idpes = $obj_ref_idpes->detalhe();
                        $det_aluno['nm_pai'] = $det_ref_idpes["nome"];
                    } elseif ($det_fisica['nome_pai']) {
                        $det_aluno['nome_pai'] = $det_fisica['nome_pai'];
                    }
                }
                if ($det_aluno['tipo_responsavel'] == 'r' || $det_aluno['tipo_responsavel'] == '') {
                    if ($det_fisica["idpes_responsavel"]) {
                        $obj_ref_idpes = new clsPessoa_($det_fisica["idpes_responsavel"]);
                        $det_ref_idpes = $obj_ref_idpes->detalhe();
                        if ($det_aluno['nome_pai']) {
                            if ($det_aluno['nm_responsavel'] != $det_aluno['nome_pai']) {
                                $det_aluno['nm_responsavel'] = $det_ref_idpes["nome"];
                            }
                        } elseif ($det_aluno['nome_mae']) {
                            if ($det_aluno['nm_responsavel'] != $det_aluno['nome_mae']) {
                                $det_aluno['nm_responsavel'] = $det_ref_idpes["nome"];
                            }
                        } else {
                            $det_aluno['nm_responsavel'] = $det_ref_idpes["nome"];
                        }
                    } elseif ($det_fisica['nome_responsavel']) {
                        if ($det_aluno['nome_pai']) {
                            if ($det_fisica['nome_responsavel'] != $det_aluno['nome_pai']) {
                                $det_aluno['nm_responsavel'] = $det_fisica['nome_responsavel'];
                            }
                        } elseif ($det_aluno['nome_mae']) {
                            if ($det_fisica['nome_responsavel'] != $det_aluno['nome_mae']) {
                                $det_aluno['nm_responsavel'] = $det_fisica['nome_responsavel'];
                            }
                        } else {
                            $det_aluno['nm_responsavel'] = $det_fisica['nome_responsavel'];
                        }
                    }
                }
                if ($det_aluno['nm_pai']) {
                    $det_aluno['nm_pai'] = "{$det_aluno['nm_pai']}\n";
                }
                if ($det_aluno['nm_mae']) {
                    $det_aluno['nm_mae'] = "{$det_aluno['nm_mae']}\n";
                }
                $filiacao = "{$det_aluno['nm_pai']}{$det_aluno['nm_mae']}{$det_aluno['nm_responsavel']}";
                $obj_matricula_turma = new clsPmieducarMatriculaTurma();
                $lst_matricula_turma = $obj_matricula_turma->lista($matricula['cod_matricula'], null, null, null, null, null, null, null, 1, $matricula['ref_ref_cod_serie'], $matricula['ref_cod_curso'], $matricula['ref_ref_cod_escola'], null, $matricula['ref_cod_aluno'], null, null, null);
                if (is_array($lst_matricula_turma)) {
                    $lst_matricula_turma = array_shift($lst_matricula_turma);
                    $hora_inicial = $lst_turmas[$lst_matricula_turma['ref_cod_turma']]['hora_inicial'];
                    $hora_final = $lst_turmas[$lst_matricula_turma['ref_cod_turma']]['hora_final'];
                    if ($hora_inicial >= '07:00' and $hora_inicial <= '12:00') {
                        $turno = 'Matutino';
                    } else {
                        if ($hora_inicial > '12:00' and $hora_inicial <= '18:00') {
                            $turno = 'Vespertino';
                        } else {
                            $turno = 'Noturno';
                        }
                    }
                } else {
                    $turno = 'N/A';
                }
                $obj_endereco = new clsPessoaEndereco($det_aluno["ref_idpes"]);
                if ($obj_endereco_det = $obj_endereco->detalhe()) {
                    $id_cep = $obj_endereco_det['cep']->cep;
                    $id_bairro = $obj_endereco_det['idbai']->detalhe();
                    $id_logradouro = $obj_endereco_det['idlog']->detalhe();
                    $id_mun = $id_bairro['idmun']->detalhe();
                    $id_logradouro = $id_logradouro['idlog']->detalhe();
                    $idtlog = $id_logradouro[1];
                    $numero = $obj_endereco_det['numero'];
                    $letra = $obj_endereco_det['letra'];
                    $complemento = $obj_endereco_det['complemento'];
                    $andar = $obj_endereco_det['andar'];
                    $apto = $obj_endereco_det['apartamento'];
                    $bloco = $obj_endereco_det['bloco'];
                    $cidade = $id_mun['nome'];
                    $bairro = $id_bairro['nome'];
                    $logradouro = $id_logradouro['nome'];
                    //$endereco_uf =  $obj_endereco_det['sigla_uf'];
                    $endereco_uf = $id_bairro['idmun']->sigla_uf;
                    $cep = int2CEP($id_cep);
                } else {
                    $obj_endereco = new clsEnderecoExterno($det_aluno["ref_idpes"]);
                    if ($obj_endereco_det = $obj_endereco->detalhe()) {
                        $id_cep = $obj_endereco_det['cep'];
                        $cidade = $obj_endereco_det['cidade'];
                        $bairro = $obj_endereco_det['bairro'];
                        $logradouro = $obj_endereco_det['logradouro'];
                        $numero = $obj_endereco_det['numero'];
                        $letra = $obj_endereco_det['letra'];
                        $complemento = $obj_endereco_det['complemento'];
                        $andar = $obj_endereco_det['andar'];
                        $apto = $obj_endereco_det['apartamento'];
                        $bloco = $obj_endereco_det['bloco'];
                        $idtlog = $obj_endereco_det['idtlog']->idtlog;
                        $endereco_uf = $obj_endereco_det['sigla_uf']->sigla_uf;
                        $cep = int2CEP($id_cep);
                    }
                }
                $idtlog = ucfirst(strtolower($idtlog));
                $logradouro = minimiza_capitaliza($logradouro);
                $cidade = minimiza_capitaliza($cidade);
                $endereco = "{$idtlog} {$logradouro},{$numero} {$letra} {$complemento} {$apto} {$bloco} {$andar}\n{$cep} {$bairro}, {$cidade} {$endereco_uf}";
                $this->pdf->quadrado_relativo(30, $this->page_y, 782, $altura_caixa);
                $this->pdf->quadrado_relativo(30, $this->page_y, 40, $altura_caixa);
                $this->pdf->quadrado_relativo(70, $this->page_y, 50, $altura_caixa);
                $this->pdf->quadrado_relativo(115, $this->page_y, 175, $altura_caixa);
                $this->pdf->quadrado_relativo(285, $this->page_y, 55, $altura_caixa);
                $this->pdf->quadrado_relativo(335, $this->page_y, 190, $altura_caixa);
                $this->pdf->quadrado_relativo(520, $this->page_y, 160, $altura_caixa);
                $this->pdf->quadrado_relativo(680, $this->page_y, 80, $altura_caixa);
                $this->pdf->escreve_relativo("{$matricula['ref_cod_aluno']}", 30, $y_escrita + 5, 40, $altura_caixa, $fonte, 8, $corTexto, 'center');
                $this->pdf->escreve_relativo("{$matricula['cod_matricula']}", 70, $y_escrita + 5, 50, $altura_caixa, $fonte, 8, $corTexto, 'center');
                $this->pdf->escreve_relativo("{$matricula['nome']}\n{$endereco}", 115, $y_escrita - 3, 175, $altura_caixa, $fonte, 8, $corTexto, 'center');
                $this->pdf->escreve_relativo("{$data_nasc}\n{$idade} anos", 285, $y_escrita + 5, 50, $altura_caixa, $fonte, 8, $corTexto, 'center');
                $this->pdf->escreve_relativo("{$filiacao}", 335, $y_escrita + 5, 175, $altura_caixa, $fonte, 8, $corTexto, 'center');
                if ($this->campo_assinatura) {
                    $this->pdf->escreve_relativo(" ", 520, $y_escrita + 2, 160, $altura_caixa, $fonte, 8, $corTexto, 'center');
                } else {
                    $this->pdf->escreve_relativo("{$nacionalidade}\n{$det_municipio['nome']}", 520, $y_escrita + 2, 160, $altura_caixa, $fonte, 8, $corTexto, 'center');
                }
                $obj_matricula_turma2 = new clsPmieducarMatriculaTurma();
                $det_matricula_turma2 = $obj_matricula_turma2->lista($matricula["cod_matricula"], null, null, null, null, null, null, null, 1);
                if (is_array($det_matricula_turma2)) {
                    $det_matricula_turma2 = array_shift($det_matricula_turma2);
                    $obj_turma = new clsPmieducarTurma($det_matricula_turma2["ref_cod_turma"]);
                    $det_turma = $obj_turma->detalhe();
                }
                $this->pdf->escreve_relativo("{$lst_series[$matricula['ref_ref_cod_serie']]['nm_serie']}\n{$det_turma["nm_turma"]}", 680, $y_escrita + 5, 80, $altura_caixa, $fonte, 8, $corTexto, 'center');
                $this->pdf->escreve_relativo("{$turno}", 760, $y_escrita + 5, 50, $altura_caixa, $fonte, 8, $corTexto, 'center');
                $this->page_y += $altura_caixa;
                $ultimo_cod = $matricula['ref_cod_curso'];
            }
            $this->pdf->ClosePage();
        } else {
            echo '<script>
	     					alert("A turma não possui matrículas");
	     					window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1));
			     		  </script>';
            return true;
            return;
        }
        $this->pdf->CloseFile();
        $this->get_link = $this->pdf->GetLink();
        echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>";
        echo "<html><center>Se o download não iniciar automaticamente <br /><a target='_blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n\t\t\t<span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\n\t\t\tClique na Imagem para Baixar o instalador<br><br>\n\t\t\t<a href=\"http://www.adobe.com.br/products/acrobat/readstep2.html\" target=\"new\"><br><img src=\"imagens/acrobat.gif\" width=\"88\" height=\"31\" border=\"0\"></a>\n\t\t\t</span>\n\t\t\t</center>";
    }
 function renderHTML()
 {
     @session_start();
     $pessoa_logada = $_SESSION['id_pessoa'];
     @session_write_close();
     if ($_GET) {
         foreach ($_GET as $key => $value) {
             $this->{$key} = $value;
         }
     }
     if ($this->ref_ref_cod_serie) {
         $this->ref_cod_serie = $this->ref_ref_cod_serie;
     }
     $fonte = 'arial';
     $corTexto = '#000000';
     if (!is_numeric($this->ref_cod_aluno) || !is_numeric($this->ref_cod_escola)) {
         echo "<center>Não existem dados a serem exibidos!</center>";
         echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');}</script>";
         die;
     }
     //		if ($pessoa_logada==184580)
     //		{
     //			$this->verificaHistorico();
     //		}
     $obj_historico_escolar = new clsPmieducarHistoricoEscolar();
     $obj_historico_escolar->setOrderby("ano ASC");
     $lst_historico_escolar = $obj_historico_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);
     //, 0 );
     $ultima_mat = count($lst_historico_escolar) - 1;
     $observacao = $lst_historico_escolar[$ultima_mat]['observacao'];
     $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("Histórico Escolar", "Histórico Escolar", "A4", "", false, false);
     $this->pdf->OpenPage();
     //***************INICIO CABECALHO
     $obj_aluno = new clsPmieducarAluno($this->ref_cod_aluno);
     $det_aluno = $obj_aluno->detalhe();
     $obj_matricula = new clsPmieducarMatricula();
     $lst_matriculas = $obj_matricula->lista(null, null, $this->ref_cod_escola, null, null, null, $this->ref_cod_aluno, array(1, 2), null, null, null, null, 1, null, null, $this->ref_cod_instituicao, 1, null, null, null, null, null, null, null, null);
     if ($lst_matriculas) {
         $cod_matricula = $lst_matriculas[0]['cod_matricula'];
     }
     $obj_pessoa = new clsPessoa_($det_aluno['ref_idpes']);
     $det_pessoa = $obj_pessoa->detalhe();
     // NOME DO ALUNO
     $nm_aluno = str2upper($det_pessoa['nome']);
     $obj_fisica = new clsFisica($det_aluno['ref_idpes']);
     $det_fisica = $obj_fisica->detalhe();
     // SEXO
     $sexo = $det_fisica["sexo"];
     if ($sexo == "M") {
         $sexo = "MASCULINO";
     } else {
         $sexo = "FEMININO";
     }
     // DATA DE NASCIMENTO
     $dt_nasc = dataToBrasil($det_fisica["data_nasc"]);
     $dia = substr($dt_nasc, 0, 2);
     $mes = substr($dt_nasc, 3, 2);
     $meses = array("01" => "Janeiro", "02" => "Fevereiro", "03" => "Março", "04" => "Abril", "05" => "Maio", "06" => "Junho", "07" => "Julho", "08" => "Agosto", "09" => "Setembro", "10" => "Outubro", "11" => "Novembro", "12" => "Dezembro");
     $ano = substr($dt_nasc, 6, 4);
     // NATURALIDADE
     $idmun_nascimento = $det_fisica["idmun_nascimento"]->idmun;
     $obj_mun_nasc = new clsMunicipio($idmun_nascimento);
     $det_mun_nasc = $obj_mun_nasc->detalhe();
     $naturalidade = str2upper($det_mun_nasc['nome']);
     if ($det_mun_nasc['sigla_uf']) {
         $naturalidade_uf = $det_mun_nasc['sigla_uf']->detalhe();
         $naturalidade_uf = $naturalidade_uf['nome'];
     }
     // NACIONALIDADE
     $nacionalidade = $det_fisica["nacionalidade"];
     if ($nacionalidade == 1) {
         $nacionalidade = "Brasileira";
     } else {
         if ($nacionalidade == 2) {
             $nacionalidade = "Naturalizado(a) Brasileiro(a)";
         } else {
             if ($nacionalidade == 3) {
                 $nacionalidade = "Estrangeira";
             }
         }
     }
     $nm_pai = str2upper($det_aluno["nm_pai"]);
     $nm_mae = str2upper($det_aluno['nm_mae']);
     if (!$nm_pai || !$nm_mae) {
         $obj_fisica = new clsFisica($det_aluno['ref_idpes']);
         $det_fisica = $obj_fisica->detalhe();
         if (!$nm_pai) {
             $nm_pai = str2upper($det_fisica["nome_pai"]);
         }
         if (!$nm_mae) {
             $nm_mae = str2upper($det_fisica["nome_mae"]);
         }
         if (!$nm_pai) {
             $obj_pessoa = new clsPessoa_($det_fisica["idpes_pai"]);
             $det_pessoa = $obj_pessoa->detalhe();
             // NOME DO PAI
             $nm_pai = str2upper($det_pessoa['nome']);
         }
         if (!$nm_mae) {
             $obj_pessoa = new clsPessoa_($det_fisica["idpes_mae"]);
             $det_pessoa = $obj_pessoa->detalhe();
             // NOME DA MAE
             $nm_mae = str2upper($det_pessoa['nome']);
         }
     }
     $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) {
             $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 (class_exists("clsPessoaEndereco")) {
             $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}";
                 }
             }
         }
     }
     if ($dt_nasc) {
         $nascimento = ", nascido(a) em {$dia} de {$meses[$mes]} de {$ano}";
     }
     if ($naturalidade) {
         $natural = " natural de {$naturalidade},";
         if ($naturalidade_uf) {
             $natural_uf = " Estado de(o) {$naturalidade_uf}";
         }
     }
     if ($nacionalidade) {
         $nacional = " de nacionalidade {$nacionalidade}";
     }
     $naturalidade = ", {$natural}{$natural_uf}{$nacional}";
     $gruda_pai = ", filho(a) de ";
     if ($nm_pai) {
         $pais = "{$gruda_pai}{$nm_pai}";
         $gruda_pai = " e de ";
     }
     if ($nm_mae) {
         $pais .= "{$gruda_pai}{$nm_mae}";
     }
     if ($sexo) {
         $sexo = ", do sexo {$sexo}";
     }
     if ($cod_matricula) {
         $cod_matricula = ", matrícula {$cod_matricula}";
     }
     $serie_concluiu = ", cursou em {$lst_historico_escolar[$ultima_mat]['ano']}, o(a) {$lst_historico_escolar[$ultima_mat]['nm_serie']} do Ensino Fundamental";
     $this->addCabecalho($nm_aluno, $cod_matricula, $naturalidade, $sexo, $nascimento, $pais, $serie_concluiu);
     //*************** FIM CABECALHO
     if ($lst_historico_escolar) {
         //*************** INICIO NOTAS
         $db = new clsBanco();
         /**
          * busca nome das series e fonetiza
          * para tentar remover duplicidades
          */
         $consulta = "SELECT nm_serie\n\t\t\t\t\t\t\t\t,sequencial\n\t\t\t\t\t\t\t\t,CASE WHEN faltas_globalizadas IS NOT NULL THEN\n\t\t\t\t\t\t\t\t\t100::float -  (faltas_globalizadas::float / dias_letivos::float )::float * 100\n\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\tcarga_horaria\n\t\t\t\t\t\t\t\tEND AS frequencia\n\t\t\t\t\t\t\t\t,CASE WHEN faltas_globalizadas IS NULL THEN\n\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\t\t1\n\t\t\t\t\t\t\t\tEND AS faltas_globalizadas\n\t\t\t\t\t\t   FROM pmieducar.historico_escolar\n\t\t\t\t\t\t  WHERE ref_cod_aluno = '{$this->ref_cod_aluno}'\n\t\t\t\t\t\t    AND ativo = 1\n\t\t\t\t\t\t  ORDER BY ano";
         $db->Consulta($consulta);
         if ($db->Num_Linhas()) {
             $series = array();
             while ($db->ProximoRegistro()) {
                 $registro = $db->Tupla();
                 $registro['total_faltas'] = 0;
                 $series[] = $registro;
                 //['nm_serie'];
             }
             $serie_fonetizada = array();
             foreach ($series as $serie) {
                 $fonetiza = fonetiza_palavra($serie['nm_serie']);
                 $serie_fonetizada["{$fonetiza}"] = $serie;
             }
             $lst_series = array();
             foreach ($serie_fonetizada as $key => $serie) {
                 $lst_series[$key] = $serie;
                 $lst_series[$key]['nm_serie'] = $serie['nm_serie'];
                 $frequencia[$key] = $serie['frequencia'] != '' ? number_format($serie['frequencia'], 1, '.', '') . "%" : $serie['frequencia'];
             }
             $consulta = "SELECT nm_disciplina\n\t\t\t\t\t\t\t   FROM pmieducar.historico_disciplinas\n\t\t\t\t\t\t\t  WHERE ref_ref_cod_aluno = '{$this->ref_cod_aluno}'\n\t\t\t\t\t\t\t  AND nm_disciplina IS NOT NULL\n\t\t\t\t\t\t\t  AND nm_disciplina != ''\n\t\t\t\t\t\t\t  AND nota IS NOT NULL\n\t\t\t\t\t\t\t  AND nota != ''\n\t\t\t\t\t\t\t ORDER BY 1";
             $db->Consulta($consulta);
             if ($db->Num_Linhas()) {
                 $disciplinas = array();
                 while ($db->ProximoRegistro()) {
                     $registro = $db->Tupla();
                     $disciplinas[] = $registro;
                 }
                 $disciplina_fonetizada = array();
                 foreach ($disciplinas as $disciplina) {
                     $fonetiza = fonetiza_palavra($disciplina['nm_disciplina']);
                     $disciplina_fonetizada["{$fonetiza}"] = $disciplina;
                 }
                 $lst_disciplinas = array();
                 foreach ($disciplina_fonetizada as $disciplina) {
                     $lst_disciplinas[] = $disciplina;
                 }
             }
             /**
              * cabecalho com todas as series
              */
             $this->novaLinha($lst_series, 's');
             $notas = array();
             $possui_eja = false;
             foreach ($lst_disciplinas as $key => $disciplina) {
                 foreach ($lst_series as $key2 => $serie) {
                     $consulta = "SELECT nm_disciplina\n\t\t\t\t\t\t\t\t\t       ,nota\n\t\t\t\t\t\t\t\t\t       ,faltas\n\t\t\t\t\t\t\t\t\t  FROM pmieducar.historico_disciplinas\n\t\t\t\t\t\t\t\t\t WHERE ref_ref_cod_aluno = {$this->ref_cod_aluno}\n\t\t\t\t\t\t\t\t\t   AND ref_sequencial = {$serie['sequencial']}\n\t\t\t\t\t\t\t\t\t   AND nm_disciplina IS NOT NULL\n\t\t\t\t\t\t\t\t\t   AND nm_disciplina != ''\n\t\t\t\t\t\t\t\t\t   AND nota IS NOT NULL\n\t\t\t\t\t\t\t\t\t   AND nota != ''\n\t\t\t\t\t\t\t\t\tORDER BY 1";
                     $db->Consulta($consulta);
                     if ($db->Num_Linhas()) {
                         while ($db->ProximoRegistro()) {
                             $registro = $db->Tupla();
                             if (fonetiza_palavra($disciplina['nm_disciplina']) == fonetiza_palavra($registro['nm_disciplina'])) {
                                 if (is_numeric(substr($registro["nota"], 0, 1)) || is_numeric(substr($registro["nota"], strpos($registro["nota"], ",") + 1, 1))) {
                                     $notas[fonetiza_palavra($disciplina['nm_disciplina'])][$serie['sequencial']] = number_format(str_replace(",", ".", $registro['nota']), 2, ".", '');
                                 } else {
                                     if ($extra_curricular) {
                                         $possui_eja = true;
                                     }
                                     $notas[fonetiza_palavra($disciplina['nm_disciplina'])][$serie['sequencial']] = $registro["nota"];
                                 }
                                 //									$notas[fonetiza_palavra($disciplina['nm_disciplina'])][$serie['sequencial']] = number_format(str_replace(",",".",$registro['nota']),2,".",'');
                                 //$falta += $registro['faltas'];
                                 if (!$serie['faltas_globalizadas']) {
                                     $lst_series[$key2]['total_faltas'] += $registro['faltas'];
                                 }
                                 break;
                             } else {
                                 $notas[fonetiza_palavra($disciplina['nm_disciplina'])][$serie['sequencial']] = "- -";
                             }
                         }
                     } else {
                         $notas[fonetiza_palavra($disciplina['nm_disciplina'])][$serie['sequencial']] = "";
                     }
                 }
             }
             foreach ($notas as $key => $nota) {
                 $nota['nm_disciplina'] = $disciplina_fonetizada[$key]['nm_disciplina'];
                 $this->novaLinha($nota, 'n');
             }
         }
         //*************** FIM NOTAS
         //*************** FREQUENCIA
         foreach ($lst_series as $key => $serie) {
             if (!$serie['faltas_globalizadas']) {
                 $frequencia[$key] = 100 - $serie['total_faltas'] / $serie['frequencia'] * 100;
             }
             if ($frequencia[$key]) {
                 $frequencia[$key] .= "%";
             }
         }
         $this->novaLinha($frequencia, 'f');
         //*************** FREQUENCIA
         $this->page_y += 5;
         $this->cor_fundo = "";
         $this->linhaHistorico(array(), true);
         //*************** INICIO HISTORICO
         $consulta = "SELECT nm_serie\n\t\t\t\t\t\t        ,ano\n\t\t\t\t\t\t        ,escola\n\t\t\t\t\t\t        ,escola_cidade\n\t\t\t\t\t\t        ,escola_uf\n\t\t\t\t\t\t        ,CASE aprovado\n\t\t\t\t\t\t          \t  WHEN 1 THEN 'APROVADO'\n\t\t\t\t\t\t              WHEN 2 THEN 'REPROVADO'\n\t\t\t\t\t\t\t \t END\n\t\t\t\t\t\t\t \t,observacao\n\t\t\t\t\t\t   FROM pmieducar.historico_escolar\n\t\t\t\t\t\t  WHERE ref_cod_aluno = '{$this->ref_cod_aluno}'\n\t\t\t\t\t\t    AND ativo = 1\n\t\t\t\t\t\t  ORDER BY ano";
         $observacao = '';
         $db->Consulta($consulta);
         $qtd_observacoes = 0;
         if ($db->Num_Linhas()) {
             while ($db->ProximoRegistro()) {
                 $registro = $db->Tupla();
                 if ($registro[6]) {
                     $qtd_observacoes++;
                     $observacao .= "{$registro[1]} - {$registro[6]}\n";
                 }
                 $registro = array($registro[0], $registro[1], $registro[5], $registro[2], $registro[3], $registro[4]);
                 $this->linhaHistorico($registro);
             }
         }
         //*************** FIM HISTORICO
     }
     if ($qtd_observacoes < 3) {
         $this->observacao($observacao);
     } else {
         $this->observacao($observacao, 100);
     }
     if ($possui_eja) {
         $tabela_conversao = "\nConversão de Valores das Notas";
         $tabela_conversao .= "\nNRE - Necessita retomar os estudos - abaixo de 5,0";
         $tabela_conversao .= "\nEM   - Evidência Mínima  - 5,0 a 6,9";
         $tabela_conversao .= "\nEP   - Evidência Parcial - 7,0 a 8,4";
         $tabela_conversao .= "\nEC   - Evidência Completa - 8,5 a 10,0";
         $this->pdf->quadrado_relativo(20, $this->page_y + 5, 555, 50, 0.1, "#000000", "#FFFFFF");
         $this->pdf->escreve_relativo("{$tabela_conversao}", 23, $this->page_y + 3, 545, 60, $fonte, 8, $corTexto, 'justify');
         $this->page_y += 50;
     }
     $this->rodape(strtoupper("{$municipio} ({$estado})"));
     $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>";
     /*else
     		{
     
     			echo "<center>O aluno não possui Histórico Escolar!</center>"	;
     			echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');}</script>";
     			die();
     
     		}*/
 }
 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>";
     }
 }
Пример #5
0
 $xml .= sprintf('<ddd_mov>%s</ddd_mov>', $ddd_mov) . PHP_EOL;
 $xml .= sprintf('<fone_mov>%s</fone_mov>', $fone_mov) . PHP_EOL;
 $xml .= sprintf('<email>%s</email>', $email) . PHP_EOL;
 $xml .= sprintf('<url>%s</url>', $url) . PHP_EOL;
 $xml .= sprintf('<sexo>%s</sexo>', $sexo) . PHP_EOL;
 $xml .= sprintf('<nacionalidade>%d</nacionalidade>', $nacionalidade) . PHP_EOL;
 $xml .= sprintf('<idmun_nascimento>%d</idmun_nascimento>', $idmun_nascimento) . PHP_EOL;
 $detalhe_pais_origem = $det_fisica['idpais_estrangeiro']->detalhe();
 $pais_origem = $detalhe_pais_origem['idpais'];
 $ref_idpes_responsavel = $det_fisica['idpes_responsavel'];
 $idpes_pai = $det_fisica['idpes_pai'];
 $idpes_mae = $det_fisica['idpes_mae'];
 $xml .= sprintf('<idpes_pai>%d</idpes_pai>', $idpes_pai) . PHP_EOL;
 $xml .= sprintf('<idpes_mae>%d</idpes_mae>', $idpes_mae) . PHP_EOL;
 $obj_aluno = new clsPmieducarAluno(NULL, NULL, NULL, NULL, NULL, $ref_idpes);
 $detalhe_aluno = $obj_aluno->detalhe();
 if ($detalhe_aluno) {
     $nm_pai = $detalhe_aluno['nm_pai'];
     $nm_mae = $detalhe_aluno['nm_mae'];
     $xml .= sprintf('<nm_pai>%s</nm_pai>', $nm_pai) . PHP_EOL;
     $xml .= sprintf('<nm_mae>%s</nm_mae>', $nm_mae) . PHP_EOL;
 }
 $obj_endereco = new clsPessoaEndereco($ref_idpes);
 $zona = NULL;
 if ($obj_endereco_det = $obj_endereco->detalhe()) {
     $isEnderecoExterno = 0;
     $id_cep = $obj_endereco_det['cep']->cep;
     $id_bairro = $obj_endereco_det['idbai']->idbai;
     $id_logradouro = $obj_endereco_det['idlog']->idlog;
     $numero = $obj_endereco_det['numero'];
     $letra = $obj_endereco_det['letra'];
 function renderHTML()
 {
     if ($_POST) {
         foreach ($_POST as $key => $value) {
             $this->{$key} = $value;
         }
     }
     if ($this->ref_ref_cod_serie) {
         $this->ref_cod_serie = $this->ref_ref_cod_serie;
     }
     $fonte = 'arial';
     $corTexto = '#000000';
     if (empty($this->ref_cod_turma)) {
         echo '
      <script>
        alert("Erro ao gerar relatório!\\nNenhuma turma selecionada!");
        window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1));
      </script>';
         return TRUE;
     }
     $obj_escola = new clsPmieducarEscola($this->ref_cod_escola);
     $det_escola = $obj_escola->detalhe();
     $this->nm_escola = $det_escola['nome'];
     $obj_instituicao = new clsPmieducarInstituicao($det_escola['ref_cod_instituicao']);
     $det_instituicao = $obj_instituicao->detalhe();
     $this->nm_instituicao = $det_instituicao['nm_instituicao'];
     $obj_turma = new clsPmieducarTurma($this->ref_cod_turma);
     $det_turma = $obj_turma->detalhe();
     $this->nm_turma = $det_turma['nm_turma'];
     $obj_serie = new clsPmieducarSerie($this->ref_cod_serie);
     $det_serie = $obj_serie->detalhe();
     $this->nm_serie = $det_serie['nm_serie'];
     $eh_multi_seriado = FALSE;
     if (is_numeric($det_turma['ref_ref_cod_serie_mult'])) {
         $series = array();
         $series[$det_serie['cod_serie']] = $det_serie['nm_serie'];
         $obj_serie = new clsPmieducarSerie($det_turma['ref_ref_cod_serie_mult']);
         $det_serie = $obj_serie->detalhe();
         $this->nm_serie .= ' / ' . $det_serie['nm_serie'];
         $series[$det_serie['cod_serie']] = $det_serie['nm_serie'];
         $eh_multi_seriado = TRUE;
     }
     $this->pdf = new clsPDF('Resultado Final', 'Resultado Final', 'A4', '', FALSE, FALSE);
     $this->pdf->OpenPage();
     $this->addCabecalho();
     $this->pdf->linha_relativa(30, 140, 540, 0);
     $this->pdf->linha_relativa(30, 140, 0, 30);
     $this->pdf->linha_relativa(570, 140, 0, 30);
     $this->pdf->linha_relativa(30, 170, 540, 0);
     $this->pdf->linha_relativa(60, 140, 0, 30);
     $this->pdf->linha_relativa(320, 140, 0, 30);
     $this->pdf->linha_relativa(380, 140, 0, 30);
     $this->pdf->linha_relativa(490, 140, 0, 30);
     $this->pdf->linha_relativa(380, 155, 190, 0);
     $this->pdf->linha_relativa(530, 155, 0, 15);
     $this->pdf->linha_relativa(450, 155, 0, 15);
     $this->pdf->escreve_relativo('Ord', 35, 150, 20, 20, NULL, 10);
     $this->pdf->escreve_relativo('Nome do aluno', 70, 150, 160, 20, NULL, 10);
     $this->pdf->escreve_relativo('Aprovado', 325, 150, 160, 20, NULL, 10);
     $this->pdf->escreve_relativo('Reprovado', 410, 142, 160, 20, NULL, 10);
     $this->pdf->escreve_relativo('Desempenho', 384, 156, 160, 20, NULL, 10);
     $this->pdf->escreve_relativo('Faltas', 455, 156, 160, 20, NULL, 10);
     $this->pdf->escreve_relativo('Alf.', 500, 156, 160, 20, NULL, 10);
     $this->pdf->escreve_relativo('N. Alf.', 535, 156, 160, 20, NULL, 10);
     $obj_matricula = new clsPmieducarMatriculaTurma();
     $obj_matricula->setOrderby('m.ref_ref_cod_serie, nome_ascii');
     if ($this->is_padrao) {
         $this->semestre = NULL;
     }
     $lst_matricula = $obj_matricula->lista(NULL, $this->ref_cod_turma, NULL, NULL, NULL, NULL, NULL, NULL, 1, $this->ref_cod_serie, $this->ref_cod_curso, $this->ref_cod_escola, $this->ref_cod_instituicao, NULL, NULL, array(1, 2, 3), NULL, NULL, $this->ano, NULL, TRUE, NULL, NULL, TRUE, NULL, NULL, NULL, $det_turma['ref_ref_cod_serie_mult'], $this->semestre);
     $qtd_quebra = 43;
     $base = 155;
     $linha = 1;
     $total_aprovados = 0;
     $total_reprovados_desempenho = 0;
     $total_reprovados_nota = 0;
     $total_analfabetos = 0;
     $total_nao_analfabetos = 0;
     $ordem_mostra = 0;
     if (is_array($lst_matricula)) {
         foreach ($lst_matricula as $ordem => $matricula) {
             $obj_matricula = new clsPmieducarMatricula($matricula['ref_cod_matricula']);
             $det_matricula = $obj_matricula->detalhe();
             // Verifica se o aluno está aprovado ou reprovado
             $situacoes = array(App_Model_MatriculaSituacao::APROVADO, App_Model_MatriculaSituacao::REPROVADO);
             if (in_array($det_matricula['aprovado'], $situacoes)) {
                 $ordem_mostra++;
                 $ordem_mostra = sprintf('%02d', $ordem_mostra);
                 if ($linha % $qtd_quebra == 0) {
                     //nova pagina
                     $this->pdf->ClosePage();
                     $this->pdf->OpenPage();
                     $base = 30;
                     $linha = 0;
                     $this->pdf->linha_relativa(30, 30, 540, 0);
                     $qtd_quebra = 51;
                 }
                 $this->pdf->linha_relativa(30, $base + $linha * 15, 0, 15);
                 $this->pdf->linha_relativa(60, $base + $linha * 15, 0, 15);
                 $this->pdf->linha_relativa(30, $base + 15 + $linha * 15, 540, 0);
                 $this->pdf->linha_relativa(570, $base + $linha * 15, 0, 15);
                 // fim
                 $this->pdf->escreve_relativo($ordem_mostra, 40, $base + 3 + $linha * 15, 15, 15, NULL, 8);
                 if ($eh_multi_seriado) {
                     $this->pdf->escreve_relativo($matricula['nome'] . ' (' . $series[$det_matricula['ref_ref_cod_serie']] . ')', 65, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                 } else {
                     $this->pdf->escreve_relativo($matricula['nome'], 65, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                 }
                 /**
                  * Instancia o service de boletim e requisita os dados da situação
                  * do aluno. Graças ao service, são "apenas" 147 linhas de código
                  * mal-escrito a menos.
                  */
                 $boletim = new Avaliacao_Service_Boletim(array('matricula' => $matricula['ref_cod_matricula']));
                 $situacao = $boletim->getSituacaoAluno();
                 if (TRUE == $situacao->aprovado) {
                     $this->pdf->escreve_relativo('X', 345, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                     $total_aprovados++;
                 } elseif (TRUE == $situacao->retidoFalta) {
                     $total_reprovados_desempenho++;
                     $this->pdf->escreve_relativo('X', 465, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                 } else {
                     $total_reprovados_nota++;
                     $this->pdf->escreve_relativo('X', 410, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                 }
                 // analfabeto
                 $obj_aluno = new clsPmieducarAluno($det_matricula['ref_cod_aluno']);
                 $obj_aluno->setCamposLista('analfabeto');
                 $det_aluno = $obj_aluno->detalhe();
                 if ($det_aluno['analfabeto'] == 0) {
                     $this->pdf->escreve_relativo('X', 507, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                     // não alfabetizado
                     $total_analfabetos++;
                 } else {
                     $this->pdf->escreve_relativo('X', 545, $base + 3 + $linha * 15, 250, 15, NULL, 8);
                     // alfabetizado
                     $total_nao_analfabetos++;
                 }
                 $this->pdf->linha_relativa(320, $base + $linha * 15, 0, 15);
                 $this->pdf->linha_relativa(380, $base + $linha * 15, 0, 15);
                 $this->pdf->linha_relativa(490, $base + $linha * 15, 0, 15);
                 $this->pdf->linha_relativa(530, $base + $linha * 15, 0, 15);
                 $this->pdf->linha_relativa(450, $base + $linha * 15, 0, 15);
                 $linha++;
             }
         }
     }
     // Escrever total
     $this->pdf->linha_relativa(30, $base + $linha * 15, 0, 15);
     $this->pdf->escreve_relativo("Total", 35, $base + 3 + $linha * 15, 20, 15, NULL, 8);
     $this->pdf->escreve_relativo($total_aprovados, 345, $base + 3 + $linha * 15, 250, 15, null, 8);
     // aprovado
     $this->pdf->escreve_relativo($total_reprovados_desempenho, 465, $base + 3 + $linha * 15, 250, 15, NULL, 8);
     // desempenho
     $this->pdf->escreve_relativo($total_reprovados_nota, 410, $base + 3 + $linha * 15, 250, 15, NULL, 8);
     // faltas
     $this->pdf->escreve_relativo($total_analfabetos, 507, $base + 3 + $linha * 15, 250, 15, NULL, 8);
     // não alfabetizado
     $this->pdf->escreve_relativo($total_nao_analfabetos, 545, $base + 3 + $linha * 15, 250, 15, NULL, 8);
     // alfabetizado
     $this->pdf->linha_relativa(60, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(320, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(380, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(490, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(530, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(450, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(570, $base + $linha * 15, 0, 15);
     $this->pdf->linha_relativa(30, $base + ($linha + 1) * 15, 540, 0);
     $this->pdf->ClosePage();
     $this->pdf->CloseFile();
     $this->get_link = $this->pdf->GetLink();
     echo sprintf('
   <script>
     window.onload = function()
     {
       parent.EscondeDiv("LoadImprimir");
       window.location="download.php?filename=%s"
     }
   </script>', $this->get_link);
     echo sprintf('
   <html>
     <center>
       Se o download não iniciar automaticamente <br /><a target="blank" href="%s" style="font-size: 16px; color: #000000; text-decoration: underline;">clique aqui!</a><br><br>
       <span style="font-size: 10px;">Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>
         Clique na Imagem para Baixar o instalador<br><br>
         <a href="http://www.adobe.com.br/products/acrobat/readstep2.html" target="new"><br><img src="imagens/acrobat.gif" width="88" height="31" border="0"></a>
       </span>
     </center>
   </html>', $this->get_link);
 }
 /**
  * Sobrescreve clsListagem::Gerar().
  * @see clsListagem::Gerar()
  */
 function Gerar()
 {
     session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = 'Vagas Reservadas - Listagem';
     // Passa todos os valores obtidos no GET para atributos do objeto
     foreach ($_GET as $var => $val) {
         $this->{$var} = $val === '' ? NULL : $val;
     }
     $lista_busca = array('Aluno', 'S&eacute;rie', 'Curso');
     // Recupera ní­vel de acesso do usuário logado
     $obj_permissao = new clsPermissoes();
     $nivel_usuario = $obj_permissao->nivel_acesso($this->pessoa_logada);
     if ($nivel_usuario == 1) {
         $lista_busca[] = 'Escola';
         $lista_busca[] = 'Institui&ccedil;&atilde;o';
     } elseif ($nivel_usuario == 2) {
         $lista_busca[] = 'Escola';
     }
     $this->addCabecalhos($lista_busca);
     // Lista de opçõees para o formulário de pesquisa rápida
     $get_escola = TRUE;
     $get_curso = TRUE;
     $get_escola_curso_serie = TRUE;
     include 'include/pmieducar/educar_campo_lista.php';
     // Referência de escola
     if ($this->ref_cod_escola) {
         $this->ref_ref_cod_escola = $this->ref_cod_escola;
     } elseif (isset($_GET['ref_cod_escola'])) {
         $this->ref_ref_cod_escola = intval($_GET['ref_cod_escola']);
     }
     // Referência de série
     if ($this->ref_cod_serie) {
         $this->ref_ref_cod_serie = $this->ref_cod_serie;
     } elseif (isset($_GET['ref_cod_serie'])) {
         $this->ref_ref_cod_serie = intval($_GET['ref_cod_serie']);
     }
     // Campos do formulário
     $this->campoTexto('nm_aluno', 'Aluno', $this->nm_aluno, 30, 255, FALSE, FALSE, FALSE, '', '<img border="0" onclick="pesquisa_aluno();" id="ref_cod_aluno_lupa" name="ref_cod_aluno_lupa" src="imagens/lupa.png" />');
     // Código do aluno (retornado de pop-up de busca da pesquisa de alunos - lupa)
     $this->campoOculto('ref_cod_aluno', $this->ref_cod_aluno);
     // Paginador
     $this->limite = 20;
     $this->offset = $_GET["pagina_{$this->nome}"] ? $_GET["pagina_{$this->nome}"] * $this->limite - $this->limite : 0;
     // Instância objeto de mapeamento relacional com o tabela pmieducar.reserva_vaga
     $obj_reserva_vaga = new clsPmieducarReservaVaga();
     $obj_reserva_vaga->setOrderby('data_cadastro ASC');
     $obj_reserva_vaga->setLimite($this->limite, $this->offset);
     // Lista os registros usando os valores passados pelos filtros
     $lista = $obj_reserva_vaga->lista($this->cod_reserva_vaga, $this->ref_ref_cod_escola, $this->ref_ref_cod_serie, NULL, NULL, $this->ref_cod_aluno, NULL, NULL, NULL, NULL, 1, $this->ref_cod_instituicao, $this->ref_cod_curso);
     // Pega o total de registros encontrados
     $total = $obj_reserva_vaga->_total;
     // Itera sobre resultados montando a lista de apresentação
     if (is_array($lista) && count($lista)) {
         foreach ($lista as $registro) {
             // Recupera nome da série da reserva de vaga
             $obj_serie = new clsPmieducarSerie($registro['ref_ref_cod_serie']);
             $det_serie = $obj_serie->detalhe();
             $nm_serie = $det_serie['nm_serie'];
             // Recupera o nome do curso da reserva de vaga
             $obj_curso = new clsPmieducarCurso($registro['ref_cod_curso']);
             $det_curso = $obj_curso->detalhe();
             $registro['ref_cod_curso'] = $det_curso['nm_curso'];
             // Recupera o nome da escola da reserva de vaga
             $obj_escola = new clsPmieducarEscola($registro['ref_ref_cod_escola']);
             $det_escola = $obj_escola->detalhe();
             $nm_escola = $det_escola['nome'];
             // Recupera o nome da instituição da reserva de vaga
             $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'];
             /*
              * Se for um aluno previamente cadastrado, procuramos seu nome, primeiro
              * buscando a referência de Pessoa e depois pesquisando a tabela para
              * carregar o nome
              */
             if ($registro['ref_cod_aluno']) {
                 // Pesquisa por aluno para pegar o identificador de Pessoa
                 $obj_aluno = new clsPmieducarAluno($registro['ref_cod_aluno']);
                 $det_aluno = $obj_aluno->detalhe();
                 $ref_idpes = $det_aluno['ref_idpes'];
                 // Pesquisa a tabela de pessoa para recuperar o nome
                 $obj_pessoa = new clsPessoa_($ref_idpes);
                 $det_pessoa = $obj_pessoa->detalhe();
                 $registro['ref_cod_aluno'] = $det_pessoa['nome'];
             } else {
                 $registro['ref_cod_aluno'] = $registro['nm_aluno'] . ' (aluno externo)';
             }
             // Array de dados formatados para apresentação
             $lista_busca = array("<a href=\"educar_reservada_vaga_det.php?cod_reserva_vaga={$registro["cod_reserva_vaga"]}\">{$registro["ref_cod_aluno"]}</a>", "<a href=\"educar_reservada_vaga_det.php?cod_reserva_vaga={$registro["cod_reserva_vaga"]}\">{$nm_serie}</a>", "<a href=\"educar_reservada_vaga_det.php?cod_reserva_vaga={$registro["cod_reserva_vaga"]}\">{$registro["ref_cod_curso"]}</a>");
             // Verifica por permissões
             if ($nivel_usuario == 1) {
                 $lista_busca[] = "<a href=\"educar_reservada_vaga_det.php?cod_reserva_vaga={$registro["cod_reserva_vaga"]}\">{$nm_escola}</a>";
                 $lista_busca[] = "<a href=\"educar_reservada_vaga_det.php?cod_reserva_vaga={$registro["cod_reserva_vaga"]}\">{$registro["ref_cod_instituicao"]}</a>";
             } elseif ($nivel_usuario == 2) {
                 $lista_busca[] = "<a href=\"educar_reservada_vaga_det.php?cod_reserva_vaga={$registro["cod_reserva_vaga"]}\">{$nm_escola}</a>";
             }
             $this->addLinhas($lista_busca);
         }
     }
     $this->addPaginador2('educar_reservada_vaga_lst.php', $total, $_GET, $this->nome, $this->limite);
     $this->largura = '100%';
     $localizacao = new LocalizacaoSistema();
     $localizacao->entradaCaminhos(array($_SERVER['SERVER_NAME'] . "/intranet" => "In&iacute;cio", "educar_index.php" => "i-Educar - Escola", "" => "Listagem de vagas reservadas"));
     $this->enviaLocalizacao($localizacao->montar());
 }
Пример #8
0
 function Novo()
 {
     session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     if (!$this->cpf && $this->cpf_2) {
         $cpf = idFederal2int($this->cpf_2);
         $obj_pessoa_fisica = new clsPessoaFisica();
         $lst_pessoa_fisica = $obj_pessoa_fisica->lista(NULL, $cpf);
         if ($lst_pessoa_fisica) {
             $this->mensagem = 'CPF Já Cadastrado';
             return FALSE;
         } else {
             die('CPF Não Existente');
         }
     }
     $obj_pessoa = new clsPessoa_($this->ref_idpes);
     if ($obj_pessoa->detalhe()) {
         $obj_pessoa = new clsPessoa_($this->ref_idpes, $this->nome, NULL, $this->url, NULL, $this->pessoa_logada, NULL, $this->email);
         if (!$obj_pessoa->edita()) {
             return false;
         }
     } else {
         $obj_pessoa = new clsPessoa_($this->ref_idpes, $this->nome, NULL, $this->url, 'F', $this->pessoa_logada, NULL, $this->email);
         if (!($this->ref_idpes = $obj_pessoa->cadastra())) {
             return FALSE;
         }
     }
     if (!$this->cpf) {
         $this->ref_cod_sistema = 1;
     } else {
         $this->ref_cod_sistema = 'NULL';
     }
     if (is_string($this->cpf_pai) && $this->cpf_pai != '') {
         $this->cpf_pai = idFederal2int($this->cpf_pai);
         $obj_cpf = new clsFisica(FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, $this->cpf_pai);
         $detalhe_cpf = $obj_cpf->detalheCPF();
         if ($detalhe_cpf) {
             $this->idpes_pai = $detalhe_cpf['idpes'];
             $obj_pessoa = new clsPessoa_($this->idpes_pai);
             $det_pessoa = $obj_pessoa->detalhe();
             if ($det_pessoa) {
                 if ($this->nm_pai) {
                     $obj_pessoa = new clsPessoa_($this->idpes_pai, $this->nm_pai);
                     $obj_pessoa->edita();
                 } else {
                     $this->nm_pai = $det_pessoa['nome'];
                 }
             }
         } else {
             // cria uma pessoa para o pai
             $obj_pessoa = new clsPessoa_(FALSE, $this->nm_pai, $this->pessoa_logada, FALSE, 'F');
             $idpes = $obj_pessoa->cadastra();
             if ($idpes) {
                 $this->idpes_pai = $idpes;
                 //cadastra como pesso Fisica
                 $obj_fisica = new clsFisica($idpes, FALSE, 'M', FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, $this->pessoa_logada, NULL, NULL, $this->cpf_pai);
                 $obj_fisica->cadastra();
             }
         }
     } else {
         $this->idpes_pai = "NULL";
     }
     if (is_string($this->cpf_mae) && $this->cpf_mae != "") {
         $this->cpf_mae = idFederal2int($this->cpf_mae);
         $obj_cpf = new clsFisica(FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, $this->cpf_mae);
         $detalhe_cpf = $obj_cpf->detalheCPF();
         if ($detalhe_cpf) {
             $this->idpes_mae = $detalhe_cpf['idpes'];
             $obj_pessoa = new clsPessoa_($this->idpes_mae);
             $det_pessoa = $obj_pessoa->detalhe();
             if ($det_pessoa) {
                 if ($this->nm_mae) {
                     $obj_pessoa = new clsPessoa_($this->idpes_mae, $this->nm_mae);
                     $obj_pessoa->edita();
                 } else {
                     $this->nm_mae = $det_pessoa['nome'];
                 }
             }
         } else {
             // cria uma pessoa para a mae
             $obj_pessoa = new clsPessoa_(FALSE, $this->nm_mae, $this->pessoa_logada, FALSE, 'F');
             $idpes = $obj_pessoa->cadastra();
             if ($idpes) {
                 $this->idpes_mae = $idpes;
                 //cadastra como pesso Fisica
                 $obj_fisica = new clsFisica($idpes, FALSE, 'F', FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, $this->pessoa_logada, NULL, NULL, $this->cpf_mae);
                 $obj_fisica->cadastra();
             }
         }
     } else {
         $this->idpes_mae = "NULL";
     }
     $obj_fisica = new clsFisica($this->ref_idpes, dataToBanco($this->data_nascimento), $this->sexo, $this->idpes_mae, $this->idpes_pai, $this->ref_idpes_responsavel, NULL, $this->ideciv, NULL, NULL, NULL, $this->nacionalidade, $this->pais_origem, NULL, $this->idmun_nascimento, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, $this->pessoa_logada, $this->ref_cod_sistema, $this->cpf);
     if ($obj_fisica->detalhe()) {
         if (!$this->ref_idpes_responsavel) {
             $this->ref_idpes_responsavel = "NULL";
         }
         $obj_fisica = new clsFisica($this->ref_idpes, dataToBanco($this->data_nascimento), $this->sexo, $this->idpes_mae, $this->idpes_pai, $this->ref_idpes_responsavel, NULL, $this->ideciv, NULL, NULL, NULL, $this->nacionalidade, $this->pais_origem, NULL, $this->idmun_nascimento, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, $this->pessoa_logada, $this->ref_cod_sistema);
         if (!$obj_fisica->edita()) {
             return FALSE;
         }
     } else {
         $obj_fisica = new clsFisica($this->ref_idpes, dataToBanco($this->data_nascimento), $this->sexo, $this->idpes_mae, $this->idpes_pai, $this->ref_idpes_responsavel, NULL, $this->ideciv, NULL, NULL, NULL, $this->nacionalidade, $this->pais_origem, NULL, $this->idmun_nascimento, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, $this->pessoa_logada, $this->ref_cod_sistema, $this->cpf);
         if (!$obj_fisica->cadastra()) {
             return FALSE;
         }
     }
     if (is_numeric($this->ref_cod_raca)) {
         $obj_fisica_raca = new clsCadastroFisicaRaca($this->ref_idpes);
         if ($obj_fisica_raca->existe()) {
             $obj_fisica_raca = new clsCadastroFisicaRaca($this->ref_idpes, $this->ref_cod_raca);
             $obj_fisica_raca->edita();
         } else {
             $obj_fisica_raca = new clsCadastroFisicaRaca($this->ref_idpes, $this->ref_cod_raca);
             $obj_fisica_raca->cadastra();
         }
     } else {
         $obj_fisica_raca = new clsCadastroFisicaRaca($this->ref_idpes, $this->ref_cod_raca);
         $obj_fisica_raca->excluir();
     }
     $objTelefone = new clsPessoaTelefone($this->ref_idpes, 1, $this->fone_1, $this->ddd_fone_1);
     if ($objTelefone->detalhe()) {
         $objTelefone->edita();
     } else {
         $objTelefone->cadastra();
     }
     $objTelefone = new clsPessoaTelefone($this->ref_idpes, 2, $this->fone_2, $this->ddd_fone_2);
     if ($objTelefone->detalhe()) {
         $objTelefone->edita();
     } else {
         $objTelefone->cadastra();
     }
     $objTelefone = new clsPessoaTelefone($this->ref_idpes, 3, $this->fone_mov, $this->ddd_mov);
     if ($objTelefone->detalhe()) {
         $objTelefone->edita();
     } else {
         $objTelefone->cadastra();
     }
     $objTelefone = new clsPessoaTelefone($this->ref_idpes, 4, $this->fone_fax, $this->ddd_fax);
     if ($objTelefone->detalhe()) {
         $objTelefone->edita();
     } else {
         $objTelefone->cadastra();
     }
     if ($this->isEnderecoExterno) {
         $this->cep_ = str_replace('-', '', $this->cep_);
         $obj_endereco = new clsEnderecoExterno($this->ref_idpes, 1, $this->ref_idtlog, $this->nm_logradouro, $this->numero, $this->letra, $this->complemento, $this->nm_bairro, $this->cep_, $this->cidade, $this->ref_sigla_uf_, NULL, $this->bloco, $this->apartamento, $this->andar, NULL, $this->pessoa_logada, $this->zona_localizacao);
         if ($obj_endereco->existe()) {
             if (!$obj_endereco->edita()) {
                 return FALSE;
             }
         } else {
             if (!$obj_endereco->cadastra()) {
                 return FALSE;
             }
         }
         if ($this->endereco_original_is_externo != $this->isEnderecoExterno) {
             $obj_endereco = new clsPessoaEndereco($this->ref_idpes);
             $obj_endereco->exclui();
         }
     } else {
         $obj_endereco = new clsPessoaEndereco($this->ref_idpes, $this->id_cep, $this->id_logradouro, $this->id_bairro, $this->numero, $this->complemento, NULL, $this->letra, $this->bloco, $this->apartamento, $this->andar, null, $this->pessoa_logada);
         if ($obj_endereco->existe()) {
             if (!$obj_endereco->edita()) {
                 return FALSE;
             }
         } else {
             if (!$obj_endereco->cadastra()) {
                 return FALSE;
             }
         }
         if ($this->endereco_original_is_externo != $this->isEnderecoExterno) {
             $obj_endereco = new clsEnderecoExterno($this->ref_idpes);
             $obj_endereco->exclui();
         }
     }
     $this->deficiencia_exc = $_POST['oc_defic_exc'];
     if ($this->deficiencia_exc) {
         foreach ($this->deficiencia_exc as $key => $deficiencia) {
             $obj_deficiencia_pessoa = new clsCadastroFisicaDeficiencia($this->ref_idpes, $deficiencia);
             if ($obj_deficiencia_pessoa->detalhe()) {
                 $obj_deficiencia_pessoa->excluir();
             }
         }
     }
     $this->deficiencia = $_POST['oc_defic'];
     if ($this->deficiencia) {
         foreach ($this->deficiencia as $key => $deficiencia) {
             $obj_deficiencia_pessoa = new clsCadastroFisicaDeficiencia($this->ref_idpes, $key);
             if (!$obj_deficiencia_pessoa->detalhe()) {
                 $obj_deficiencia_pessoa->cadastra();
             }
         }
     }
     if ($this->data_emissao_cart_trabalho) {
         $this->data_emissao_cart_trabalho = explode('/', $this->data_emissao_cart_trabalho);
         $this->data_emissao_cart_trabalho = "{$this->data_emissao_cart_trabalho[2]}/{$this->data_emissao_cart_trabalho[1]}/{$this->data_emissao_cart_trabalho[0]}";
     }
     if ($this->data_emissao_cert_civil) {
         $this->data_emissao_cert_civil = explode('/', $this->data_emissao_cert_civil);
         $this->data_emissao_cert_civil = "{$this->data_emissao_cert_civil[2]}/{$this->data_emissao_cert_civil[1]}/{$this->data_emissao_cert_civil[0]}";
     }
     if ($this->data_exp_rg) {
         $this->data_exp_rg = explode('/', $this->data_exp_rg);
         $this->data_exp_rg = "{$this->data_exp_rg[2]}/{$this->data_exp_rg[1]}/{$this->data_exp_rg[0]}";
     }
     $ObjDocumento = new clsDocumento($this->ref_idpes, $this->rg, $this->data_exp_rg, $this->sigla_uf_exp_rg, $this->tipo_cert_civil, $this->num_termo, $this->num_livro, $this->num_folha, $this->data_emissao_cert_civil, $this->sigla_uf_cert_civil, $this->cartorio_cert_civil, $this->num_cart_trabalho, $this->serie_cart_trabalho, $this->data_emissao_cart_trabalho, $this->sigla_uf_cart_trabalho, $this->num_tit_eleitor, $this->zona_tit_eleitor, $this->secao_tit_eleitor, $this->idorg_exp_rg);
     if ($ObjDocumento->detalhe()) {
         $ObjDocumento = new clsDocumento($this->ref_idpes, $this->rg, $this->data_exp_rg, $this->sigla_uf_exp_rg, $this->tipo_cert_civil, $this->num_termo, $this->num_livro, $this->num_folha, $this->data_emissao_cert_civil, $this->sigla_uf_cert_civil, $this->cartorio_cert_civil, $this->num_cart_trabalho, $this->serie_cart_trabalho, $this->data_emissao_cart_trabalho, $this->sigla_uf_cart_trabalho, $this->num_tit_eleitor, $this->zona_tit_eleitor, $this->secao_tit_eleitor, $this->idorg_exp_rg);
         if (!$ObjDocumento->edita()) {
             return FALSE;
         }
     } else {
         $ObjDocumento = new clsDocumento($this->ref_idpes, $this->rg, $this->data_exp_rg, $this->sigla_uf_exp_rg, $this->tipo_cert_civil, $this->num_termo, $this->num_livro, $this->num_folha, $this->data_emissao_cert_civil, $this->sigla_uf_cert_civil, $this->cartorio_cert_civil, $this->num_cart_trabalho, $this->serie_cart_trabalho, $this->data_emissao_cart_trabalho, $this->sigla_uf_cart_trabalho, $this->num_tit_eleitor, $this->zona_tit_eleitor, $this->secao_tit_eleitor, $this->idorg_exp_rg);
         if (!$ObjDocumento->cadastra()) {
             return FALSE;
         }
     }
     if ($this->foto && $this->foto['error'] == 0) {
         $this->foto = $this->geraFotos($this->foto['tmp_name']);
         $obj = new clsPmieducarAluno(NULL, $this->ref_cod_aluno_beneficio, $this->ref_cod_religiao, $this->pessoa_logada, $this->pessoa_logada, $this->ref_idpes, NULL, NULL, 1, $this->foto, $this->analfabeto, $this->nm_pai, $this->nm_mae);
         $obj_det = $obj->detalhe();
         if ($obj_det) {
             if ($obj_det['caminho_foto']) {
                 $this->caminho_foto = $obj_det['caminho_foto'];
             }
             $this->foto_excluida = 1;
         }
     } elseif ($this->foto_excluida == 1) {
         $this->foto = 'NULL';
     } elseif (!$this->foto_excluida) {
         $this->foto = $this->foto_antiga;
     }
     if ($this->foto_excluida) {
         if (file_exists('arquivos/educar/aluno/big/' . $this->caminho_foto)) {
             unlink('arquivos/educar/aluno/big/' . $this->caminho_foto);
         }
         if (file_exists('arquivos/educar/aluno/small/' . $this->caminho_foto)) {
             unlink('arquivos/educar/aluno/small/' . $this->caminho_foto);
         }
         if (file_exists('arquivos/educar/aluno/original/' . $this->caminho_foto)) {
             unlink('arquivos/educar/aluno/original/' . $this->caminho_foto);
         }
     }
     if (is_numeric($this->idpes_mae) && $this->idpes_mae != 'NULL') {
         $this->nm_mae = 'NULL';
     }
     if (is_numeric($this->idpes_pai) && $this->idpes_pai != 'NULL') {
         $this->nm_pai = 'NULL';
     }
     if (!$this->cod_aluno) {
         $obj = new clsPmieducarAluno(NULL, $this->ref_cod_aluno_beneficio, $this->ref_cod_religiao, $this->pessoa_logada, $this->pessoa_logada, $this->ref_idpes, NULL, NULL, 1, $this->foto, $this->analfabeto, $this->nm_pai, $this->nm_mae, $this->tipo_responsavel);
         if ($this->ref_idpes) {
             if ($obj->existePessoa()) {
                 $aluno = $obj->edita();
                 $this->cod_aluno = $aluno['cod_aluno'];
             } else {
                 $this->cod_aluno = $obj->cadastra();
             }
         }
     } else {
         $obj = new clsPmieducarAluno($this->cod_aluno, $this->ref_cod_aluno_beneficio, $this->ref_cod_religiao, $this->pessoa_logada, $this->pessoa_logada, $this->ref_idpes, NULL, NULL, 1, $this->foto, $this->analfabeto, $this->nm_pai, $this->nm_mae, $this->tipo_responsavel);
         if ($this->ref_idpes) {
             if ($obj->existePessoa()) {
                 $obj->edita();
             } else {
                 $obj->cadastra();
             }
         }
     }
     // Atualiza a informação de uso de transporte escolar.
     $this->_cadastraTransporte($this->cod_aluno, $this->transporte_aluno, $this->transporte_responsavel, $this->pessoa_logada);
     header('Location: educar_aluno_det.php?cod_aluno=' . $this->cod_aluno);
     die;
 }
Пример #9
0
 protected function loadAlunoByPessoaId($id)
 {
     $aluno = new clsPmieducarAluno();
     $aluno->ref_idpes = $id;
     return $aluno->detalhe();
 }
Пример #10
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 renderHTML()
    {
        if ($_POST) {
            foreach ($_POST as $key => $value) {
                $this->{$key} = $value;
            }
        }
        if (!$_POST) {
            echo '<script>
	     			alert("Erro ao gerar relatório!\\nNão existem dados!");
	     			window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1));
	     		</script>';
            return true;
        }
        if (empty($this->cursos)) {
            echo '<script>
	     			alert("Erro ao gerar relatório!\\nNenhum curso selecionado!");
	     			window.location = window.location;
	     		</script>';
            return true;
        }
        if ($this->ref_cod_escola) {
            $obj_escola = new clsPmieducarEscola($this->ref_cod_escola);
            $det_escola = $obj_escola->detalhe();
            $this->nm_escola = $det_escola['nome'];
            $obj_instituicao = new clsPmieducarInstituicao($det_escola['ref_cod_instituicao']);
            $det_instituicao = $obj_instituicao->detalhe();
            $this->nm_instituicao = $det_instituicao['nm_instituicao'];
        }
        $obj_calendario = new clsPmieducarEscolaAnoLetivo();
        $lista_calendario = $obj_calendario->lista($this->ref_cod_escola, $this->ano, null, null, null, null, null, null, null, 1, null);
        if (!$lista_calendario) {
            echo '<script>
	     			alert("Escola não possui calendário definido para este ano");
	     			window.location = window.location;
	     		</script>';
            return true;
        }
        //$calendario = array_shift($lista_calendario);
        $obj_cal_ano_letivo = new clsPmieducarCalendarioAnoLetivo();
        $lst_cal_ano_letivo = $obj_cal_ano_letivo->lista(null, $this->ref_cod_escola, null, null, $this->ano, null, null, null, null, 1, null, $this->ref_cod_instituicao);
        $calendario = array_shift($lst_cal_ano_letivo);
        $obj_calendario_dia = new clsPmieducarCalendarioDia();
        $lista_dias = $obj_calendario_dia->lista($calendario['cod_calendario_ano_letivo'], $this->mes, null, null, null, null, null, null, null, 1);
        $dias_mes = array();
        if ($lista_dias) {
            foreach ($lista_dias as $dia) {
                $obj_motivo = new clsPmieducarCalendarioDiaMotivo($dia['ref_cod_calendario_dia_motivo']);
                $det_motivo = $obj_motivo->detalhe();
                $dias_mes[$dia['dia']] = strtolower($det_motivo['tipo']);
            }
        }
        //Dias previstos do mes
        // Qual o primeiro dia do mes
        $primeiroDiaDoMes = mktime(0, 0, 0, $this->mes, 1, $this->ano);
        // Quantos dias tem o mes
        $NumeroDiasMes = date('t', $primeiroDiaDoMes);
        //informacoes primeiro dia do mes
        $dateComponents = getdate($primeiroDiaDoMes);
        // What is the name of the month in question?
        $NomeMes = $mesesDoAno[$dateComponents['mon']];
        // What is the index value (0-6) of the first day of the
        // month in question.
        $DiaSemana = $dateComponents['wday'];
        //total de dias uteis + dias extra-letivos - dia nao letivo - fim de semana
        $this->totalDiasUteis = 0;
        $obj_ano_letivo_modulo = new clsPmieducarAnoLetivoModulo();
        $inicio_ano = $obj_ano_letivo_modulo->menorData($this->ano, $this->ref_cod_escola);
        $inicio_ano = explode("-", $inicio_ano);
        for ($dia = 1; $dia <= $NumeroDiasMes; $dia++) {
            if ($DiaSemana >= 7) {
                $DiaSemana = 0;
            }
            if ($this->mes == $inicio_ano[1]) {
                if ($dia >= $inicio_ano[2]) {
                    if ($DiaSemana != 0 && $DiaSemana != 6) {
                        if (!(key_exists($dia, $dias_mes) && $dias_mes[$dia] == strtolower('n'))) {
                            $this->totalDiasUteis++;
                        }
                    } elseif (key_exists($dia, $dias_mes) && $dias_mes[$dia] == strtolower('e')) {
                        $this->totalDiasUteis++;
                    }
                }
            } else {
                if ($DiaSemana != 0 && $DiaSemana != 6) {
                    if (!(key_exists($dia, $dias_mes) && $dias_mes[$dia] == strtolower('n'))) {
                        $this->totalDiasUteis++;
                    }
                } elseif (key_exists($dia, $dias_mes) && $dias_mes[$dia] == strtolower('e')) {
                    $this->totalDiasUteis++;
                }
            }
            $DiaSemana++;
        }
        $cursos_in = '';
        $conc = '';
        foreach ($this->cursos as $curso) {
            $cursos_in .= "{$conc}{$curso}";
            $conc = ",";
        }
        $this->pdf = new clsPDF("Movimentação Mensal de Alunos - {$this->ano}", "Movimentação Mensal de Alunos - {$this->ano}", "A4", "", false, false);
        $this->pdf->largura = 842.0;
        $this->pdf->altura = 595.0;
        $fonte = 'arial';
        $corTexto = '#000000';
        $altura_linha = 23;
        $inicio_escrita_y = 175;
        $this->pdf->OpenPage();
        $this->addCabecalho();
        $this->novoCabecalho();
        $quantidade_total = array();
        foreach ($this->cursos as $curso) {
            //busca todas as series de um curso
            $obj_serie_cursos = new clsPmieducarSerie();
            $lista_serie_cursos = $obj_serie_cursos->lista(null, null, null, $curso, null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao);
            $total_turmas_curso = 0;
            $total_curso = array();
            for ($a = 0; $a < 30; $a++) {
                $total_curso[$a] = 0;
            }
            if ($lista_serie_cursos) {
                for ($a = 0; $a < 30; $a++) {
                    $total_serie[$a] = 0;
                }
                foreach ($lista_serie_cursos as $serie) {
                    $total_serie = array();
                    //nome da serie
                    $nm_serie = $serie['nm_serie'];
                    //MATRICULA INICIAL
                    //busca todas turmas de cada serie
                    $obj_serie_turmas = new clsPmieducarTurma();
                    $obj_serie_turmas->setOrderby("nm_turma");
                    $lista_serie_turmas = $obj_serie_turmas->lista(null, null, null, $serie['cod_serie'], $this->ref_cod_escola, null, null, null, null, null, null, null, null, null, 1, null, null, null, null, null, null, null, null, null);
                    //total de turmas de uma serie
                    $total_turmas_curso += $total_turmas_serie = $obj_serie_turmas->_total;
                    if ($lista_serie_turmas) {
                        $quantidades = array();
                        foreach ($lista_serie_turmas as $turma) {
                            //professor regente da turma
                            $obj_servidor = new clsPessoa_($turma['ref_cod_regente']);
                            $det_sevidor = $obj_servidor->detalhe();
                            $nm_servidor = $det_sevidor['nome'];
                            //nome da turma de uma serie
                            $nm_turma = $turma['nm_turma'];
                            if ($turma['hora_inicial'] <= '12:00') {
                                $turno = 'M';
                            } elseif ($turma['hora_inicial'] > '12:00' && $turma['hora_inicial'] <= '18:00') {
                                $turno = 'V';
                            } else {
                                $turno = 'N';
                            }
                            $depurar = false;
                            if (trim($turma["nm_turma"]) == "202") {
                                //								$depurar=true;
                            }
                            /**
                             * busca todos os alunos que foram matriculados nos meses anteriores ao atual
                             */
                            $obj_matriculas = new clsPmieducarMatriculaTurma();
                            //$lista_matriculas = $obj_matriculas->lista(null,$turma['cod_turma'],null,null,null,null,null,null,1,$serie['cod_serie'],$curso,$this->ref_cod_escola,$this->ref_cod_instituicao,null,null,array( 1, 2, 3 ),((int)$this->mes === 1 ) ? $this->mes + 1: $this->mes,null,$this->ano );
                            //$lista_matriculas = $obj_matriculas->lista(null,$turma['cod_turma'],null,null,null,null,null,null,null,$serie['cod_serie'],$curso,$this->ref_cod_escola,$this->ref_cod_instituicao,null,null,null,((int)$this->mes === 1 ) ? $this->mes + 1: $this->mes,null,$this->ano );
                            $lista_matriculas = $obj_matriculas->lista(null, $turma['cod_turma'], null, null, null, null, null, null, null, $serie['cod_serie'], $curso, $this->ref_cod_escola, $this->ref_cod_instituicao, null, null, null, null, null, $this->ano, null, null, null, null, true, null, $this->mes, null, null, null, null, $depurar);
                            $total_matriculas_turma = $obj_matriculas->_total;
                            $total_matriculas_turma_masculino = 0;
                            $total_matriculas_turma_feminino = 0;
                            if ($lista_matriculas) {
                                foreach ($lista_matriculas as $matricula) {
                                    $obj_matricula = new clsPmieducarMatricula($matricula['ref_cod_matricula']);
                                    $det_matricula = $obj_matricula->detalhe();
                                    $obj_aluno = new clsPmieducarAluno($det_matricula['ref_cod_aluno']);
                                    $det_aluno = $obj_aluno->detalhe();
                                    $obj_pessoa = new clsFisica($det_aluno['ref_idpes']);
                                    $det_pessoa = $obj_pessoa->detalhe();
                                    if (strtoupper($det_pessoa['sexo']) == 'M') {
                                        $total_matriculas_turma_masculino++;
                                    } else {
                                        $total_matriculas_turma_feminino++;
                                    }
                                }
                            }
                            //quantidades matricula inicial
                            //							M
                            $quantidades[0] = $total_matriculas_turma_masculino;
                            //							F
                            $quantidades[1] = $total_matriculas_turma_feminino;
                            //							T
                            $quantidades[2] = $total_matriculas_turma;
                            $db3 = new clsBanco();
                            if (trim($turma["nm_turma"]) == "304") {
                                //								echo "<pre>"; print_r($quantidades);// die();
                            }
                            /*Array
                            (
                                [0] => 15
                                [1] => 14
                                [2] => 29
                            )
                            EL. ENTURMACAO 48743          2
                            EL. TRANSFERENCIA 48775                    1
                            AD ENTURMACAO 48816       4
                            EL. TRANSFERENCIA 54097                    1
                            AD ENTURMACAO 54962       4
                            AD ENTURMACAO 55101       4
                            AD TRANSFERENCIA 57059          3
                            AD TRANSFERENCIA 57070          3*/
                            //							echo $turma["cod_turma"]."<br>";
                            //sql para pegar o numero de alunos que
                            // abandonaram e diminuir da soma final
                            /*$sql = "SELECT COUNT(0) FROM
                            					pmieducar.matricula m,
                            					pmieducar.matricula_turma mt,
                            					pmieducar.aluno a,
                            					cadastro.fisica f
                            				WHERE
                            					mt.ref_cod_turma = {$turma["cod_turma"]}
                            					AND mt.ativo = 1
                            					AND mt.ref_cod_matricula = m.cod_matricula
                            					AND m.ref_cod_aluno = a.cod_aluno
                            					AND a.ref_idpes = f.idpes
                            					AND sexo = 'M'
                            					AND ano = {$this->ano}
                            					AND m.aprovado not in(1,2,3)
                            					AND ( to_char(mt.data_cadastro,'MM')::int = '{$this->mes}'
                            						  OR to_char(mt.data_exclusao,'MM')::int = '{$this->mes}')";
                            		$diminui_masc = (int)$db3->CampoUnico($sql);
                            		if ($depurar) {
                            			echo $sql."<br>";
                            		}
                            		$sql = "SELECT COUNT(0) FROM
                            					pmieducar.matricula m,
                            					pmieducar.matricula_turma mt,
                            					pmieducar.aluno a,
                            					cadastro.fisica f
                            				WHERE
                            					mt.ref_cod_turma = {$turma["cod_turma"]}
                            					AND mt.ativo = 1
                            					AND mt.ref_cod_matricula = m.cod_matricula
                            					AND m.ref_cod_aluno = a.cod_aluno
                            					AND a.ref_idpes = f.idpes
                            					AND sexo = 'F'
                            					AND ano = {$this->ano}
                            					AND m.aprovado not in(1,2,3)
                            					AND ( to_char(mt.data_cadastro,'MM')::int = '{$this->mes}'
                            							OR to_char(mt.data_exclusao,'MM')::int = '{$this->mes}')";
                            		$diminui_fem = (int)$db3->CampoUnico($sql);			*/
                            //							$depurar = false;
                            if ($depurar || $turma["nm_turma"] == "304") {
                                //								die($sql);
                                //								$depurar = true;
                            }
                            //							$diminui_fem = $diminui_masc = 0;
                            //							ENTURMACAO
                            /**
                             * seleciona todas as matriculas com data_* no mes atual
                             */
                            $sql_complemento = "OR (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tEXISTS (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tSELECT 1 FROM pmieducar.transferencia_solicitacao ts WHERE ts.ativo = 1 AND\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t to_char(ts.data_transferencia,'MM')::int = {$this->mes} AND\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t ts.ref_cod_matricula_saida = m.cod_matricula\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t\t)";
                            $sql_complemento = "";
                            if ($depurar) {
                                //								$sql_complemento1 = "AND m.cod_matricula NOT IN (48743, 48775, 48816, 54097, 54962, 55101, 57059, 57070)";
                                //								$sql_complemento1 = "AND m.cod_matricula NOT IN (48743, 48775, 48816, 54097, 54962, 55101, 57059)";
                            }
                            $db = new clsBanco();
                            $consulta = "SELECT\n\t\t\t\t\t\t\t\t\t\t\tDISTINCT mt.ref_cod_matricula, mt.sequencial, mt.ativo\n\t\t\t\t\t\t\t\t\t\t FROM\n\t\t\t\t\t\t\t\t\t\t \tpmieducar.matricula_turma mt\n\t\t\t\t\t\t\t\t\t\t \t,pmieducar.matricula m\n\t\t\t\t\t\t\t\t\t\t WHERE\n\t\t\t\t\t\t\t\t\t\t \tmt.ref_cod_matricula = m.cod_matricula\n\t\t\t\t\t\t\t\t\t\t \tAND m.ano = {$this->ano}\n\t\t\t\t\t\t\t\t\t\t \tAND m.ativo = 1\n\t\t\t\t\t\t\t\t\t\t \tAND mt.ref_cod_turma = {$turma["cod_turma"]}\n\t\t\t\t\t\t\t\t\t\t \tAND (\tto_char(mt.data_cadastro,'MM')::int = {$this->mes}\n\t\t\t\t\t\t\t\t\t\t \t\tOR\n\t\t\t\t\t\t\t\t\t\t \t\t\tto_char(mt.data_exclusao,'MM')::int = {$this->mes}\n\t\t\t\t\t\t\t\t\t\t \t\t\t{$sql_complemento}\n\t\t\t\t\t\t\t\t\t\t \t\t)\n\t\t\t\t\t\t\t\t\t\t \tORDER BY\n\t\t\t\t\t\t\t\t\t\t \t\t1, 2, ativo";
                            $depurar = false;
                            if ($depurar || trim($turma["nm_turma"]) == "202") {
                                //								$depurar = true;
                            }
                            $db->Consulta($consulta);
                            $total_admitido_enturmacao = 0;
                            $total_admitido_enturmacao_masc = 0;
                            $total_admitido_enturmacao_fem = 0;
                            $total_eliminado_enturmacao = 0;
                            $total_eliminado_enturmacao_masc = 0;
                            $total_eliminado_enturmacao_fem = 0;
                            $total_reclassificacao = 0;
                            $total_admitido_reclassificao = 0;
                            $total_admitido_reclassificao_masc = 0;
                            $total_admitido_reclassificao_fem = 0;
                            $total_eliminado_reclassificacao = 0;
                            $total_eliminado_reclassificacao_masc = 0;
                            $total_eliminado_reclassificacao_fem = 0;
                            $total_transferencia = 0;
                            $total_admitido_transferencia = 0;
                            $total_admitido_transferencia_masc = 0;
                            $total_admitido_transferencia_fem = 0;
                            $total_eliminado_transferencia = 0;
                            $total_eliminado_transferencia_masc = 0;
                            $total_eliminado_transferencia_fem = 0;
                            $total_abandono = 0;
                            //$diminui_fem + $diminui_masc;
                            $total_abandono_masc = 0;
                            //$diminui_masc;
                            $total_abandono_fem = 0;
                            //$diminui_fem;
                            $diminui_fem = $diminui_masc = 0;
                            $total_aprovado = 0;
                            $total_aprovado_masc = 0;
                            $total_aprovado_fem = 0;
                            $matriculas_transferencia = array();
                            if ($db->Num_Linhas()) {
                                $db2 = new clsBanco();
                                while ($db->ProximoRegistro()) {
                                    list($cod_matricula, $sequencial, $ativo) = $db->Tupla();
                                    //									$depurar=false;
                                    if ($cod_matricula == 48743) {
                                        //										die("<br><br><br><br><br><br>".$ativo." ,______");
                                        //										$depurar=true;
                                    }
                                    $obj_matricula = new clsPmieducarMatricula($cod_matricula);
                                    $det_matricula = $obj_matricula->detalhe();
                                    $obj_aluno = new clsPmieducarAluno($det_matricula['ref_cod_aluno']);
                                    $det_aluno = $obj_aluno->detalhe();
                                    $obj_pessoa = new clsFisica($det_aluno['ref_idpes']);
                                    $det_pessoa = $obj_pessoa->detalhe();
                                    $sexo = strtoupper($det_pessoa['sexo']);
                                    $consulta = "SELECT ativo\n\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma mt1\n\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = '{$cod_matricula}'\n\t\t\t\t\t\t\t\t\t\t\t\t    AND sequencial = {$sequencial}\n\t\t\t\t\t\t\t\t\t\t\t\t\tAND ref_cod_turma = '{$turma['cod_turma']}'\n\t\t\t\t\t\t\t\t\t\t\t\t    AND (data_cadastro, COALESCE(data_exclusao,now())) = ( SELECT data_cadastro, COALESCE(data_exclusao,now())\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t FROM pmieducar.matricula_turma mt2\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE ref_cod_matricula IN ( SELECT cod_matricula\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  \t\t\t\t\t\t\t   FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  \t\t\t\t\t\t\t  WHERE ano = '{$this->ano}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  \t\t\t\t\t\t\t    AND ref_cod_aluno = ( SELECT DISTINCT ref_cod_aluno\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  \t\t\t\t\t\t\t  \t\t\t\t\t        FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  \t\t\t\t\t\t\t  \t\t\t\t\t       WHERE cod_matricula = '{$cod_matricula}' ) )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tORDER BY data_cadastro desc,data_exclusao desc\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tLIMIT 1 )\n\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t   )\n\t\t\t\t\t\t\t\t\t\t\t\tORDER BY data_cadastro desc,data_exclusao desc,ativo ";
                                    /*OR to_char( data_exclusao,'MM')::int = '{$this->mes}'*/
                                    $eh_ultima_matricula = $db2->CampoUnico($consulta);
                                    /**
                                     * nao eh a ultima matricula
                                     */
                                    //02-07-07
                                    //f(!is_numeric($eh_ultima_matricula) || $eh_ultima_matricula == 0 /*&& $eh_ultima_matricula != 0 && $eh_ultima_matricula != 1*/)
                                    if (!is_numeric($eh_ultima_matricula)) {
                                        $foi_admitido_transferencia = false;
                                        $foi_eliminado_transferencia = false;
                                        if ($cod_matricula == 48743) {
                                            //											die("<br><br><br><br><br><br>".$ativo." ,______");
                                            //											$depurar=true;
                                        }
                                        /**
                                         * verifica se for a primeira enturmacao
                                         * se ela esta marcada como reclassificacao
                                         */
                                        //echo "$cod_matricula-$sequencial<br>";
                                        $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma mt1\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND sequencial = {$sequencial}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ref_cod_turma = {$turma['cod_turma']}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND (data_cadastro, COALESCE(data_exclusao,now())) = ( SELECT data_cadastro, COALESCE(data_exclusao,now())\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t FROM pmieducar.matricula_turma mt2\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ref_cod_turma = {$turma['cod_turma']}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tORDER BY data_cadastro asc,data_exclusao asc\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tLIMIT 1 )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  )\n\t\t\t\t\t\t\t\t\t\t\t\t\tORDER BY data_cadastro asc,data_exclusao asc,ativo ";
                                        /*OR to_char( data_exclusao,'MM')::int = '{$this->mes}' */
                                        $eh_primeira_enturmacao_desta_matricula = $db2->CampoUnico($consulta);
                                        $consulta = "SELECT matricula_reclassificacao\n\t\t\t\t\t\t\t\t\t\t               FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t              WHERE cod_matricula = {$cod_matricula}";
                                        $matricula_reclassificacao = $db2->CampoUnico($consulta);
                                        //ref_cod_matricula_saida
                                        $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.transferencia_solicitacao\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula_entrada = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND ativo = 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t      OR to_char( data_exclusao,'MM')::int = '{$this->mes}' )";
                                        $existe_transferencia = $db2->CampoUnico($consulta);
                                        /**
                                         * verifica se eh a primeira matricula do aluno
                                         */
                                        $obj_matricula_aluno = new clsPmieducarMatricula();
                                        $lst_matricula_aluno = $obj_matricula_aluno->lista(null, null, null, null, null, null, $det_aluno['cod_aluno'], null, null, null, null, null, $this->ano);
                                        $eh_primeira_matricula_do_aluno = count($lst_matricula_aluno) == 1 ? 1 : 0;
                                        $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND matricula_transferencia = true AND to_char(data_cadastro,'MM')::int = {$this->mes}";
                                        $primeira_matricula_eh_transferencia = $db2->CampoUnico($consulta);
                                        $consulta = "SELECT max(sequencial)\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = {$cod_matricula}";
                                        $max_sequencial = $db2->CampoUnico($consulta);
                                        if (is_numeric($primeira_matricula_eh_transferencia)) {
                                            $matriculas_transferencia[$cod_matricula] = $cod_matricula;
                                            $total_admitido_transferencia++;
                                            if ($depurar) {
                                                echo "AD TRANSFERENCIA {$cod_matricula}  aquiiii<br>";
                                                $matriculas[] = $cod_matricula;
                                            }
                                            if ($sexo == 'M') {
                                                $total_admitido_transferencia_masc++;
                                            } else {
                                                $total_admitido_transferencia_fem++;
                                            }
                                        }
                                        if ($eh_primeira_enturmacao_desta_matricula && $matricula_reclassificacao) {
                                            if ($depurar) {
                                                $matriculas[] = $cod_matricula;
                                            }
                                            $total_admitido_reclassificao++;
                                            if ($sexo == 'M') {
                                                $total_admitido_reclassificao_masc++;
                                            } else {
                                                $total_admitido_reclassificao_fem++;
                                            }
                                        } elseif ($eh_primeira_enturmacao_desta_matricula && $existe_transferencia || $eh_primeira_enturmacao_desta_matricula && $eh_primeira_matricula_do_aluno && $primeira_matricula_eh_transferencia) {
                                            if (is_numeric($existe_transferencia) && $existe_transferencia == 1) {
                                                if ($depurar) {
                                                    echo "AD TRANSFERENCIA {$cod_matricula}  1<br>";
                                                    $matriculas[] = $cod_matricula;
                                                }
                                                if (!is_numeric(array_search($cod_matricula, $matriculas_transferencia))) {
                                                    $total_admitido_transferencia++;
                                                    if ($sexo == 'M') {
                                                        $total_admitido_transferencia_masc++;
                                                    } else {
                                                        $total_admitido_transferencia_fem++;
                                                    }
                                                    $foi_admitido_transferencia = true;
                                                }
                                            }
                                        } else {
                                            if (!is_numeric($primeira_matricula_eh_transferencia) && $ativo == 1) {
                                                if ($depurar) {
                                                    echo "AD ENTURMACAO {$cod_matricula}             1<br>";
                                                    $matriculas[] = $cod_matricula;
                                                }
                                                $total_admitido_enturmacao++;
                                                if ($sexo == 'M') {
                                                    $total_admitido_enturmacao_masc++;
                                                } else {
                                                    $total_admitido_enturmacao_fem++;
                                                }
                                            }
                                        }
                                        /**
                                         * verifica se eh a ultima enturmacao desta matricula
                                         */
                                        $consulta = "SELECT ref_cod_turma\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma mt1\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND sequencial = {$sequencial}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t AND (ref_cod_turma,sequencial) = (SELECT ref_cod_turma, max(sequencial)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t FROM pmieducar.matricula_turma mt2\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tgroup by ref_cod_turma,data_cadastro\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\torder by data_cadastro desc limit 1)";
                                        $ultima_turma_enturmacao = $db2->CampoUnico($consulta);
                                        if ($ultima_turma_enturmacao == $turma['cod_turma']) {
                                            $consulta = "SELECT aprovado\n\t\t\t\t\t\t\t\t\t\t\t               FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t\t              WHERE cod_matricula = {$cod_matricula}";
                                            $situacao = $db2->CampoUnico($consulta);
                                            $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.transferencia_solicitacao\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula_saida = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t    AND (ativo = 1 OR data_transferencia IS NOT NULL)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t      OR to_char( data_exclusao,'MM')::int = '{$this->mes}' )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND(to_char(data_transferencia,'MM')::int = '{$this->mes}' OR data_transferencia IS NULL)";
                                            $existe_transferencia = $db2->CampoUnico($consulta);
                                            if ($situacao <= 3 && is_numeric($existe_transferencia)) {
                                                //if($turma['cod_turma'] == 757)
                                                //	echo "1-$cod_matricula-$matricula_reclassificacao<br>";
                                                if ($ativo == 0) {
                                                    $total_eliminado_enturmacao++;
                                                    if ($depurar) {
                                                        echo "EL. ENTURMACAO {$cod_matricula}           1<br>";
                                                    }
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_enturmacao_masc++;
                                                    } else {
                                                        $total_eliminado_enturmacao_fem++;
                                                    }
                                                }
                                            } else {
                                                if ($situacao == 5) {
                                                    $total_eliminado_reclassificacao++;
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_reclassificacao_masc++;
                                                    } else {
                                                        $total_eliminado_reclassificacao_fem++;
                                                    }
                                                }
                                                if ($situacao == 4 && is_numeric($existe_transferencia)) {
                                                    $total_eliminado_transferencia++;
                                                    if ($depurar) {
                                                        echo "EL. TRANSFERENCIA " . $cod_matricula . "                    1<br>";
                                                    }
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_transferencia_masc++;
                                                    } else {
                                                        $total_eliminado_transferencia_fem++;
                                                    }
                                                    /**
                                                     * se for a primeira enturmacao mesmo que tenha
                                                     * sido eliminado deve contabilizar uma
                                                     * admissao por enturmacao
                                                     */
                                                    if ($eh_primeira_enturmacao_desta_matricula && !$primeira_matricula_eh_transferencia && !$foi_admitido_transferencia) {
                                                        //if($turma['cod_turma'] == 40)
                                                        //echo "1-$cod_matricula<br>";
                                                        echo "AD ENTURMACAO {$cod_matricula}             aaaaaaaaaaaaaa<br>";
                                                        $total_admitido_enturmacao++;
                                                        if ($sexo == 'M') {
                                                            $total_admitido_enturmacao_masc++;
                                                        } else {
                                                            $total_admitido_enturmacao_fem++;
                                                        }
                                                    }
                                                } elseif ($situacao == 6) {
                                                    $total_abandono++;
                                                    if ($sexo == 'M') {
                                                        $total_abandono_masc++;
                                                    } else {
                                                        $total_abandono_fem++;
                                                    }
                                                } elseif ($situacao == 1) {
                                                    $total_aprovado++;
                                                    if ($sexo == 'M') {
                                                        $total_aprovado_masc++;
                                                    } else {
                                                        $total_aprovado_fem++;
                                                    }
                                                } elseif ($situacao == 4 && !is_numeric($existe_transferencia) && is_numeric($eh_primeira_enturmacao_desta_matricula) && !$primeira_matricula_eh_transferencia) {
                                                    //if($turma['cod_turma'] == 450)
                                                    //	echo "1-$cod_matricula<br>";
                                                    if ($depurar) {
                                                        echo "AD ENTURMACAO {$cod_matricula}       2<br>";
                                                        $matriculas[] = $cod_matricula;
                                                    }
                                                    $total_admitido_enturmacao++;
                                                    if ($sexo == 'M') {
                                                        $total_admitido_enturmacao_masc++;
                                                    } else {
                                                        $total_admitido_enturmacao_fem++;
                                                    }
                                                }
                                            }
                                        } else {
                                            if ($ativo == 0) {
                                                if ($sequencial <= $max_sequencial) {
                                                    //if($turma['cod_turma'] == 757)
                                                    //echo "2-$cod_matricula-$matricula_reclassificacao<br>";
                                                    $total_eliminado_enturmacao++;
                                                    if ($depurar) {
                                                        echo "EL. ENTURMACAO {$cod_matricula}          2<br>";
                                                    }
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_enturmacao_masc++;
                                                    } else {
                                                        $total_eliminado_enturmacao_fem++;
                                                    }
                                                    if (is_numeric($eh_primeira_enturmacao_desta_matricula) && !$existe_transferencia && !$matricula_reclassificacao) {
                                                        if ($depurar) {
                                                            echo "AD ENTURMACAO {$cod_matricula}       3<br>";
                                                            $matriculas[] = $cod_matricula;
                                                        }
                                                        $total_admitido_enturmacao++;
                                                        if ($sexo == 'M') {
                                                            $total_admitido_enturmacao_masc++;
                                                        } else {
                                                            $total_admitido_enturmacao_fem++;
                                                        }
                                                    }
                                                } elseif (is_numeric($eh_primeira_enturmacao_desta_matricula)) {
                                                    if ($primeira_matricula_eh_transferencia) {
                                                        if ($depurar) {
                                                            echo "AD TRANSFERENCIAAA {$cod_matricula}            2<BR>";
                                                            $matriculas[] = $cod_matricula;
                                                        }
                                                        if (!is_numeric(array_search($cod_matricula, $matriculas_transferencia))) {
                                                            $total_admitido_transferencia++;
                                                            if ($sexo == 'M') {
                                                                $total_admitido_transferencia_masc++;
                                                            } else {
                                                                $total_admitido_transferencia_fem++;
                                                            }
                                                        }
                                                    } elseif (!$existe_transferencia && !$matricula_reclassificacao) {
                                                        if ($depurar) {
                                                            echo "AD ENTURMACAO {$cod_matricula}       3<br>";
                                                            $matriculas[] = $cod_matricula;
                                                        }
                                                        $total_admitido_enturmacao++;
                                                        if ($sexo == 'M') {
                                                            $total_admitido_enturmacao_masc++;
                                                        } else {
                                                            $total_admitido_enturmacao_fem++;
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    } else {
                                        //echo "ref_cod_matricula = $cod_matricula
                                        //AND sequencial = $sequencial";
                                        $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma mt1\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND sequencial = {$sequencial}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ref_cod_turma = {$turma['cod_turma']}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND (data_cadastro, COALESCE(data_exclusao,now())) = ( SELECT data_cadastro, COALESCE(data_exclusao,now())\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t FROM pmieducar.matricula_turma mt2\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tORDER BY data_cadastro asc,data_exclusao asc\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tLIMIT 1 )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tORDER BY data_cadastro asc,data_exclusao asc,ativo ";
                                        /*OR to_char( data_exclusao,'MM')::int = '{$this->mes}'*/
                                        $eh_primeira_enturmacao_desta_matricula = $db2->CampoUnico($consulta);
                                        $consulta = "SELECT matricula_reclassificacao\n\t\t\t\t\t\t\t\t\t\t               FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t              WHERE cod_matricula = {$cod_matricula}";
                                        $matricula_reclassificacao = $db2->CampoUnico($consulta);
                                        /**
                                         * verifica se eh a primeira matricula do aluno
                                         */
                                        $obj_matricula_aluno = new clsPmieducarMatricula();
                                        $lst_matricula_aluno = $obj_matricula_aluno->lista(null, null, null, null, null, null, $det_aluno['cod_aluno']);
                                        $eh_primeira_matricula_do_aluno = count($lst_matricula_aluno) == 1 ? 1 : 0;
                                        $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND matricula_transferencia = true";
                                        $primeira_matricula_eh_transferencia = $db2->CampoUnico($consulta);
                                        if (is_numeric($primeira_matricula_eh_transferencia)) {
                                            $matriculas_transferencia[$cod_matricula] = $cod_matricula;
                                            $total_admitido_transferencia++;
                                            if ($sexo == 'M') {
                                                $total_admitido_transferencia_masc++;
                                            } else {
                                                $total_admitido_transferencia_fem++;
                                            }
                                        }
                                        if ($eh_primeira_enturmacao_desta_matricula && $matricula_reclassificacao) {
                                            $total_admitido_reclassificao++;
                                            if ($depurar) {
                                                $matriculas[] = $cod_matricula;
                                            }
                                            if ($sexo == 'M') {
                                                $total_admitido_reclassificao_masc++;
                                            } else {
                                                $total_admitido_reclassificao_fem++;
                                            }
                                        } else {
                                            $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.transferencia_solicitacao\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula_entrada = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t    AND ativo = 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t      OR to_char( data_exclusao,'MM')::int = '{$this->mes}' )";
                                            $existe_transferencia = (int) $db2->CampoUnico($consulta);
                                            //if($turma['cod_turma'] == 33 && $existe_transferencia)
                                            //	echo "$cod_matricula<br>";
                                            if (is_numeric($eh_primeira_enturmacao_desta_matricula) && $existe_transferencia && $existe_transferencia == 1 || is_numeric($eh_primeira_enturmacao_desta_matricula) && $eh_primeira_matricula_do_aluno && $primeira_matricula_eh_transferencia) {
                                                if ($depurar) {
                                                    echo "AD TRANSFERENCIA {$cod_matricula}          3<br>";
                                                    $matriculas[] = $cod_matricula;
                                                }
                                                if (!is_numeric(array_search($cod_matricula, $matriculas_transferencia))) {
                                                    $total_admitido_transferencia++;
                                                    if ($sexo == 'M') {
                                                        $total_admitido_transferencia_masc++;
                                                    } else {
                                                        $total_admitido_transferencia_fem++;
                                                    }
                                                }
                                            } else {
                                                //if($det_matricula['aprovado'] != 4)
                                                //												{
                                                //if($turma['cod_turma'] == 450)
                                                //echo "2-$cod_matricula<br>";
                                                if (!is_numeric($primeira_matricula_eh_transferencia)) {
                                                    $total_admitido_enturmacao++;
                                                    if ($depurar) {
                                                        echo "AD ENTURMACAO {$cod_matricula}       4<br>";
                                                        $matriculas[] = $cod_matricula;
                                                    }
                                                    if ($sexo == 'M') {
                                                        $total_admitido_enturmacao_masc++;
                                                    } else {
                                                        $total_admitido_enturmacao_fem++;
                                                    }
                                                }
                                            }
                                        }
                                        /**
                                         * verifica se eh a ultima enturmacao desta matricula
                                         */
                                        $consulta = "SELECT ref_cod_turma\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma mt1\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND sequencial = {$sequencial}\n\t\t\t\t\t\t\t\t\t\t\t\t\t    AND sequencial = (SELECT max(sequencial)\n\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.matricula_turma mt2\n\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula = {$cod_matricula})\n\t\t\t\t\t\t\t\t\t\t\t\t\torder by data_cadastro desc limit 1";
                                        $ultima_turma_enturmacao = $db2->CampoUnico($consulta);
                                        //echo "$cod_matricula - $ultima_turma_enturmacao == {$turma['cod_turma']}";
                                        if ($ultima_turma_enturmacao == $turma['cod_turma']) {
                                            $consulta = "SELECT aprovado\n\t\t\t\t\t\t\t\t\t\t\t               FROM pmieducar.matricula\n\t\t\t\t\t\t\t\t\t\t\t              WHERE cod_matricula = {$cod_matricula}";
                                            $situacao = $db2->CampoUnico($consulta);
                                            if ($situacao <= 3) {
                                                if ($ativo == 0) {
                                                    //if($turma['cod_turma'] == 757)
                                                    //echo "3-$cod_matricula-$matricula_reclassificacao<br>";
                                                    $total_eliminado_enturmacao++;
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_enturmacao_masc++;
                                                    } else {
                                                        $total_eliminado_enturmacao_fem++;
                                                    }
                                                } else {
                                                    $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.transferencia_solicitacao\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula_saida = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t    AND (ativo = 1 OR data_transferencia IS NOT NULL)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t      OR to_char( data_exclusao,'MM')::int = '{$this->mes}' )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND(to_char(data_transferencia,'MM')::int = '{$this->mes}' OR data_transferencia IS NULL)";
                                                    $existe_transferencia = $db2->CampoUnico($consulta);
                                                    if (is_numeric($existe_transferencia) && $existe_transferencia == 1) {
                                                        $total_eliminado_transferencia++;
                                                        if ($depurar) {
                                                            echo "EL TRANSFERENCIA " . $cod_matricula . "              2<br>";
                                                        }
                                                        if ($sexo == 'M') {
                                                            $total_eliminado_transferencia_masc++;
                                                        } else {
                                                            $total_eliminado_transferencia_fem++;
                                                        }
                                                    }
                                                    //echo '<br>->'.$existe_transferencia = $db->CampoUnico($consulta);
                                                    //echo '<-<br>';
                                                }
                                            } else {
                                                //echo $turma['cod_turma'].'b';
                                                //echo "enter.$cod_matricula";
                                                $consulta = "SELECT 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   FROM pmieducar.transferencia_solicitacao\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  WHERE ref_cod_matricula_saida = {$cod_matricula}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND (ativo = 1 OR data_transferencia IS NOT NULL)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND ( to_char(data_cadastro,'MM')::int = '{$this->mes}'\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t      OR to_char( data_exclusao,'MM')::int = '{$this->mes}' )\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND(to_char(data_transferencia,'MM')::int = '{$this->mes}' OR data_transferencia IS NULL)";
                                                $existe_transferencia = $db2->CampoUnico($consulta);
                                                //echo $situacao.'<br>';
                                                //if($turma['cod_turma'] == 33)
                                                //echo "$cod_matricula<br>";
                                                if ($situacao == 5) {
                                                    $total_eliminado_reclassificacao++;
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_reclassificacao_masc++;
                                                    } else {
                                                        $total_eliminado_reclassificacao_fem++;
                                                    }
                                                } elseif (is_numeric($existe_transferencia) && $existe_transferencia == 1) {
                                                    $total_eliminado_transferencia++;
                                                    if ($depurar) {
                                                        echo "EL TRANSFERENCIA " . $cod_matricula . "           3<br>";
                                                    }
                                                    if ($sexo == 'M') {
                                                        $total_eliminado_transferencia_masc++;
                                                    } else {
                                                        $total_eliminado_transferencia_fem++;
                                                    }
                                                } elseif ($situacao == 6) {
                                                    $total_abandono++;
                                                    if ($sexo == 'M') {
                                                        $total_abandono_masc++;
                                                    } else {
                                                        $total_abandono_fem++;
                                                    }
                                                } elseif ($situacao == 1 || $situacao == 2) {
                                                    $total_aprovado++;
                                                    if ($sexo == 'M') {
                                                        $total_aprovado_masc++;
                                                    } else {
                                                        $total_aprovado_fem++;
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            //							die(implode(",",$matriculas));
                            //ADMITIDOS ativo = 1
                            //admitido por enturmacao no mes atual
                            //QUANTIDADES ENTURMACAO ADMITIDOS
                            //M
                            $quantidades[3] = $total_admitido_enturmacao_masc;
                            //F
                            $quantidades[4] = $total_admitido_enturmacao_fem;
                            //T
                            $quantidades[5] = $total_admitido_enturmacao;
                            //ELIMINADOS ativo = 0
                            //QUANTIDADES ENTURMACAO ELIMINADOS
                            //M
                            $quantidades[6] = $total_eliminado_enturmacao_masc;
                            //F
                            $quantidades[7] = $total_eliminado_enturmacao_fem;
                            //T
                            $quantidades[8] = $total_eliminado_enturmacao;
                            //RECLASSIFICACAO
                            //ADMITIDOS
                            //$obj_matriculas->_total = 0;
                            //$primeiroDiaDoMes = mktime(0,0,0,9,1,2006);
                            //   $NumeroDiasMes = date('t',$primeiroDiaDoMes);
                            //   $ultimoDiaMes =date('d/m/Y',mktime(0,0,0,9,$NumeroDiasMes,2006));
                            /**
                             * busca todas as matriculas marcadas como matricula_reclassificacao de uma serie de um curso
                             * em seguida busca todas as matriculas_turma da matricula_turma ordenado por data e pegando a primeira matricula de reclassificacao
                             * se essa matricula for igual a matricula atual do loop entao esta matricula
                             * é uma reclassificacao
                             */
                            //QUANTIDADES RECLASSIFICACAO ADMITIDOS
                            //M
                            $quantidades[9] = $total_admitido_reclassificao_masc;
                            //F
                            $quantidades[10] = $total_admitido_reclassificao_fem;
                            //T
                            $quantidades[11] = $total_admitido_reclassificao;
                            //ELIMINADOS
                            $obj_matriculas->_total = 0;
                            //QUANTIDADES RECLASSIFICACAO ELIMINADOS
                            //M
                            $quantidades[12] = $total_eliminado_reclassificacao_masc;
                            //F
                            $quantidades[13] = $total_eliminado_reclassificacao_fem;
                            //T
                            $quantidades[14] = $total_eliminado_reclassificacao;
                            //TRANSFERENCIA
                            //ADMITIDOS ativo = 1
                            //QUANTIDADES TRASNFERENCIA ADMITIDOS
                            //M
                            $quantidades[15] = $total_admitido_transferencia_masc;
                            //F
                            $quantidades[16] = $total_admitido_transferencia_fem;
                            //T
                            $quantidades[17] = $total_admitido_transferencia;
                            //ELIMINADOS aprovado = 4
                            //TRANSFERENCIA EXTERNA
                            //QUANTIDADES TRANFERENCIA EXTERNO ELIMINADOS
                            //M
                            $quantidades[18] = $total_eliminado_transferencia_masc;
                            //F
                            $quantidades[19] = $total_eliminado_transferencia_fem;
                            //T
                            $quantidades[20] = $total_eliminado_transferencia;
                            //ABANDONO
                            /*$db2 = new clsBanco();
                            							$consulta = "
                            										SELECT count(1)
                            											   FROM pmieducar.matricula_turma
                            												,pmieducar.matricula
                            											  WHERE cod_matricula = ref_cod_matricula
                            											    AND ref_cod_turma = {$turma['cod_turma']}
                            											    AND aprovado = 6
                            											    AND matricula_turma.ativo = 1
                            										            AND matricula.ativo = 1
                            												AND ( to_char( matricula_turma.data_cadastro,'MM')::int = {$this->mes}
                            												      OR to_char(  matricula_turma.data_exclusao,'MM')::int = {$this->mes} )
                            										";
                            
                            							$total_transf = $db2->CampoUnico($consulta)	;*/
                            //QUANTIDADES ABANDONO
                            //M
                            $quantidades[21] = $total_abandono_masc;
                            //F
                            $quantidades[22] = $total_abandono_fem;
                            //T
                            $quantidades[23] = $total_abandono;
                            //APROVADOS
                            //QUANTIDADES APROVADOS
                            //M
                            $quantidades[24] = $total_aprovado_masc;
                            //F
                            $quantidades[25] = $total_aprovado_fem;
                            //T
                            $quantidades[26] = $total_aprovado;
                            /**
                             * Inicio linha
                             */
                            $altura_linha = 18;
                            $this->pdf->quadrado_relativo(30, $this->page_y, 782, $altura_linha);
                            $largura_linha = 18;
                            for ($ct = 294; $ct < 294 + 30 * 17; $ct += $largura_linha) {
                                //159
                                $this->pdf->linha_relativa($ct, $this->page_y, 0, 18);
                            }
                            //n
                            $this->pdf->linha_relativa(50, $this->page_y, 0, 18);
                            //ciclo
                            $this->pdf->linha_relativa(134, $this->page_y, 0, 18);
                            //turno
                            $this->pdf->linha_relativa(149, $this->page_y, 0, 18);
                            //professor
                            $this->pdf->linha_relativa(275, $this->page_y, 0, 18);
                            $largura_linha = 18;
                            $index = 0;
                            for ($ct = 260; $ct < 260 + 26 * 18; $ct += $largura_linha * 3) {
                                $this->pdf->escreve_relativo($quantidades[$index] == 0 ? '' : $quantidades[$index], $ct, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                                $this->pdf->escreve_relativo($quantidades[$index + 1] == 0 ? '' : $quantidades[$index + 1], $ct + $largura_linha, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                                $this->pdf->escreve_relativo($quantidades[$index + 2], $ct + $largura_linha * 2, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                                $total_serie[$index] += $quantidades[$index];
                                $total_serie[$index + 1] += $quantidades[$index + 1];
                                $total_serie[$index + 2] += $quantidades[$index + 2];
                                $total_curso[$index] += $quantidades[$index];
                                $total_curso[$index + 1] += $quantidades[$index + 1];
                                $total_curso[$index + 2] += $quantidades[$index + 2];
                                $index += 3;
                            }
                            //							echo '<pre>';print_r($total_curso);
                            //matricula final
                            // ( MI + Adm.Entur + Adm.Recla + Adm1.Transf ) - ( Elim.Entur + Elim.Recla + Elim.Transf + Abandono )
                            $quantidades[27] = $quantidades[0] + $quantidades[3] + $quantidades[9] + $quantidades[15] - ($quantidades[6] + $quantidades[12] + $quantidades[18] + $quantidades[21]);
                            // - $diminui_masc;
                            //F
                            $quantidades[28] = $quantidades[1] + $quantidades[4] + $quantidades[10] + $quantidades[16] - ($quantidades[7] + $quantidades[13] + $quantidades[19] + $quantidades[22]);
                            // - $diminui_fem;
                            //T
                            $quantidades[29] = $quantidades[2] + $quantidades[5] + $quantidades[11] + $quantidades[17] - ($quantidades[8] + $quantidades[14] + $quantidades[20] + $quantidades[23]);
                            // - $diminui_fem - $diminui_masc;
                            $this->pdf->escreve_relativo($quantidades[$index], $ct, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                            $this->pdf->escreve_relativo($quantidades[$index + 1], $ct + $largura_linha, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                            $this->pdf->escreve_relativo($quantidades[$index + 2], $ct + $largura_linha * 2, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                            $total_serie[$index] += $quantidades[$index];
                            $total_serie[$index + 1] += $quantidades[$index + 1];
                            $total_serie[$index + 2] += $quantidades[$index + 2];
                            $total_curso[$index] += $quantidades[$index];
                            $total_curso[$index + 1] += $quantidades[$index + 1];
                            $total_curso[$index + 2] += $quantidades[$index + 2];
                            $expande = 24;
                            $numero_x = 12 + $expande;
                            $this->pdf->escreve_relativo("", $numero_x, $this->page_y + 3, 50, 50, $fonte, 7, $corTexto, 'left');
                            //posicao ciclo
                            $ciclo_x = $expande + 15;
                            $this->pdf->escreve_relativo("{$turma['nm_turma']}", $ciclo_x, $this->page_y + 3, 100, 50, $fonte, 7, $corTexto, 'center');
                            //posicao turno
                            $turno_x = $ciclo_x + $expande + 28;
                            $this->pdf->escreve_relativo("{$turno}", $turno_x, $this->page_y + 3, 100, 40, $fonte, 7, $corTexto, 'center');
                            $professor_x = 125 + $expande;
                            $this->pdf->escreve_relativo("{$nm_servidor}", $professor_x + 5, $this->page_y + 5, 100, 40, $fonte, 6, $corTexto, 'center');
                            $this->page_y += 18;
                            /**
                             * Fim linha
                             */
                            if ($this->page_y + $altura_linha > 498) {
                                $this->pdf->ClosePage();
                                $this->pdf->OpenPage();
                                $this->addCabecalho();
                                $this->novoCabecalho();
                            }
                        }
                    }
                    /**
                     * subtototal
                     */
                    $index = 0;
                    $altura_linha = 18;
                    $largura_linha = 18;
                    if ($lista_serie_turmas) {
                        $this->pdf->quadrado_relativo(30, $this->page_y, 782, $altura_linha);
                        for ($ct = 294; $ct < 294 + 30 * 17; $ct += $largura_linha) {
                            $this->pdf->linha_relativa($ct, $this->page_y, 0, 18);
                        }
                        $this->pdf->linha_relativa(50, $this->page_y, 0, 18);
                        $this->pdf->linha_relativa(275, $this->page_y, 0, 18);
                        for ($ct = 260; $ct < 260 + 30 * 18; $ct += $largura_linha * 3) {
                            $this->pdf->escreve_relativo($total_serie[$index], $ct, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                            $this->pdf->escreve_relativo($total_serie[$index + 1], $ct + $largura_linha, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                            $this->pdf->escreve_relativo($total_serie[$index + 2], $ct + $largura_linha * 2, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                            $index += 3;
                        }
                        $expande = 24;
                        $numero_x = 12 + $expande;
                        $this->pdf->escreve_relativo("{$total_turmas_serie}", $numero_x, $this->page_y + 3, 50, 50, $fonte, 7, $corTexto, 'left');
                        $professor_x = 40 + $expande;
                        $this->pdf->escreve_relativo("Subtotal {$nm_serie}", $professor_x + 5, $this->page_y + 3, 150, 40, $fonte, 7, $corTexto, 'center');
                        $this->page_y += 18;
                    }
                    /**
                     *
                     */
                    if ($this->page_y + $altura_linha > 498) {
                        $this->pdf->ClosePage();
                        $this->pdf->OpenPage();
                        $this->addCabecalho();
                        $this->novoCabecalho();
                    }
                }
                if ($total_curso[0] > 0) {
                    /**
                     * TOTAL CURSO
                     */
                    $altura_linha = 18;
                    $this->pdf->quadrado_relativo(30, $this->page_y, 782, $altura_linha);
                    for ($ct = 294; $ct < 294 + 30 * 17; $ct += $largura_linha) {
                        $this->pdf->linha_relativa($ct, $this->page_y, 0, 18);
                    }
                    //n
                    $this->pdf->linha_relativa(50, $this->page_y, 0, 18);
                    $this->pdf->linha_relativa(275, $this->page_y, 0, 18);
                    $index = 0;
                    for ($ct = 260; $ct < 260 + 30 * 18; $ct += $largura_linha * 3) {
                        $this->pdf->escreve_relativo($total_curso[$index], $ct, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                        $this->pdf->escreve_relativo($total_curso[$index + 1], $ct + $largura_linha, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                        $this->pdf->escreve_relativo($total_curso[$index + 2], $ct + $largura_linha * 2, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
                        $index += 3;
                    }
                    $expande = 24;
                    $numero_x = 12 + $expande;
                    $this->pdf->escreve_relativo("{$total_turmas_curso}", $numero_x, $this->page_y + 3, 50, 50, $fonte, 7, $corTexto, 'left');
                    $obj_curso = new clsPmieducarCurso($curso);
                    $det_curso = $obj_curso->detalhe();
                    $nm_curso = $det_curso['nm_curso'];
                    $professor_x = 40 + $expande;
                    $this->pdf->escreve_relativo("Total {$nm_curso}", $professor_x + 5, $this->page_y + 3, 150, 40, $fonte, 7, $corTexto, 'center');
                    $this->page_y += 18;
                }
                foreach ($total_curso as $key => $valor) {
                    $quantidade_total[$key] += $valor;
                }
                /**
                 *
                 */
                if ($this->page_y > 498) {
                    $this->pdf->ClosePage();
                    $this->pdf->OpenPage();
                    $this->addCabecalho();
                    $this->novoCabecalho();
                }
            }
        }
        $altura_linha = 18;
        $this->pdf->quadrado_relativo(30, $this->page_y, 782, $altura_linha);
        for ($ct = 294; $ct < 294 + 30 * 17; $ct += $largura_linha) {
            $this->pdf->linha_relativa($ct, $this->page_y, 0, 18);
        }
        //n
        $this->pdf->linha_relativa(50, $this->page_y, 0, 18);
        $this->pdf->linha_relativa(275, $this->page_y, 0, 18);
        $index = 0;
        for ($ct = 260; $ct < 260 + 30 * 18; $ct += $largura_linha * 3) {
            $this->pdf->escreve_relativo($quantidade_total[$index], $ct, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
            $this->pdf->escreve_relativo($quantidade_total[$index + 1], $ct + $largura_linha, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
            $this->pdf->escreve_relativo($quantidade_total[$index + 2], $ct + $largura_linha * 2, $this->page_y + 3, 50, 40, $fonte, 7, $corTexto, 'center');
            $index += 3;
        }
        $expande = 24;
        $numero_x = 12 + $expande;
        $this->pdf->escreve_relativo("{$total_turmas_curso}", $numero_x, $this->page_y + 3, 50, 50, $fonte, 7, $corTexto, 'left');
        $obj_curso = new clsPmieducarCurso($curso);
        $det_curso = $obj_curso->detalhe();
        $nm_curso = $det_curso['nm_curso'];
        $professor_x = 40 + $expande;
        $this->pdf->escreve_relativo("Total Geral", $professor_x + 20, $this->page_y + 3, 150, 40, $fonte, 7, $corTexto, 'center');
        $this->page_y += 18;
        $this->rodape();
        $this->pdf->ClosePage();
        //header( "location: " . $this->pdf->GetLink() );
        $this->pdf->CloseFile();
        $this->get_link = $this->pdf->GetLink();
        echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>";
        echo "<html><center>Se o download não iniciar automaticamente <br /><a target='blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n\t\t\t<span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\n\t\t\tClique na Imagem para Baixar o instalador<br><br>\n\t\t\t<a href=\"http://www.adobe.com.br/products/acrobat/readstep2.html\" target=\"new\"><br><img src=\"imagens/acrobat.gif\" width=\"88\" height=\"31\" border=\"0\"></a>\n\t\t\t</span>\n\t\t\t</center>";
    }
Пример #12
0
 function Gerar()
 {
     @session_start();
     $this->pessoa_logada = $_SESSION['id_pessoa'];
     session_write_close();
     $this->titulo = 'Aluno - Detalhe';
     $this->addBanner('imagens/nvp_top_intranet.jpg', 'imagens/nvp_vert_intranet.jpg', 'Intranet');
     $this->cod_aluno = $_GET['cod_aluno'];
     $tmp_obj = new clsPmieducarAluno($this->cod_aluno);
     $registro = $tmp_obj->detalhe();
     if (!$registro) {
         header('Location: educar_aluno_lst.php');
         die;
     } else {
         foreach ($registro as $key => $value) {
             $this->{$key} = $value;
         }
     }
     if ($this->ref_idpes) {
         $obj_pessoa_fj = new clsPessoaFj($this->ref_idpes);
         $det_pessoa_fj = $obj_pessoa_fj->detalhe();
         $obj_fisica = new clsFisica($this->ref_idpes);
         $det_fisica = $obj_fisica->detalhe();
         $obj_fisica_raca = new clsCadastroFisicaRaca();
         $lst_fisica_raca = $obj_fisica_raca->lista($this->ref_idpes);
         if ($lst_fisica_raca) {
             $det_fisica_raca = array_shift($lst_fisica_raca);
             $obj_raca = new clsCadastroRaca($det_fisica_raca['ref_cod_raca']);
             $det_raca = $obj_raca->detalhe();
         }
         $registro['nome_aluno'] = $det_pessoa_fj['nome'];
         $registro['cpf'] = int2IdFederal($det_fisica['cpf']);
         $registro['data_nasc'] = dataToBrasil($det_fisica['data_nasc']);
         $registro['sexo'] = $det_fisica['sexo'] == 'F' ? 'Feminino' : 'Masculino';
         $obj_estado_civil = new clsEstadoCivil();
         $obj_estado_civil_lista = $obj_estado_civil->lista();
         $lista_estado_civil = array();
         if ($obj_estado_civil_lista) {
             foreach ($obj_estado_civil_lista as $estado_civil) {
                 $lista_estado_civil[$estado_civil['ideciv']] = $estado_civil['descricao'];
             }
         }
         $registro['ideciv'] = $lista_estado_civil[$det_fisica['ideciv']->ideciv];
         $registro['email'] = $det_pessoa_fj['email'];
         $registro['url'] = $det_pessoa_fj['url'];
         $registro['nacionalidade'] = $det_fisica['nacionalidade'];
         $registro['naturalidade'] = $det_fisica['idmun_nascimento']->detalhe();
         $registro['naturalidade'] = $registro['naturalidade']['nome'];
         $registro['pais_origem'] = $det_fisica['idpais_estrangeiro']->detalhe();
         $registro['pais_origem'] = $registro['pais_origem']['nome'];
         $registro['ref_idpes_responsavel'] = $det_fisica['idpes_responsavel'];
         $this->idpes_pai = $det_fisica['idpes_pai'];
         $this->idpes_mae = $det_fisica['idpes_mae'];
         $this->nm_pai = $detalhe_aluno['nm_pai'];
         $this->nm_mae = $detalhe_aluno['nm_mae'];
         if ($this->idpes_pai) {
             $obj_pessoa_pai = new clsPessoaFj($this->idpes_pai);
             $det_pessoa_pai = $obj_pessoa_pai->detalhe();
             if ($det_pessoa_pai) {
                 $registro['nm_pai'] = $det_pessoa_pai['nome'];
                 // CPF
                 $obj_cpf = new clsFisica($this->idpes_pai);
                 $det_cpf = $obj_cpf->detalhe();
                 if ($det_cpf['cpf']) {
                     $this->cpf_pai = int2CPF($det_cpf['cpf']);
                 }
             }
         }
         if ($this->idpes_mae) {
             $obj_pessoa_mae = new clsPessoaFj($this->idpes_mae);
             $det_pessoa_mae = $obj_pessoa_mae->detalhe();
             if ($det_pessoa_mae) {
                 $registro['nm_mae'] = $det_pessoa_mae['nome'];
                 // CPF
                 $obj_cpf = new clsFisica($this->idpes_mae);
                 $det_cpf = $obj_cpf->detalhe();
                 if ($det_cpf['cpf']) {
                     $this->cpf_mae = int2CPF($det_cpf['cpf']);
                 }
             }
         }
         $registro['ddd_fone_1'] = $det_pessoa_fj['ddd_1'];
         $registro['fone_1'] = $det_pessoa_fj['fone_1'];
         $registro['ddd_fone_2'] = $det_pessoa_fj['ddd_2'];
         $registro['fone_2'] = $det_pessoa_fj['fone_2'];
         $registro['ddd_fax'] = $det_pessoa_fj['ddd_fax'];
         $registro['fone_fax'] = $det_pessoa_fj['fone_fax'];
         $registro['ddd_mov'] = $det_pessoa_fj['ddd_mov'];
         $registro['fone_mov'] = $det_pessoa_fj['fone_mov'];
         $obj_deficiencia_pessoa = new clsCadastroFisicaDeficiencia();
         $obj_deficiencia_pessoa_lista = $obj_deficiencia_pessoa->lista($this->ref_idpes);
         if ($obj_deficiencia_pessoa_lista) {
             $deficiencia_pessoa = array();
             foreach ($obj_deficiencia_pessoa_lista as $deficiencia) {
                 $obj_def = new clsCadastroDeficiencia($deficiencia['ref_cod_deficiencia']);
                 $det_def = $obj_def->detalhe();
                 $deficiencia_pessoa[$deficiencia['ref_cod_deficiencia']] = $det_def['nm_deficiencia'];
             }
         }
         $ObjDocumento = new clsDocumento($this->ref_idpes);
         $detalheDocumento = $ObjDocumento->detalhe();
         $registro['rg'] = $detalheDocumento['rg'];
         if ($detalheDocumento['data_exp_rg']) {
             $registro['data_exp_rg'] = date('d/m/Y', strtotime(substr($detalheDocumento['data_exp_rg'], 0, 19)));
         }
         $registro['sigla_uf_exp_rg'] = $detalheDocumento['sigla_uf_exp_rg'];
         $registro['tipo_cert_civil'] = $detalheDocumento['tipo_cert_civil'];
         $registro['num_termo'] = $detalheDocumento['num_termo'];
         $registro['num_livro'] = $detalheDocumento['num_livro'];
         $registro['num_folha'] = $detalheDocumento['num_folha'];
         if ($detalheDocumento['data_emissao_cert_civil']) {
             $registro['data_emissao_cert_civil'] = date('d/m/Y', strtotime(substr($detalheDocumento['data_emissao_cert_civil'], 0, 19)));
         }
         $registro['sigla_uf_cert_civil'] = $detalheDocumento['sigla_uf_cert_civil'];
         $registro['cartorio_cert_civil'] = $detalheDocumento['cartorio_cert_civil'];
         $registro['num_cart_trabalho'] = $detalheDocumento['num_cart_trabalho'];
         $registro['serie_cart_trabalho'] = $detalheDocumento['serie_cart_trabalho'];
         if ($detalheDocumento['data_emissao_cart_trabalho']) {
             $registro['data_emissao_cart_trabalho'] = date('d/m/Y', strtotime(substr($detalheDocumento['data_emissao_cart_trabalho'], 0, 19)));
         }
         $registro['sigla_uf_cart_trabalho'] = $detalheDocumento['sigla_uf_cart_trabalho'];
         $registro['num_tit_eleitor'] = $detalheDocumento['num_titulo_eleitor'];
         $registro['zona_tit_eleitor'] = $detalheDocumento['zona_titulo_eleitor'];
         $registro['secao_tit_eleitor'] = $detalheDocumento['secao_titulo_eleitor'];
         $registro['idorg_exp_rg'] = $detalheDocumento['ref_idorg_rg'];
         $obj_endereco = new clsPessoaEndereco($this->ref_idpes);
         if ($obj_endereco_det = $obj_endereco->detalhe()) {
             $registro['id_cep'] = $obj_endereco_det['cep']->cep;
             $registro['id_bairro'] = $obj_endereco_det['idbai']->idbai;
             $registro['id_logradouro'] = $obj_endereco_det['idlog']->idlog;
             $registro['numero'] = $obj_endereco_det['numero'];
             $registro['letra'] = $obj_endereco_det['letra'];
             $registro['complemento'] = $obj_endereco_det['complemento'];
             $registro['andar'] = $obj_endereco_det['andar'];
             $registro['apartamento'] = $obj_endereco_det['apartamento'];
             $registro['bloco'] = $obj_endereco_det['bloco'];
             $registro['nm_logradouro'] = $obj_endereco_det['logradouro'];
             $registro['cep_'] = int2CEP($registro['id_cep']);
             $obj_bairro = new clsBairro($registro['id_bairro']);
             $obj_bairro_det = $obj_bairro->detalhe();
             if ($obj_bairro_det) {
                 $registro['nm_bairro'] = $obj_bairro_det['nome'];
             }
             $obj_log = new clsLogradouro($registro['id_logradouro']);
             $obj_log_det = $obj_log->detalhe();
             if ($obj_log_det) {
                 $registro['nm_logradouro'] = $obj_log_det['nome'];
                 $registro['idtlog'] = $obj_log_det['idtlog']->detalhe();
                 $registro['idtlog'] = $registro['idtlog']['descricao'];
                 $obj_mun = new clsMunicipio($obj_log_det['idmun']);
                 $det_mun = $obj_mun->detalhe();
                 if ($det_mun) {
                     $registro['cidade'] = ucfirst(strtolower($det_mun['nome']));
                 }
             }
             $obj_bairro = new clsBairro($registro["id_bairro"]);
             $obj_bairro_det = $obj_bairro->detalhe();
             if ($obj_bairro_det) {
                 $registro['nm_bairro'] = $obj_bairro_det['nome'];
             }
         } else {
             $obj_endereco = new clsEnderecoExterno($this->ref_idpes);
             if ($obj_endereco_det = $obj_endereco->detalhe()) {
                 $registro['id_cep'] = $obj_endereco_det['cep'];
                 $registro['cidade'] = $obj_endereco_det['cidade'];
                 $registro['nm_bairro'] = $obj_endereco_det['bairro'];
                 $registro['nm_logradouro'] = $obj_endereco_det['logradouro'];
                 $registro['numero'] = $obj_endereco_det['numero'];
                 $registro['letra'] = $obj_endereco_det['letra'];
                 $registro['complemento'] = $obj_endereco_det['complemento'];
                 $registro['andar'] = $obj_endereco_det['andar'];
                 $registro['apartamento'] = $obj_endereco_det['apartamento'];
                 $registro['bloco'] = $obj_endereco_det['bloco'];
                 $registro['idtlog'] = $obj_endereco_det['idtlog']->detalhe();
                 $registro['idtlog'] = $registro['idtlog']['descricao'];
                 $det_uf = $obj_endereco_det['sigla_uf']->detalhe();
                 $registro['ref_sigla_uf'] = $det_uf['nome'];
                 $registro['cep_'] = int2CEP($registro['id_cep']);
             }
         }
     }
     // Adiciona a informação de zona de localização junto ao bairro do
     // endereço.
     $zona = App_Model_ZonaLocalizacao::getInstance();
     $registro['nm_bairro'] = sprintf('%s (Zona %s)', $registro['nm_bairro'], $zona->getValue($obj_endereco_det['zona_localizacao']));
     if ($registro['cod_aluno']) {
         $this->addDetalhe(array('Código Aluno', $registro['cod_aluno']));
     }
     if ($registro['nome_aluno']) {
         $this->addDetalhe(array('Nome Aluno', $registro['nome_aluno']));
     }
     if (idFederal2int($registro['cpf'])) {
         $this->addDetalhe(array('CPF', $registro['cpf']));
     }
     if ($registro['data_nasc']) {
         $this->addDetalhe(array('Data de Nascimento', $registro['data_nasc']));
     }
     /**
      * Analfabeto.
      */
     $this->addDetalhe(array('Analfabeto', $registro['analfabeto'] == 0 ? 'Não' : 'Sim'));
     if ($registro['sexo']) {
         $this->addDetalhe(array('Sexo', $registro['sexo']));
     }
     if ($registro['ideciv']) {
         $this->addDetalhe(array('Estado Civil', $registro['ideciv']));
     }
     if ($registro['id_cep']) {
         $this->addDetalhe(array('CEP', $registro['cep_']));
     }
     if ($registro['ref_sigla_uf']) {
         $this->addDetalhe(array('UF', $registro['ref_sigla_uf']));
     }
     if ($registro['cidade']) {
         $this->addDetalhe(array('Cidade', $registro['cidade']));
     }
     if ($registro['nm_bairro']) {
         $this->addDetalhe(array('Bairro', $registro['nm_bairro']));
     }
     if ($registro['nm_logradouro']) {
         $logradouro = '';
         if ($registro['idtlog']) {
             $logradouro .= $registro['idtlog'] . ' ';
         }
         $logradouro .= $registro['nm_logradouro'];
         $this->addDetalhe(array('Logradouro', $logradouro));
     }
     if ($registro['numero']) {
         $this->addDetalhe(array('Número', $registro['numero']));
     }
     if ($registro['letra']) {
         $this->addDetalhe(array('Letra', $registro['letra']));
     }
     if ($registro['complemento']) {
         $this->addDetalhe(array('Complemento', $registro['complemento']));
     }
     if ($registro['bloco']) {
         $this->addDetalhe(array('Bloco', $registro['bloco']));
     }
     if ($registro['andar']) {
         $this->addDetalhe(array('Andar', $registro['andar']));
     }
     if ($registro['apartamento']) {
         $this->addDetalhe(array('Apartamento', $registro['apartamento']));
     }
     if ($registro['naturalidade']) {
         $this->addDetalhe(array('Naturalidade', $registro['naturalidade']));
     }
     if ($registro['nacionalidade']) {
         $lista_nacionalidade = array('NULL' => 'Selecione', 1 => 'Brasileiro', 2 => 'Naturalizado Brasileiro', 3 => 'Estrangeiro');
         $registro['nacionalidade'] = $lista_nacionalidade[$registro['nacionalidade']];
         $this->addDetalhe(array('Nacionalidade', $registro['nacionalidade']));
     }
     if ($registro['pais_origem']) {
         $this->addDetalhe(array('País de Origem', $registro['pais_origem']));
     }
     $responsavel = $tmp_obj->getResponsavelAluno();
     if ($responsavel) {
         $this->addDetalhe(array('Responsável Aluno', $responsavel['nome_responsavel']));
     }
     if ($registro['ref_idpes_responsavel']) {
         $obj_pessoa_resp = new clsPessoaFj($registro['ref_idpes_responsavel']);
         $det_pessoa_resp = $obj_pessoa_resp->detalhe();
         if ($det_pessoa_resp) {
             $registro['ref_idpes_responsavel'] = $det_pessoa_resp['nome'];
         }
         $this->addDetalhe(array('Responsável', $registro['ref_idpes_responsavel']));
     }
     if ($registro['nm_pai']) {
         $this->addDetalhe(array('Pai', $registro['nm_pai']));
     }
     if ($registro["nm_mae"]) {
         $this->addDetalhe(array('Mãe', $registro['nm_mae']));
     }
     if ($registro['fone_1']) {
         if ($registro['ddd_fone_1']) {
             $registro['ddd_fone_1'] = sprintf('(%s)&nbsp;', $registro['ddd_fone_1']);
         }
         $this->addDetalhe(array('Telefone 1', $registro['ddd_fone_1'] . $registro['fone_1']));
     }
     if ($registro['fone_2']) {
         if ($registro['ddd_fone_2']) {
             $registro['ddd_fone_2'] = sprintf('(%s)&nbsp;', $registro['ddd_fone_2']);
         }
         $this->addDetalhe(array('Telefone 2', $registro['ddd_fone_2'] . $registro['fone_2']));
     }
     if ($registro['fone_mov']) {
         if ($registro['ddd_mov']) {
             $registro['ddd_mov'] = sprintf('(%s)&nbsp;', $registro['ddd_mov']);
         }
         $this->addDetalhe(array('Celular', $registro['ddd_mov'] . $registro['fone_mov']));
     }
     if ($registro['fone_fax']) {
         if ($registro['ddd_fax']) {
             $registro['ddd_fax'] = sprintf('(%s)&nbsp;', $registro['ddd_fax']);
         }
         $this->addDetalhe(array('Fax', $registro['ddd_fax'] . $registro['fone_fax']));
     }
     if ($registro['email']) {
         $this->addDetalhe(array('E-mail', $registro['email']));
     }
     if ($registro['url']) {
         $this->addDetalhe(array('Página Pessoal', $registro['url']));
     }
     if ($registro['ref_cod_aluno_beneficio']) {
         $obj_beneficio = new clsPmieducarAlunoBeneficio($registro['ref_cod_aluno_beneficio']);
         $obj_beneficio_det = $obj_beneficio->detalhe();
         $this->addDetalhe(array('Benefício', $obj_beneficio_det['nm_beneficio']));
     }
     if ($registro['ref_cod_religiao']) {
         $obj_religiao = new clsPmieducarReligiao($registro['ref_cod_religiao']);
         $obj_religiao_det = $obj_religiao->detalhe();
         $this->addDetalhe(array('Religião', $obj_religiao_det['nm_religiao']));
     }
     if ($det_raca['nm_raca']) {
         $this->addDetalhe(array('Raça', $det_raca['nm_raca']));
     }
     if ($deficiencia_pessoa) {
         $tabela = '<table border="0" width="300" cellpadding="3"><tr bgcolor="#A1B3BD" align="center"><td>Deficiências</td></tr>';
         $cor = '#D1DADF';
         foreach ($deficiencia_pessoa as $indice => $valor) {
             $cor = $cor == '#D1DADF' ? '#E4E9ED' : '#D1DADF';
             $tabela .= sprintf('<tr bgcolor="%s" align="center"><td>%s</td></tr>', $cor, $valor);
         }
         $tabela .= '</table>';
         $this->addDetalhe(array('Deficiências', $tabela));
     }
     if ($registro['rg']) {
         $this->addDetalhe(array('RG', $registro['rg']));
     }
     if ($registro['data_exp_rg']) {
         $this->addDetalhe(array('Data de Expedição RG', $registro['data_exp_rg']));
     }
     if ($registro['idorg_exp_rg']) {
         $this->addDetalhe(array('Órgão Expedição RG', $registro['idorg_exp_rg']));
     }
     if ($registro['sigla_uf_exp_rg']) {
         $this->addDetalhe(array('Estado Expedidor', $registro['sigla_uf_exp_rg']));
     }
     /**
      * @todo CoreExt_Enum?
      */
     if ($registro['tipo_cert_civil']) {
         $lista_tipo_cert_civil = array();
         $lista_tipo_cert_civil["0"] = 'Selecione';
         $lista_tipo_cert_civil[91] = 'Nascimento';
         $lista_tipo_cert_civil[92] = 'Casamento';
         $this->addDetalhe(array('Tipo Certificado Civil', $registro['tipo_cert_civil']));
     }
     if ($registro['num_termo']) {
         $this->addDetalhe(array('Termo', $registro['num_termo']));
     }
     if ($registro['num_livro']) {
         $this->addDetalhe(array('Livro', $registro['num_livro']));
     }
     if ($registro['num_folha']) {
         $this->addDetalhe(array('Folha', $registro['num_folha']));
     }
     if ($registro['data_emissao_cert_civil']) {
         $this->addDetalhe(array('Emissão Certidão Civil', $registro['data_emissao_cert_civil']));
     }
     if ($registro['sigla_uf_cert_civil']) {
         $this->addDetalhe(array('Sigla Certidão Civil', $registro['sigla_uf_cert_civil']));
     }
     if ($registro['cartorio_cert_civil']) {
         $this->addDetalhe(array('Cartório', $registro['cartorio_cert_civil']));
     }
     if ($registro['num_tit_eleitor']) {
         $this->addDetalhe(array('Título de Eleitor', $registro['num_tit_eleitor']));
     }
     if ($registro['zona_tit_eleitor']) {
         $this->addDetalhe(array('Zona', $registro['zona_tit_eleitor']));
     }
     if ($registro['secao_tit_eleitor']) {
         $this->addDetalhe(array('Seção', $registro['secao_tit_eleitor']));
     }
     if ($registro['caminho_foto']) {
         $this->addDetalhe(array('Foto', sprintf('<img src="arquivos/educar/aluno/small/%s" border="0">', $registro['caminho_foto'])));
     }
     // Transporte escolar.
     $transporteMapper = new Transporte_Model_AlunoDataMapper();
     $transporteAluno = NULL;
     try {
         $transporteAluno = $transporteMapper->find(array('aluno' => $this->cod_aluno));
     } catch (Exception $e) {
     }
     $this->addDetalhe(array('Transporte escolar', isset($transporteAluno) ? 'Sim' : 'Não'));
     if ($transporteAluno) {
         $this->addDetalhe(array('Responsável transporte', $transporteAluno->responsavel));
     }
     // Adiciona uma aba com dados do Inep/Educacenso caso aluno tenha código Inep.
     if (isset($this->cod_aluno)) {
         $alunoMapper = new Educacenso_Model_AlunoDataMapper();
         $alunoInep = NULL;
         try {
             $alunoInep = $alunoMapper->find(array('aluno' => $this->cod_aluno));
         } catch (Exception $e) {
         }
         if ($alunoInep) {
             $this->addDetalhe(array('Código do aluno no Educacenso/Inep', $alunoInep->alunoInep));
             if (isset($alunoInep->nomeInep)) {
                 $this->addDetalhe(array('Nome do aluno no Educacenso/Inep', $alunoInep->nomeInep));
             }
         }
     }
     $this->addDetalhe(array('Matrícula', $this->montaTabelaMatricula()));
     // Verificação de permissão para cadastro.
     $obj_permissao = new clsPermissoes();
     if ($obj_permissao->permissao_cadastra(578, $this->pessoa_logada, 7)) {
         $this->url_novo = 'educar_aluno_cad.php';
         $this->url_editar = 'educar_aluno_cad.php?cod_aluno=' . $registro['cod_aluno'];
         $this->array_botao = array('Matrícula', 'Atualizar Histórico', 'Ficha do Aluno');
         $this->array_botao_url_script = array(sprintf('go("educar_matricula_lst.php?ref_cod_aluno=%d");', $registro['cod_aluno']), sprintf('go("educar_historico_escolar_lst.php?ref_cod_aluno=%d");', $registro['cod_aluno']), sprintf('showExpansivelImprimir(400, 200, "educar_relatorio_aluno_dados.php?ref_cod_aluno=%d", [], "Relatório i-Educar")', $registro['cod_aluno']));
     }
     $this->url_cancelar = 'educar_aluno_lst.php';
     $this->largura = '100%';
 }
<?php 
require_once "include/clsBase.inc.php";
require_once "include/clsCadastro.inc.php";
require_once "include/clsBanco.inc.php";
require_once "include/pmieducar/geral.inc.php";
require_once "include/clsPDF.inc.php";
@session_start();
$pessoa_logada = $_SESSION['id_pessoa'];
@session_write_close();
$obj_permissoes = new clsPermissoes();
if ($obj_permissoes->nivel_acesso($pessoa_logada) > 7) {
    header("location: index.php");
}
$cod_aluno = $_GET['ref_cod_aluno'];
$obj = new clsPmieducarAluno($cod_aluno);
$registro = $obj->detalhe();
if ($registro) {
    foreach ($registro as $campo => $val) {
        // passa todos os valores obtidos no registro para atributos do objeto
        ${$campo} = $val;
    }
    $obj_pessoa = new clsPessoaFj($ref_idpes);
    $det_pessoa = $obj_pessoa->detalhe();
    $nome = $det_pessoa["nome"];
    $email = $det_pessoa["email"];
    if ($det_pessoa["ddd_1"] && $det_pessoa["fone_1"]) {
        $telefone = "{$det_pessoa["ddd_1"]} {$det_pessoa["fone_1"]}";
    } else {
        if ($det_pessoa["ddd_2"] && $det_pessoa["fone_2"]) {
            $telefone = "{$det_pessoa["ddd_2"]} {$det_pessoa["fone_2"]}";
        }
    function renderHTML()
    {
        if ($_POST) {
            foreach ($_POST as $key => $value) {
                $this->{$key} = $value;
            }
        }
        if (empty($this->cursos)) {
            echo '<script>
	     			alert("Erro ao gerar relatório!\\nNenhum curso selecionado!");
	     			window.parent.fechaExpansivel(\'div_dinamico_\'+(window.parent.DOM_divs.length-1));
	     		</script>';
            return true;
        }
        //Dias previstos do mes
        // Qual o primeiro dia do mes
        $primeiroDiaDoMes = mktime(0, 0, 0, $this->mes, 1, $this->ano);
        // Quantos dias tem o mes
        $NumeroDiasMes = date('t', $primeiroDiaDoMes);
        //informacoes primeiro dia do mes
        $dateComponents = getdate($primeiroDiaDoMes);
        // What is the name of the month in question?
        $NomeMes = $mesesDoAno[$dateComponents['mon']];
        // What is the index value (0-6) of the first day of the
        // month in question.
        $DiaSemana = $dateComponents['wday'];
        $cursos_in = '';
        $conc = '';
        foreach ($this->cursos as $curso) {
            $cursos_in .= "{$conc}{$curso}";
            $conc = ",";
        }
        $db = new clsbanco();
        $consulta = "SELECT (SELECT coalesce(min(s.idade_inicial),0) as min\n\t\t\t\t\t\t\t\t  FROM pmieducar.serie  s\n\t\t\t\t\t\t\t\t       ,pmieducar.turma t\n\t\t\t\t\t\t\t\t WHERE s.cod_serie     = t.ref_ref_cod_serie\n\t\t\t\t\t\t\t\t   AND s.ref_cod_curso in ({$cursos_in} )) as min\n\t\t\t\t\t\t\t\t,\n\t\t\t\t\t\t\t\t(SELECT coalesce(max(s.idade_final),0)  as max\n\t\t\t\t\t\t\t\t  FROM pmieducar.serie  s\n\t\t\t\t\t\t\t\t WHERE s.ref_cod_curso in ( {$cursos_in})) as max";
        $db->Consulta($consulta);
        $db->ProximoRegistro();
        $max_min = $db->Tupla();
        $consulta = "SELECT distinct\n\t\t\t\t\t       coalesce(s.idade_inicial,0) as min\n\t\t\t\t\t       ,coalesce(s.idade_final,0)  as max\n\t\t\t\t\t  FROM pmieducar.serie  s\n\t\t\t\t\t WHERE  s.ref_cod_curso in ( {$cursos_in} )";
        $faixa_min_max = array();
        $db->Consulta($consulta);
        while ($db->ProximoRegistro()) {
            $numeros[] = $db->Tupla();
        }
        $faixa_min_max = array($numeros[0][0], $numeros[count($numeros) - 1][1]);
        $consulta2 = "SELECT distinct\n\t\t\t\t\t         s.idade_inicial\n\t\t\t\t\t    FROM pmieducar.serie  s\n\t\t\t\t\t   WHERE  s.ref_cod_curso in ( {$cursos_in} )\n\n\t\t\t   \t\t   UNION\n\n\t\t\t\t\t  SELECT distinct\n\t\t\t\t\t         s.idade_final\n\t\t\t\t\t    FROM pmieducar.serie  s\n\t\t\t\t\t   WHERE s.ref_cod_curso in ( {$cursos_in} ) ";
        $idades = array();
        $db->Consulta($consulta2);
        while ($db->ProximoRegistro()) {
            $idades[] = array_shift($db->Tupla());
        }
        $consulta3 = "SELECT distinct\n\t\t\t\t\t         s.idade_inicial\n\t\t\t\t\t    FROM pmieducar.serie  s\n\t\t\t\t\t   WHERE s.ref_cod_curso in ( {$cursos_in} )";
        $db->Consulta($consulta3);
        while ($db->ProximoRegistro()) {
            $faixa[] = $db->Tupla();
        }
        $ultima_idade = null;
        while (sizeof($idades)) {
            $idade = array_shift($idades);
            if ($idade == $faixa_min_max[0]) {
                $ultima_idade = array_shift($idades);
                $this->array_ano_idade[] = array('ano' => $this->ano - $idade . " - " . ($this->ano - $ultima_idade), 'idade' => $idade . " - " . $ultima_idade, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                if (!empty($idades)) {
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ultima_idade - 1, 'idade' => $ultima_idade + 1, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ultima_idade - 2, 'idade' => $ultima_idade + 2, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ultima_idade - 3, 'idade' => $ultima_idade + 3, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $ultima_idade = $ultima_idade + 3;
                    while ($ultima_idade > $idades[0] + 3) {
                        $ultima_idade = array_shift($idades);
                    }
                } elseif (sizeof($this->array_ano_idade) == 1) {
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ultima_idade - 1, 'idade' => $ultima_idade + 1, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ultima_idade - 2, 'idade' => $ultima_idade + 2, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ultima_idade - 3, 'idade' => $ultima_idade + 3, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $ultima_idade = $ultima_idade + 3;
                }
            }
            foreach ($faixa as $key => $value) {
                for ($ct = $ultima_idade + 1; $ct <= $idade + 3; $ct++) {
                    $this->array_ano_idade[] = array('ano' => $this->ano - $ct, 'idade' => (sizeof($idades) === 0 && $ct == $idade + 3 ? "" : "") . $ct, 'total_serie' => 0, 'total_geral' => 0, 'total_geral_ambos' => 0);
                    $ultima_idade = $ct;
                }
                break;
            }
            $ultima_idade = idade > $ultima_idade ? $idade : $ultima_idade;
        }
        $altura2 = 300;
        $altura = 50;
        $expande = 24;
        $flag_defasado = 1;
        $fonte = 'arial';
        $corTexto = '#000000';
        $obj_escola = new clsPmieducarEscola($this->ref_cod_escola);
        $det_escola = $obj_escola->detalhe();
        $this->nm_escola = $det_escola["nome"];
        if ($det_escola) {
            $this->pdf = new clsPDF("Demonstrativo de Alunos Defasados Nominal Idade/Série - {$this->ano}", "Demonstrativo de Alunos Defasados Nominal Idade/Série - {$this->ano}", "A4", "", false, false);
            $obj_instituicao = new clsPmieducarInstituicao($this->ref_cod_instituicao);
            $det_instituicao = $obj_instituicao->detalhe();
            $this->nm_instituicao = $det_instituicao['nm_instituicao'];
            $this->pdf->OpenPage();
            $this->addCabecalho();
            $this->novaPagina();
            $altura2 = 300;
            $altura = 30;
            $direita = $this->pdf->largura - 30 * 2;
            $expande = 24;
            $esquerda = 30;
            $inicio_escrita = 125 + $altura;
            $fonte = 'arial';
            $corTexto = '#000000';
            $flag_defasado = 1;
            $total_geral_masc_serie = 0;
            $total_geral_fem_serie = 0;
            $total_geral_anee = 0;
            $total_geral_nao_anee = 0;
            $total_geral_alf = 0;
            $total_geral_nao_alf = 0;
            foreach ($this->cursos as $curso) {
                $obj = new clsPmieducarSerie();
                $obj->setOrderby("idade_inicial,idade_final");
                $lista_serie_curso = $obj->lista(null, null, null, $curso, null, null, null, null, null, null, null, null, 1, $this->ref_cod_instituicao);
                $total_curso_masc_serie = 0;
                $total_curso_fem_serie = 0;
                $total_curso_anee = 0;
                $total_curso_nao_anee = 0;
                $total_curso_alf = 0;
                $total_curso_nao_alf = 0;
                if ($lista_serie_curso) {
                    foreach ($lista_serie_curso as $serie) {
                        $defasados = array();
                        $flagTurmas = 0;
                        $flagAlunos = 0;
                        $obj_matricula = new clsPmieducarMatricula();
                        $lista_matricula_serie = $obj_matricula->lista(null, null, $this->ref_cod_escola, $serie['cod_serie'], null, null, null, array(1, 2, 3), null, null, null, null, 1, $this->ano, $curso, $this->ref_cod_instituicao, null, null, null, $ct_analfabeto, null, null, null, null, null, null, null, $this->mes, true);
                        if ($lista_matricula_serie) {
                            foreach ($lista_matricula_serie as $matricula) {
                                if ($matricula['data_nasc']) {
                                    $ano_nasc = explode("-", $matricula['data_nasc']);
                                    $idade_aluno = $this->ano - $ano_nasc[0];
                                }
                                foreach ($this->array_ano_idade as $key => $value) {
                                    if (strpos($value['idade'], "-") && is_numeric($idade_aluno)) {
                                        $idade = explode("-", $value['idade']);
                                        if ($idade_aluno > $serie['idade_final'] + $flag_defasado && $idade_aluno >= $idade[0] && $idade_aluno <= $idade[1] || $idade_aluno > $serie['idade_final'] + $flag_defasado && $key == count($this->array_ano_idade) - 1) {
                                            $desafados[] = $matricula;
                                            $obj_pessoa = new clsFisica($matricula["ref_idpes"]);
                                            $det_pessoa = $obj_pessoa->detalhe();
                                            $obj_aluno = new clsPmieducarAluno($matricula["ref_cod_aluno"]);
                                            $det_aluno = $obj_aluno->detalhe();
                                            $anee = false;
                                            if (is_numeric($matricula["ref_idpes"])) {
                                                $sql = "SELECT 1 FROM cadastro.fisica_deficiencia, cadastro.deficiencia\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE cod_deficiencia = ref_cod_deficiencia AND\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref_idpes = {$matricula["ref_idpes"]}";
                                                $db = new clsBanco();
                                                $anee = $db->CampoUnico($sql);
                                            }
                                            $defasados[count($desafados)] = array("mat" => $matricula, "sexo" => $det_pessoa["sexo"], "analfabeto" => $det_aluno["analfabeto"], "anee" => $anee);
                                        }
                                    } elseif (is_numeric($idade_aluno)) {
                                        $idade = $value['idade'];
                                        if ($idade_aluno > $serie['idade_final'] + $flag_defasado && $idade_aluno == $idade || $idade_aluno >= $idade && $key == count($this->array_ano_idade) - 1) {
                                            $desafados[] = $matricula;
                                            $obj_pessoa = new clsFisica($matricula["ref_idpes"]);
                                            $det_pessoa = $obj_pessoa->detalhe();
                                            $obj_aluno = new clsPmieducarAluno($matricula["ref_cod_aluno"]);
                                            $det_aluno = $obj_aluno->detalhe();
                                            $anee = false;
                                            if (is_numeric($matricula["ref_idpes"])) {
                                                $sql = "SELECT 1 FROM cadastro.fisica_deficiencia, cadastro.deficiencia\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE cod_deficiencia = ref_cod_deficiencia AND\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tref_idpes = {$matricula["ref_idpes"]}";
                                                $db = new clsBanco();
                                                $anee = $db->CampoUnico($sql);
                                            }
                                            $defasados[count($desafados)] = array("mat" => $matricula, "sexo" => $det_pessoa["sexo"], "analfabeto" => $det_aluno["analfabeto"], "anee" => $anee);
                                        }
                                    }
                                }
                            }
                        }
                        $altura_aux = 13;
                        $total_masc_serie = 0;
                        $total_fem_serie = 0;
                        $total_anee = 0;
                        $total_nao_anee = 0;
                        $total_alf = 0;
                        $total_nao_alf = 0;
                        $esquerda = 30;
                        foreach ($defasados as $alunos) {
                            if ($inicio_escrita > $this->pdf->altura - 50) {
                                $inicio_escrita = 125 + $altura;
                                $this->pdf->ClosePage();
                                $this->pdf->OpenPage();
                                $this->addCabecalho();
                                $this->novaPagina();
                            }
                            $this->pdf->quadrado_relativo($esquerda, $inicio_escrita, $direita, $altura_aux);
                            $this->pdf->escreve_relativo($serie["nm_serie"], $esquerda += 5, $inicio_escrita, 40, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->linha_relativa($esquerda += 40, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->escreve_relativo($alunos["mat"]["nome"], $esquerda += 5, $inicio_escrita, 260, 50, $fonte, 9, $corTexto, 'left');
                            $this->pdf->linha_relativa($esquerda += 260, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->escreve_relativo(dataFromPgToBr($alunos["mat"]["data_nasc"]), $esquerda += 5, $inicio_escrita, 70, 50, $fonte, 9, $corTexto, 'center');
                            $espaco = 50;
                            $altura_aux = 12;
                            $this->pdf->linha_relativa($esquerda += $espaco + 20, $inicio_escrita, 0, $altura_aux);
                            if ($alunos["sexo"] == "M") {
                                $this->pdf->escreve_relativo("X", $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                                $total_masc_serie++;
                            } else {
                                $this->pdf->escreve_relativo("X", $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                                $total_fem_serie++;
                            }
                            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
                            if ($alunos["anee"]) {
                                $this->pdf->escreve_relativo("X", $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                                $total_anee++;
                            } else {
                                $this->pdf->escreve_relativo("X", $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                                $total_nao_anee++;
                            }
                            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
                            if (!$alunos["analfabeto"]) {
                                $this->pdf->escreve_relativo("X", $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                                $total_alf++;
                            } else {
                                $this->pdf->escreve_relativo("X", $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                                $total_nao_alf++;
                            }
                            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                            $inicio_escrita += $altura_aux;
                            $esquerda = 30;
                        }
                        if ($inicio_escrita > $this->pdf->altura - 50) {
                            $inicio_escrita = 125 + $altura;
                            $this->pdf->ClosePage();
                            $this->pdf->OpenPage();
                            $this->addCabecalho();
                            $this->novaPagina();
                        }
                        if ($total_masc_serie || $total_fem_serie || $total_anee || $total_curso_anee || $total_nao_alf || $total_nao_alf) {
                            $this->pdf->quadrado_relativo($esquerda, $inicio_escrita, $direita, $altura_aux);
                            $esquerda = 30;
                            $esquerda = 345;
                            $espaco = 50;
                            $altura_aux = 12;
                            $this->pdf->escreve_relativo("Totais Série {$serie["nm_serie"]}", $esquerda - 150, $inicio_escrita, 150, 50, $fonte, 9, $corTexto, 'left');
                            $this->pdf->linha_relativa($esquerda += $espaco + 20, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->escreve_relativo($total_masc_serie, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->escreve_relativo($total_fem_serie, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->escreve_relativo($total_anee, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->escreve_relativo($total_nao_anee, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->escreve_relativo($total_alf, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->escreve_relativo($total_nao_alf, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                            $inicio_escrita += $altura_aux;
                        }
                        $total_curso_masc_serie += $total_masc_serie;
                        $total_curso_fem_serie += $total_fem_serie;
                        $total_curso_anee += $total_anee;
                        $total_nao_anee += $total_curso_anee;
                        $total_curso_alf += $total_alf;
                        $total_curso_nao_alf += $total_nao_alf;
                        $esquerda = 30;
                    }
                }
                if ($inicio_escrita > $this->pdf->altura - 50) {
                    $inicio_escrita = 125 + $altura;
                    $this->pdf->ClosePage();
                    $this->pdf->OpenPage();
                    $this->addCabecalho();
                    $this->novaPagina();
                }
                $this->pdf->quadrado_relativo($esquerda, $inicio_escrita, $direita, $altura_aux);
                $esquerda = 345;
                $espaco = 50;
                $altura_aux = 12;
                $obj_curso = new clsPmieducarCurso($curso);
                $det_curso = $obj_curso->detalhe();
                $this->pdf->escreve_relativo("Totais Curso {$det_curso["nm_curso"]}", $esquerda - 150, $inicio_escrita, 300, 50, $fonte, 9, $corTexto, 'left');
                $this->pdf->linha_relativa($esquerda += $espaco + 20, $inicio_escrita, 0, $altura_aux);
                $this->pdf->escreve_relativo($total_curso_masc_serie, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                $this->pdf->escreve_relativo($total_curso_fem_serie, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
                $this->pdf->escreve_relativo($total_curso_anee, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                $this->pdf->escreve_relativo($total_curso_nao_anee, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
                $this->pdf->escreve_relativo($total_curso_alf, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                $this->pdf->escreve_relativo($total_curso_nao_alf, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
                $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
                $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
                $total_geral_masc_serie += $total_curso_masc_serie;
                $total_geral_fem_serie += $total_curso_fem_serie;
                $total_geral_anee += $total_curso_anee;
                $total_geral_nao_anee += $total_curso_nao_anee;
                $total_geral_alf += $total_curso_alf;
                $total_geral_nao_alf += $total_curso_nao_alf;
                $inicio_escrita += $altura_aux;
            }
            $esquerda = 30;
            $this->pdf->quadrado_relativo($esquerda, $inicio_escrita, $direita, $altura_aux);
            $esquerda = 345;
            $espaco = 50;
            $altura_aux = 12;
            $obj_curso = new clsPmieducarCurso($curso);
            $det_curso = $obj_curso->detalhe();
            $this->pdf->escreve_relativo("Totais Gerais", $esquerda - 100, $inicio_escrita, 300, 50, $fonte, 9, $corTexto, 'left');
            $this->pdf->linha_relativa($esquerda += $espaco + 20, $inicio_escrita, 0, $altura_aux);
            $this->pdf->escreve_relativo($total_geral_masc_serie, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
            $this->pdf->escreve_relativo($total_geral_fem_serie, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
            $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
            $this->pdf->escreve_relativo($total_geral_anee, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
            $this->pdf->escreve_relativo($total_geral_nao_anee, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
            $this->pdf->linha_relativa($esquerda, $inicio_escrita, 0, $altura_aux);
            $this->pdf->escreve_relativo($total_geral_alf, $esquerda, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
            $this->pdf->escreve_relativo($total_geral_nao_alf, $esquerda + $espaco / 2, $inicio_escrita, $espaco / 2, 50, $fonte, 9, $corTexto, 'center');
            $this->pdf->linha_relativa($esquerda + $espaco / 2, $inicio_escrita, 0, $altura_aux);
            $this->pdf->linha_relativa($esquerda += $espaco, $inicio_escrita, 0, $altura_aux);
            $altura_linha = 23;
            $inicio_escrita_y = 175;
        }
        $this->get_link = $this->pdf->GetLink();
        //header( "location: " . $this->pdf->GetLink() );
        $this->pdf->CloseFile();
        echo "<script>window.onload=function(){parent.EscondeDiv('LoadImprimir');window.location='download.php?filename=" . $this->get_link . "'}</script>";
        echo "<html><center>Se o download não iniciar automaticamente <br /><a target='blank' href='" . $this->get_link . "' style='font-size: 16px; color: #000000; text-decoration: underline;'>clique aqui!</a><br><br>\n\t\t\t<span style='font-size: 10px;'>Para visualizar os arquivos PDF, é necessário instalar o Adobe Acrobat Reader.<br>\n\n\t\t\tClique na Imagem para Baixar o instalador<br><br>\n\t\t\t<a href=\"http://www.adobe.com.br/products/acrobat/readstep2.html\" target=\"new\"><br><img src=\"imagens/acrobat.gif\" width=\"88\" height=\"31\" border=\"0\"></a>\n\t\t\t</span>\n\t\t\t</center>";
    }