<?PHP
/*
 * DIREITOS AUTORAIS RESERVADOS (C) 2007 UFRJ
 * 
 * ESTE PROGRAMA É SOFTWARE LIVRE; VOCÊ PODE REDISTRIBUÍ-LO E/OU MODIFICÁ-LO SOB OS
 * TERMOS DA LICENÇA PÚBLICA GERAL GNU CONFORME PUBLICADA PELA FREE SOFTWARE FOUNDATION;
 * TANTO A VERSÃO 2 DA LICENÇA, COMO (A SEU CRITÉRIO) QUALQUER VERSÃO POSTERIOR.

 * ESTE PROGRAMA É DISTRIBUÍDO NA EXPECTATIVA DE QUE SEJA ÚTIL, PORÉM, SEM NENHUMA GARANTIA;
 * NEM MESMO A GARANTIA IMPLÍCITA DE COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA.
 * CONSULTE A LICENÇA PÚBLICA GERAL DO GNU PARA MAIS DETALHES.
 * 
 * VOCÊ DEVE TER RECEBIDO UMA CÓPIA DA LICENÇA PÚBLICA GERAL DO GNU JUNTO COM ESTE PROGRAMA; 
 * SE NÃO, ACESSE <<HTTP://WWW.GNU.ORG/LICENSES/LICENSES.PT-BR.HTML>>
 */

<?

/* -----------------------------------------------------------------------------------------

                                  Atualizacao Resgistros do Semed


  � efetuada em duas etapas: primeiramente os registros correspondentes ao Usuario no banco
  s�o excluidos, e em seguida � efetuada a reinser��o no banco com os dados existentes
  no formul�rio.

  Caso aconte�a algum problema durante a etapa de atualiza��o, os registros existentes no
  banco s�o restaurados a seu estado anterior.


-------------------------------------------------------------------------------------------- */


/* --------------------------------------------------------------------------------------------


   Recupera�ao de atributos introduzidos no formulario de matricula e recadastamento


   Inicialmente s�o recuperados os atributos existentes no formul�rio de matr�cula,
   guardados em sess�o, escapados, e atribuidos a variaveis internas do script.

   Em seguida, s�o efetuados alguns ajustes e atribui��es com o objetivo de executar o
   script e retornar valores ao formul�rio.

   � ent�o efetuada a conex�o ao banco de dados.


---------------------------------------------------------------------------------------------*/

//script para inclusao de novas matriculas

SESSION_START();

// Importa Dados de Usuarios

$_SESSION["f_cartaoSus"]                        = ($cartaoSus                        = pg_escape_string($_POST['form_cartaoSus']));
$_SESSION["f_nomeUsuario"]                        = ($nomeUsuario                        = pg_escape_string($_POST['form_nomeUsuario']));
$_SESSION["f_sexoUsuario"]                        = ($sexoUsuario                        = pg_escape_string($_POST['form_sexoUsuario']));
$_SESSION["f_dataNascimentoUsuario"]              = ($dataNascimentoUsuario              = pg_escape_string($_POST['form_dataNascimentoUsuario']));
$_SESSION["f_ufNascimentoUsuario"]                = ($ufNascimentoUsuario                = pg_escape_string($_POST['form_ufNascimentoUsuario']));
$_SESSION["f_codigoMunicipioNascimentoUsuario"]   = ($codigoMunicipioNascimentoUsuario   = pg_escape_string($_POST['form_codigoMunicipioNascimentoUsuario']));
$_SESSION["f_certidaoNascimentoCartorio"]       = ($certidaoNascimentoCartorio       = pg_escape_string($_POST['form_certidaoNascimentoCartorio']));
$_SESSION["f_certidaoNascimentoTermo"]          = ($certidaoNascimentoTermo          = pg_escape_string($_POST['form_certidaoNascimentoTermo']));
$_SESSION["f_certidaoNascimentoFolha"]          = ($certidaoNascimentoFolha          = pg_escape_string($_POST['form_certidaoNascimentoFolha']));
$_SESSION["f_certidaoNascimentoLivro"]          = ($certidaoNascimentoLivro          = pg_escape_string($_POST['form_certidaoNascimentoLivro']));
$_SESSION["f_certidaoNascimentoEmissao"]        = ($certidaoNascimentoEmissao        = pg_escape_string($_POST['form_certidaoNascimentoEmissao']));
$_SESSION["f_certidaoNascimentoEstado"]         = ($certidaoNascimentoEstado         = pg_escape_string($_POST['form_certidaoNascimentoEstado']));
$_SESSION["f_certidaoApresentada"] 	            = ($certidaoApresentada              = pg_escape_string($_POST['form_certidaoApresentada']));
$_SESSION["f_certidaoDigitalizada"]             = ($certidaoDigitalizada             = pg_escape_string($_POST['form_certidaoDigitalizada']));
$_SESSION["f_cpfUsuario"]                         = ($cpfUsuario                         = pg_escape_string($_POST['form_cpfUsuario']));
$_SESSION["f_cpfComprovado"]                    = ($cpfComprovado                    = pg_escape_string($_POST['form_cpfComprovado']));
$_SESSION["f_cpfDigitalizado"]                  = ($cpfDigitalizado                  = pg_escape_string($_POST['form_cpfDigitalizado']));
$_SESSION["f_inepUsuario"]                        = ($inepUsuario                        = pg_escape_string($_POST['form_inepUsuario']));
$_SESSION["f_especialUsuario"]                    = ($especialUsuario                    = pg_escape_string($_POST['form_especialUsuario']));
$_SESSION["f_tipoNecessidadeEspecial"]          = ($tipoNecessidadeEspecial          = $_POST['form_tipoNecessidadeEspecial']);
$_SESSION["f_comprovadoEspecial"]               = ($comprovadoEspecial               = pg_escape_string($_POST['form_comprovadoEspecial']));
$_SESSION["f_digitalizadoEspecial"]             = ($digitalizadoEspecial             = pg_escape_string($_POST['form_digitalizadoEspecial']));
$_SESSION["f_nisUsuario"]                         = ($nisUsuario                         = pg_escape_string($_POST['form_nisUsuario']));
$_SESSION["f_nacionalidadeUsuario"]               = ($nacionalidadeUsuario               = pg_escape_string($_POST['form_nacionalidadeUsuario']));
$_SESSION["f_codigoPaisUsuario"]                  = ($codigoPaisUsuario                  = pg_escape_string($_POST['form_codigoPaisUsuario']));
$_SESSION["f_corRacaUsuario"]                     = ($corRacaUsuario                     = pg_escape_string($_POST['form_corRacaUsuario']));
$_SESSION["f_grupoSanguineoUsuario"]              = ($grupoSanguineoUsuario              = pg_escape_string($_POST['form_grupoSanguineoUsuario']));
$_SESSION["f_existeRegistroPai"]                = ($existeRegistroPai                = pg_escape_string($_POST['form_existeRegistroPai']));
$_SESSION["f_existeRegistroMae"]                = ($existeRegistroMae                = pg_escape_string($_POST['form_existeRegistroMae']));
$_SESSION["f_certidaoTipo"]                     = ($certidaoTipo                     = pg_escape_string($_POST['form_certidaoTipo']));
$_SESSION["f_logradouroGeoiguacuJustificativa"] = ($logradouroGeoiguacuJustificativa = pg_escape_string($_POST['form_logradouroGeoiguacuJustificativa']));

// Dados de Pais e Responsaveis

$_SESSION["f_nomePai"]                          = ($nomePai                          = pg_escape_string($_POST['form_nomePai']));
$_SESSION["f_tipoDocIdPai"]                     = ($tipoDocIdPai                     = pg_escape_string($_POST['form_tipoDocIdPai']));
$_SESSION["f_numDocIdPai"]                      = ($numDocIdPai                      = pg_escape_string($_POST['form_numDocIdPai']));
$_SESSION["f_docPaiComprovado"]                 = ($docPaiComprovado                 = pg_escape_string($_POST['form_docPaiComprovado']));
$_SESSION["f_docPaiDigitalizado"]               = ($docPaiDigitalizado               = pg_escape_string($_POST['form_docPaiDigitalizado']));
$_SESSION["f_ufDocIdPai"]                       = ($ufDocIdPai                       = pg_escape_string($_POST['form_ufDocIdPai']));
$_SESSION["f_emissaoDocIdPai"]                  = ($emissaoDocIdPai                  = pg_escape_string($_POST['form_emissaoDocIdPai']));
$_SESSION["f_orgaoEmissorDocIdPai"]             = ($orgaoEmissorDocIdPai             = pg_escape_string($_POST['form_orgaoEmissorDocIdPai']));
$_SESSION["f_nomeMae"]                          = ($nomeMae                          = pg_escape_string($_POST['form_nomeMae']));
$_SESSION["f_tipoDocIdMae"]                     = ($tipoDocIdMae                     = pg_escape_string($_POST['form_tipoDocIdMae']));
$_SESSION["f_numDocIdMae"]                      = ($numDocIdMae                      = pg_escape_string($_POST['form_numDocIdMae']));
$_SESSION["f_docMaeComprovado"]                 = ($docMaeComprovado                 = pg_escape_string($_POST['form_docMaeComprovado']));
$_SESSION["f_docMaeDigitalizado"]               = ($docMaeDigitalizado               = pg_escape_string($_POST['form_docMaeDigitalizado']));
$_SESSION["f_ufDocIdMae"]                       = ($ufDocIdMae                       = pg_escape_string($_POST['form_ufDocIdMae']));
$_SESSION["f_emissaoDocIdMae"]                  = ($emissaoDocIdMae                  = pg_escape_string($_POST['form_emissaoDocIdMae']));
$_SESSION["f_orgaoEmissorDocIdMae"]             = ($orgaoEmissorDocIdMae             = pg_escape_string($_POST['form_orgaoEmissorDocIdMae']));
$_SESSION["f_nomeResponsavel"]                  = ($nomeResponsavel                  = pg_escape_string($_POST['form_nomeResponsavel']));
$_SESSION["f_tipoDocIdResponsavel"]             = ($tipoDocIdResponsavel             = pg_escape_string($_POST['form_tipoDocIdResponsavel']));
$_SESSION["f_numDocIdResponsavel"]              = ($numDocIdResponsavel              = pg_escape_string($_POST['form_numDocIdResponsavel']));
$_SESSION["f_docResponsavelComprovado"]         = ($docResponsavelComprovado         = pg_escape_string($_POST['form_docResponsavelComprovado']));
$_SESSION["f_docResponsavelDigitalizado"]       = ($docResponsavelDigitalizado       = pg_escape_string($_POST['form_docResponsavelonsavelDigitalizado']));
$_SESSION["f_grauParentescoResponsavel"]        = ($grauParentescoResponsavel        = pg_escape_string($_POST['form_grauParentescoResponsavel']));
$_SESSION["f_ufDocIdResponsavel"]               = ($ufDocIdResponsavel               = pg_escape_string($_POST['form_ufDocIdResponsavel']));
$_SESSION["f_emissaoDocIdResponsavel"]          = ($emissaoDocIdResponsavel          = pg_escape_string($_POST['form_emissaoDocIdResponsavel']));
$_SESSION["f_orgaoEmissorDocIdResponsavel"]     = ($orgaoEmissorDocIdResponsavel     = pg_escape_string($_POST['form_orgaoEmissorDocIdResponsavel']));

// Dados de Endereco

$_SESSION["f_logradouroTipoUsuario"]              = ($logradouroTipoUsuario              = pg_escape_string($_POST['form_logradouroTipoUsuario']));
$_SESSION["f_logradouroNomeUsuario"]              = ($logradouroNomeUsuario              = pg_escape_string($_POST['form_logradouroNomeUsuario']));
$_SESSION["f_logradouroNumeroUsuario"]            = ($logradouroNumeroUsuario            = pg_escape_string($_POST['form_logradouroNumeroUsuario']));
$_SESSION["f_logradouroComplementoUsuario"]       = ($logradouroComplementoUsuario       = pg_escape_string($_POST['form_logradouroComplementoUsuario']));
$_SESSION["f_logradouroBairroUsuario"]            = ($logradouroBairroUsuario            = pg_escape_string($_POST['form_logradouroBairroUsuario']));
$_SESSION["f_logradouroCidadeUsuario"]            = ($logradouroCidadeUsuario            = pg_escape_string($_POST['form_logradouroCidadeUsuario']));
$_SESSION["f_logradouroUfUsuario"]                = ($logradouroUfUsuario                = pg_escape_string($_POST['form_logradouroUfUsuario']));
$_SESSION["f_logradouroCepUsuario"]               = ($logradouroCepUsuario               = pg_escape_string($_POST['form_logradouroCepUsuario']));
$_SESSION["f_logradouroGeoiguacuUsuario"]         = ($logradouroGeoiguacuUsuario         = pg_escape_string($_POST['form_logradouroGeoiguacuUsuario']));
$_SESSION["f_logradouroNaoCadastrado"]          = ($logradouroNaoCadastrado          = pg_escape_string($_POST['form_logradouroNaoCadastrado']));
$_SESSION["f_logradouroPontoReferenciaUsuario"]   = ($logradouroPontoReferenciaUsuario   = pg_escape_string($_POST['form_logradouroPontoReferenciaUsuario']));
$_SESSION["f_telefoneFixoUsuario"]                = ($telefoneFixoUsuario                = pg_escape_string($_POST['form_telefoneFixoUsuario']));
$_SESSION["f_telefoneCelularUsuario"]             = ($telefoneCelularUsuario             = pg_escape_string($_POST['form_telefoneCelularUsuario']));
$_SESSION["f_telefoneRecadoUsuario"]              = ($telefoneRecadoUsuario              = pg_escape_string($_POST['form_telefoneRecadoUsuario']));
$_SESSION["f_emailUsuario"]                       = ($emailUsuario                       = pg_escape_string($_POST['form_emailUsuario']));
$_SESSION["f_possuiTelefoneFixo"]               = ($possuiTelefoneFixo               = pg_escape_string($_POST['form_possuiTelefoneFixo']));
$_SESSION["f_possuiTelefoneCelular"]            = ($possuiTelefoneCelular            = pg_escape_string($_POST['form_possuiTelefoneCelular']));
$_SESSION["f_possuiTelefoneRecado"]             = ($possuiTelefoneRecado             = pg_escape_string($_POST['form_possuiTelefoneRecado']));
$_SESSION["f_possuiEmail"]                      = ($possuiEmail                      = pg_escape_string($_POST['form_possuiEmail']));

// Dados de Matr�cula

$_SESSION["f_cartaoSus"]                        = ($cartaoSus                        = pg_escape_string($_POST['form_cartaoSus']));
$_SESSION["f_numeroCRAS"]            = ($codigoEscolaMatricula            = pg_escape_string($_POST['form_numerocras']));
$_SESSION["f_responsavelMatricula"]             = ($responsavelMatricula             = pg_escape_string($_POST['form_responsavelMatricula']));
$_SESSION["f_inepUsuario"]                        = ($inepUsuario                        = pg_escape_string($_POST['form_inepUsuario']));
$_SESSION["f_dataMatricula"]                    = ($dataMatricula                    = pg_escape_string($_POST['form_dataMatricula']));
$_SESSION["f_escolaridadeMatricula"]            = ($escolaridadeMatricula            = pg_escape_string($_POST['form_escolaridadeMatricula']));
$_SESSION["f_dataIngressoUsuarioEscola"]          = ($dataIngressoUsuarioEscola          = pg_escape_string($_POST['form_dataIngressoUsuarioEscola']));
$_SESSION["f_primeiraMatricula"]                = ($primeiraMatricula                = pg_escape_string($_POST['form_primeiraMatricula']));

// Importa Informacoes Complementares

$_SESSION["f_cartaoSus"]                        = ($cartaoSus                        = pg_escape_string($_POST['form_cartaoSus']));
$_SESSION["f_inepUsuario"]                        = ($inepUsuario                        = pg_escape_string($_POST['form_inepUsuario']));
$_SESSION["f_bolsaFamilia"]                     = ($bolsaFamilia                     = pg_escape_string($_POST['form_bolsaFamilia']));
$_SESSION["f_codigoEscolaPreferencia"]          = ($codigoEscolaPreferencia          = pg_escape_string($_POST['form_codigoEscolaPreferencia']));
$_SESSION["f_turnoPreferencia"]                 = ($turnoPreferencia                 = pg_escape_string($_POST['form_turnoPreferencia']));
$_SESSION["f_desejaHorarioIntegral"]            = ($desejaHorarioIntegral            = pg_escape_string($_POST['form_desejaHorarioIntegral']));
$_SESSION["f_UsuarioNecessitaPasseEscolar"]       = ($UsuarioNecessitaPasseEscolar       = pg_escape_string($_POST['form_UsuarioNecessitaPasseEscolar']));
$_SESSION["f_responsavelNecessitaPasseEscolar"] = ($responsavelNecessitaPasseEscolar = pg_escape_string($_POST['form_responsavelNecessitaPasseEscolar']));
$_SESSION["f_UsuarioTransferido"]                 = ($UsuarioTransferido                 = pg_escape_string($_POST['form_UsuarioTransferido']));
$_SESSION["f_tipoEscolaOrigem"]                 = ($tipoEscolaOrigem                 = pg_escape_string($_POST['form_tipoEscolaOrigem']));
$_SESSION["f_outrosTiposEscolaOrigem"]          = ($outrosTiposEscolaOrigem          = pg_escape_string($_POST['form_outrosTiposEscolaOrigem']));
$_SESSION["f_nomeEscolaOrigem"]                 = ($nomeEscolaOrigem                 = pg_escape_string($_POST['form_nomeEscolaOrigem']));
$_SESSION["f_codigoEscolaOrigem"]               = ($codigoEscolaOrigem               = pg_escape_string($_POST['form_codigoEscolaOrigem']));

// Dados de Matricula Anterior

$_SESSION["f_nomeEscolaAnterior"]               = ($nomeEscolaAnterior               = pg_escape_string($_POST['form_nomeEscolaAnterior']));
$_SESSION["f_codigoEscolaAnterior"]             = ($codigoEscolaAnterior             = pg_escape_string($_POST['form_codigoEscolaAnterior']));
$_SESSION["f_bairroEscolaAnterior"]             = ($bairroEscolaAnterior             = pg_escape_string($_POST['form_bairroEscolaAnterior']));
$_SESSION["f_tipoEscolaAnterior"]               = ($tipoEscolaAnterior               = pg_escape_string($_POST['form_tipoEscolaAnterior']));
$_SESSION["f_escolaridadeAnterior"]             = ($escolaridadeAnterior             = pg_escape_string($_POST['form_escolaridadeAnterior']));
$_SESSION["f_turmaAnterior"]                    = ($turmaAnterior                    = pg_escape_string($_POST['form_turmaAnterior']));
$_SESSION["f_turnoAnterior"]                    = ($turnoAnterior                    = pg_escape_string($_POST['form_turnoAnterior']));
$_SESSION["f_horarioIntegralAnterior"]          = ($horarioIntegralAnterior          = pg_escape_string($_POST['form_horarioIntegralAnterior']));
$_SESSION["f_aprovadoAnterior"]                 = ($aprovadoAnterior                 = pg_escape_string($_POST['form_aprovadoAnterior']));
$_SESSION["f_comprovadoAnterior"]               = ($comprovadoAnterior               = pg_escape_string($_POST['form_comprovadoAnterior']));

// Dados de Irmaos

$_SESSION["f_possuiIrmaoEscolaMunicipal"]       = ($possuiIrmaoEscolaMunicipal       = pg_escape_string($_POST['form_possuiIrmaoEscolaMunicipal']));
$_SESSION["f_nomeIrmao1"]                       = ($nomeIrmao1                       = pg_escape_string($_POST['form_nomeIrmao1']));
$_SESSION["f_escolaIrmao1"]                     = ($escolaIrmao1                     = pg_escape_string($_POST['form_escolaIrmao1']));
$_SESSION["f_codigoEscolaIrmao1"]               = ($codigoEscolaIrmao1               = pg_escape_string($_POST['form_codigoEscolaIrmao1']));
$_SESSION["f_escolaridadeIrmao1"]               = ($escolaridadeIrmao1               = pg_escape_string($_POST['form_escolaridadeIrmao1']));

$_SESSION["f_nomeIrmao2"]                       = ($nomeIrmao2                       = pg_escape_string($_POST['form_nomeIrmao2']));
$_SESSION["f_escolaIrmao2"]                     = ($escolaIrmao2                     = pg_escape_string($_POST['form_escolaIrmao2']));
$_SESSION["f_codigoEscolaIrmao2"]               = ($codigoEscolaIrmao2               = pg_escape_string($_POST['form_codigoEscolaIrmao2']));
$_SESSION["f_escolaridadeIrmao2"]               = ($escolaridadeIrmao2               = pg_escape_string($_POST['form_escolaridadeIrmao2']));

$_SESSION["f_nomeIrmao3"]                       = ($nomeIrmao3                       = pg_escape_string($_POST['form_nomeIrmao3']));
$_SESSION["f_escolaIrmao3"]                     = ($escolaIrmao3                     = pg_escape_string($_POST['form_escolaIrmao3']));
$_SESSION["f_codigoEscolaIrmao3"]               = ($codigoEscolaIrmao3               = pg_escape_string($_POST['form_codigoEscolaIrmao3']));
$_SESSION["f_escolaridadeIrmao3"]               = ($escolaridadeIrmao3               = pg_escape_string($_POST['form_escolaridadeIrmao3']));

$_SESSION["f_nomeIrmao4"]                       = ($nomeIrmao4                       = pg_escape_string($_POST['form_nomeIrmao4']));
$_SESSION["f_escolaIrmao4"]                     = ($escolaIrmao4                     = pg_escape_string($_POST['form_escolaIrmao4']));
$_SESSION["f_codigoEscolaIrmao4"]               = ($codigoEscolaIrmao4               = pg_escape_string($_POST['form_codigoEscolaIrmao4']));
$_SESSION["f_escolaridadeIrmao4"]               = ($escolaridadeIrmao4               = pg_escape_string($_POST['form_escolaridadeIrmao4']));

$_SESSION["f_nomeIrmao5"]                       = ($nomeIrmao5                       = pg_escape_string($_POST['form_nomeIrmao5']));
$_SESSION["f_escolaIrmao5"]                     = ($escolaIrmao5                     = pg_escape_string($_POST['form_escolaIrmao5']));
$_SESSION["f_codigoEscolaIrmao5"]               = ($codigoEscolaIrmao5               = pg_escape_string($_POST['form_codigoEscolaIrmao5']));
$_SESSION["f_escolaridadeIrmao5"]               = ($escolaridadeIrmao5               = pg_escape_string($_POST['form_escolaridadeIrmao5']));


// Ajustes em campos vazios vindo do formul�rio

if ($possuiTelefoneFixo == '')      {$possuiTelefoneFixo = '0';}
if ($possuiTelefoneCelular == '')   {$possuiTelefoneCelular = '0';}
if ($possuiTelefoneRecado == '')    {$possuiTelefoneRecado = '0';}
if ($possuiemail == '')             {$possuiEmail = '0';}
if ($existeRegistroPai == '')       {$existeRegistroPai = '0';}
if ($existeRegistroMae == '')       {$existeRegistromae ='0';}
if ($logradouroNaoCadastrado == '') {$logradouroNaoCadastrado = '0';}
if ($possuiTelefoneFixo == '')      {$possuiTelefoneFixo = '0';}
if ($possuiTelefoneCelular == '')   {$possuiTelefoneCelular = '0';}
if ($possuiTelefoneRecado == '')    {$possuiTelefoneRecado = '0';}
if ($possuiemail == '')             {$possuiemail = '0';}
if ($UsuarioTransferido == '')        {$UsuarioTransferido = �0�;}
if ($tipoEscolaOrigem == ' ')       {$tipoEscolaOrigem = '0';}

// Acerto no formato das Datas para retorno e outras variaveis

$dataNascimento_1 =  substr($dataNascimentoUsuario,6,4);
$dataNascimento_2 =  substr($dataNascimentoUsuario,2,3);
$dataNascimento_3 = "/". substr($dataNascimentoUsuario, 0,2);
$dataNascimento = $dataNascimento_1 . $dataNascimento_2 . $dataNascimento_3;

if ($dataMatricula != '')
{
    $dataMat_1 =  substr($dataMatricula,6,4);
    $dataMat_2 =  substr($dataMatricula,2,3);
    $dataMat_3 = "/". substr($dataMatricula,0,2);
    $dataMat = $dataMat_1 . $dataMat_2 . $dataMat_3;
}

   $dataMatriculaCompara = substr($dataMatricula,6,4);
   $dataMatriculaCompara = $dataMatriculaCompara . substr($dataMatricula,3,2);
   $dataMatriculaCompara = $dataMatriculaCompara . substr($dataMatricula,0,2);


if ($dataIngressoUsuarioEscola != '')
{
   $dataIngresso_1 =  substr($dataIngressoUsuarioEscola,6,4);
   $dataIngresso_2 =  substr($dataIngressoUsuarioEscola,2,3);
   $dataIngresso_3 = "/". substr($dataIngressoUsuarioEscola,0,2);
   $dataIngresso = $dataIngresso_1 . $dataIngresso_2 . $dataIngresso_3;
}

   $dataIngressoCompara = substr($dataIngressoUsuarioEscola,6,4);
   $dataIngressoCompara = $dataIngressoCompara . substr($dataIngressoUsuarioEscola,3,2);
   $dataIngressoCompara = $dataIngressoCompara . substr($dataIngressoUsuarioEscola,0,2);

if ($certidaoNascimentoEmissao != '')
{
   $dataCertidao_1 =  substr($certidaoNascimentoEmissao,6,4);
   $dataCertidao_2 =  substr($certidaoNascimentoEmissao,2,3);
   $dataCertidao_3 = "/". substr($certidaoNascimentoEmissao,0,2);
   $dataCertidao = $dataCertidao_1 . $dataCertidao_2 . $dataCertidao_3;
}

if (strlen($certidaoNascimentoEmissao) == 0)
{
   $certidaoNascimentoEmissao = '01/01/0001';
}

if (strlen($dataIngressoUsuarioEscola) == 0)
{
    $dataIngressoUsuarioEscola = '01/01/0001';
}

// Redefine formato retorno datas

   $_SESSION["f_dataNascimentoUsuario"]             = $dataNascimento;;
   $_SESSION["f_certidaoNascimentoEmissao"]       = $dataCertidao;
   $_SESSION["f_dataMatricula"]                   = $dataMat;
   $_SESSION["f_dataIngressoUsuarioEscola"]         = $dataIngresso;

// Efetua Conexao ao Banco

include "includes\begin.php";

pg_set_client_encoding($dbh, UTF8);

/* -----------------------------------------------------------------------------------


   Fase 1: Exclus�o de registros do Banco de Dados


   S�o efetuados em sequencia a retirada de  registros de:

   . especiais,
   . informa��es complementares
   . matricula anterior,
   . matricula atual,
   - irm�os de Usuarios
   . responsaveis, e
   . Usuario.

------------------------------------------------------------------------------------ */

$result = pg_query($dbh, "BEGIN");
if (!$result)
{
   $erro = "Erro no In�cio da Transa��o";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

$sql = "select * from especial where inepUsuario = '$inepUsuario'";
$resultSel = pg_query($dbh, $sql);
if ($resultSel)
{
  $sql = "delete from especial where inepUsuario = '$inepUsuario'";
  $resultDel = pg_query($dbh, $sql);
  if (!$resultDel)
  {
    pg_query($dbh, "ROLLBACK");
    $erro = "Erro ao apagar registros da tabela EspecialUsuario";
    $_SESSION["f_retorno"] = $erro;
    header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
    exit;
  }
}

$sql = "select * from infoComplementar where inepUsuario = '$inepUsuario'";
$resultSel = pg_query($dbh, $sql);
if ($resultSel)
{
  $sql = "delete from infoComplementar where inepUsuario = '$inepUsuario'";
  $resultDel = pg_query($dbh, $sql);
  if (!$resultDel)
  {
    pg_query($dbh, "ROLLBACK");
    $erro = "Erro ao apagar registros da tabela infoComplementar";
    $_SESSION["f_retorno"] = $erro;
    header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
    exit;
  }
}

$sql = "select * from matriculaAnterior where inepUsuario = '$inepUsuario'";
$resultSel = pg_query($dbh, $sql);
if ($resultSel)
{
  $sql = "delete from matriculaAnterior where inepUsuario = '$inepUsuario'";
  $resultDel = pg_query($dbh, $sql);
  if (!$resultDel)
  {
    pg_query($dbh, "ROLLBACK");
    $erro = "Erro ao apagar registros da tabela matriculaAnterior";
    $_SESSION["f_retorno"] = $erro;
    header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
    exit;
  }
}

// exclusao de matricula atual

$sql = "select * from matriculaAtual where inepUsuario = '$inepUsuario'";
$resultSel = pg_query($dbh, $sql);
if ($resultSel)
{
  $sql = "delete from matriculaAtual where inepUsuario = '$inepUsuario'";
  $resultDel = pg_query($dbh, $sql);
  if (!$resultDel)
  {
    pg_query($dbh, "ROLLBACK");
    $erro = "Erro ao apagar registros da tabela matriculaAtual";
    $_SESSION["f_retorno"] = $erro;
    header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
    exit;
  }
}

// exclusao de responsavel

// verifica se responsavel ligado a outro Usuario

if (strlen($tipoDocIdPai) != 0)
{
    $sql = "select * from responsavelUsuario
            where tipodocidresponsavel = '$tipoDocIdPai'  and
                  numdocidresponsavel  = '$numDocIdPai'   and
                  inepUsuario not in ('$inepUsuario')" ;
          
    $result = pg_query($dbh, $sql);
    if (!$result)
    {			
       pg_query($dbh, "ROLLBACK");
       $erro = "Erro ao acessar responsavel para exclusao na atualizacao";
       $_SESSION["f_retorno"] = $erro;
       header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
       exit;
    }
    if (!($linhaResultado = pg_fetch_array($result)))
    {
    
// caso n�o esteja pode apagar o responsavel

        $sql = "delete from responsavel
        where  tipodocidresponsavel = '$tipoDocIdPai' and
               numdocidresponsavel  = '$numDocIdPai'";
        $result = pg_query($dbh, $sql);
        if (!$result)
        {		
           pg_query($dbh, "ROLLBACK");
           $erro = "Erro ao apagar registro de responsavel pai";
           $_SESSION["f_retorno"] = $erro;
           header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
           exit;
        }
    }
    
// em qualquer dos casos deve-se apagar a rela��o do responsavel com Usuario
    
    $sql = "delete from responsavelUsuario
            where  tipodocidresponsavel = '$tipoDocIdPai' and
                   numdocidresponsavel  = '$numDocIdPai'  and
                   inepUsuario = '$inepUsuario'";
    $result = pg_query($dbh, $sql);
    if (!$result)
    {		
       pg_query($dbh, "ROLLBACK");
       $erro = "Erro ao apagar registro de responsavel pai - Usuario";
       $_SESSION["f_retorno"] = $erro;
       header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
       exit;
    }
}

// para os outros tipos de responsaveis o mesmo racioc�nio
    
if (strlen($tipoDocIdMae) != 0)
{
    $sql = "select * from responsavelUsuario
            where tipodocidresponsavel = '$tipoDocIdMae'  and
                  numdocidresponsavel  = '$numDocIdMae'   and
                  inepUsuario not in('$inepUsuario')" ;

    $result = pg_query($dbh, $sql);
    if (!$result)
    {
       pg_query($dbh, "ROLLBACK");
       $erro = "Erro ao acessar responsavel para exclusao na atualizac�o";
       $_SESSION["f_retorno"] = $erro;
       header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
       exit;
    }
    if (!($linhaResultado = pg_fetch_array($result)))
    {
        $sql = "delete from responsavel
        where  tipodocidresponsavel = '$tipoDocIdMae' and
               numdocidresponsavel  = '$numDocIdMae'";
        $result = pg_query($dbh, $sql);
        if (!$result){			
           pg_query($dbh, "ROLLBACK");
           $erro = "Erro ao apagar registro de responsavel - mae";
           $_SESSION["f_retorno"] = $erro;
           header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
           exit;
        }
    }
    $sql = "delete from responsavelUsuario
            where  tipodocidresponsavel = '$tipoDocIdMae' and
                   numdocidresponsavel  = '$numDocIdMae'  and
                   inepUsuario = '$inepUsuario'";
    $result = pg_query($dbh, $sql);
    if (!$result)
    {
       pg_query($dbh, "ROLLBACK");
       $erro = "Erro ao apagar registro de responsavel mae - Usuario";
       $_SESSION["f_retorno"] = $erro;
       header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
       exit;
    }
}

if (strlen($tipoDocIdResponsavel) != 0)
{
    $sql = "select * from responsavelUsuario
            where tipodocidresponsavel = '$tipoDocIdResponsavel' and
                  numdocidresponsavel  = '$numDocIdResponsavel'  and
                  inepUsuario not in ('$inepUsuario')" ;

    $result = pg_query($dbh, $sql);
    if (!$result)
    {
       pg_query($dbh, "ROLLBACK");
       $erro = "Erro ao acessar responsavel para exclusao por Usuario na atualizac�o";
       $_SESSION["f_retorno"] = $erro;
       header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
       exit;
    }
    if (!($linhaResultado = pg_fetch_array($result)))
    {
        $sql = "delete from responsavel
                where  tipodocidresponsavel = '$tipoDocIdResponsavel' and
                       numdocidresponsavel  = '$numDocIdResponsavel'";
        $result = pg_query($dbh, $sql);
        if (!$result)
        {		
           pg_query($dbh, "ROLLBACK");
           $erro = "Erro ao apagar registro de responsavel";
           $_SESSION["f_retorno"] = $erro;
           header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
           exit;
        }
    }
    $sql = "delete from responsavelUsuario
            where  tipodocidresponsavel = '$tipoDocIdResponsavel' and
                   numdocidresponsavel  = '$numDocIdResponsavel'  and
                   inepUsuario = '$inepUsuario'";
    $result = pg_query($dbh, $sql);
    if (!$result)
    {
       pg_query($dbh, "ROLLBACK");
       $erro = "Erro ao apagra registro de responsavel pelo Usuario";
       $_SESSION["f_retorno"] = $erro;
       header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
       exit;
    }
}



// exclusao de registro de irmaosUsuario

$sql = "select * from irmaosUsuario where inepUsuario = '$inepUsuario'";
$resultSel = pg_query($dbh, $sql);
if ($resultSel)
{
  $sql = "delete from irmaosUsuario where inepUsuario = '$inepUsuario'";
  $resultDel = pg_query($dbh, $sql);
  if (!$resultDel)
  {
    pg_query($dbh, "ROLLBACK");
    $erro = "Erro ao apagar registros da irmaosUsuario";
    $_SESSION["f_retorno"] = $erro;
    header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
    exit;
  }
}

// exclusao de registro de Usuario

$sql = "select * from Usuario where inepUsuario = '$inepUsuario'";
$resultSel = pg_query($dbh, $sql);
if ($resultSel)
{
  $sql = "delete from Usuario where inepUsuario = '$inepUsuario'";
  $resultDel = pg_query($dbh, $sql);
  if (!$resultDel)
  {
    pg_query($dbh, "ROLLBACK");
    $erro = "Erro ao apagar registros da Usuario";
    $_SESSION["f_retorno"] = $erro;
    header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
    exit;
  }
}

//------------------------------------------------------

//      Critica Complementar dos dados

// ----------------------------------------------------

if (strlen($cpfUsuario) != 0)
{
  if (strlen($cpfUsuario) != 14)
  {
     $erro = "Erro: tamanho do cpf deve ter que 14 digitos incluindo pontos e traco";
     $_SESSION["f_retorno"]= $erro;
     pg_close($dbh);
     header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
     exit;
  }
}

if (strlen($inepUsuario) > 15)
{
   $erro = "Erro: tamanho do inep maior que 15 posicoes";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if (strlen($nisUsuario) != 0)
{
  if (strlen($nisUsuario) > 11)
  {
     $erro = "Erro: tamanho do nis maior que 11 posicoes";
     $_SESSION["f_retorno"]= $erro;
     pg_close($dbh);
     header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
     exit;
  }
}

// Verifica��o do n�mero do cart�o SUS

if (strlen($cartaoSus) != 0        &&
    substr($cartaoSus,0,1) != '8'  &&
    substr($cartaoSus,0,1) != '9')
{
   $cartaoSusValido = '1';
   if ((strlen(trim($cartaoSus))) != 15)
   {
      $cartaoSusValido = '0';
   }
   $pis = substr($cartaoSus,0,11);
   $soma = (((substr($pis, 0,1)) * 15) +
 	        ((substr($pis, 1,1)) * 14) +
	        ((substr($pis, 2,1)) * 13) +
	        ((substr($pis, 3,1)) * 12) +
	        ((substr($pis, 4,1)) * 11) +
	        ((substr($pis, 5,1)) * 10) +
	        ((substr($pis, 6,1)) * 9)  +
	        ((substr($pis, 7,1)) * 8)  +
	        ((substr($pis, 8,1)) * 7)  +
	        ((substr($pis, 9,1)) * 6) +
	        ((substr($pis, 10,1)) * 5));
   $resto = fmod($soma, 11);
   $dv = 11  - $resto;
   if ($dv == 11)
   {
      $dv = 0;
   }
   if ($dv == 10)
   {
      $soma = ((((substr($pis, 0,1)) * 15) +
      	        ((substr($pis, 1,1)) * 14) +
                ((substr($pis, 2,1)) * 13) +
                ((substr($pis, 3,1)) * 12) +
                ((substr($pis, 4,1)) * 11) +
	            ((substr($pis, 5,1)) * 10) +
	            ((substr($pis, 6,1)) * 9)  +
	            ((substr($pis, 7,1)) * 8)  +
	            ((substr($pis, 8,1)) * 7)  +
	            ((substr($pis, 9,1)) * 6) +
	            ((substr($pis, 10,1)) * 5)) + 2);
      $resto = fmod($soma, 11);
      $dv = 11  - $resto;
      $resultado = $pis."001".$dv;
   }
   else
   {
      $resultado = $pis."000".$dv;
   }
   if (strcmp($cartaoSus, $resultado) != 0)
   {
      $erro = "Erro: Numero do cadSus invalido";
      $_SESSION["f_retorno"]= $erro;
      pg_close($dbh);
      header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
      exit;
   }
}
else
{
   $soma = ((substr($cartaoSus,0,1)) * 15) +
           ((substr($cartaoSus,1,1)) * 14) +
	       ((substr($cartaoSus,2,1)) * 13) +
	       ((substr($cartaoSus,3,1)) * 12) +
	       ((substr($cartaoSus,4,1)) * 11) +
	       ((substr($cartaoSus,5,1)) * 10) +
   	       ((substr($cartaoSus,6,1)) * 9)  +
           ((substr($cartaoSus,7,1)) * 8)  +
    	   ((substr($cartaoSus,8,1)) * 7)  +
	       ((substr($cartaoSus,9,1)) * 6)  +
	       ((substr($cartaoSus,10,1)) * 5) +
           ((substr($cartaoSus,11,1)) * 4) +
	       ((substr($cartaoSus,12,1)) * 3) +
	       ((substr($cartaoSus,13,1)) * 2) +
	       ((substr($cartaoSus,14,1)) * 1);
   $resto = fmod($soma, 11);
   if ($resto != 0)
   {
      $erro = "Erro: Numero do cadSus invalido";
      $_SESSION["f_retorno"]= $erro;
      pg_close($dbh);
      header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
      exit;
   }
}
if (ufNascimentoUsuario ==  '0')
{
   $erro = "Erro: Data de Nascimento nao digitada";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if (strlen(dataNascimentoUsuario) == 0)
{
   $erro = "Erro: Data de Nascimento nao digitada";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}
/*
if ($certidaoApresentada == '1'                &&
    (
     strlen($certidaoNascimentoCartorio) == 0  &&
     strlen($certidaoNascimentoTermo)    == 0  &&
     strlen($certidaoNascimentoFolha)    == 0  &&
     strlen($certidaoNascimentoLivro)    == 0  &&
     strlen($certidaoNascimentoEmisao)   == 0
    ))
{
   $erro = "Erro: Nenhuma informa�ao foi digitada para certidao apresentada ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($certidaoApresentada == '0'                 &&
    (
     strlen($certidaoNascimentoCartorio)  != 0  ||
     strlen($certidaoNascimentoTermo)     != 0  ||
     strlen($certidaoNascimentoFolha)     != 0  ||
     strlen($certidaoNascimentoLivro)     != 0  ||
     strlen($certidaoNascimentoEmisao)    != 0
    ))
{
   $erro = "Erro: Informacao digitada para certidao nao apresentada ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($certidaoDigitalizada == '1' && $certidaoApresentada == '0')
{
   $erro = "Erro: Digitalizada uma certidao nao apresentada";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}



if ($existeRegistroPai == '0' && strlen($nomePai) == 0)
{
   $erro = "Erro: informacao de nome de pai, com registro, nao declarado";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($existeRegistroMae == '0' && strlen($nomeMae) == 0)
{
   $erro = "Erro: informacao de nome da mae, com registro, nao declarado";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

*/

if ($existeRegistroPai == '1' && strlen($nomePai) != 0)
{
   $erro = "Erro: Digitada informacao de pai declarado sem registro";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($existeRegistroMae == '1' && strlen($nomeMae) != 0)
{
   $erro = "Erro: Digitada informacao de mae declarada sem registro";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if (strlen($nomeResponsavel) != 0 && strlen(grauParentescoResponsavel) == 0)
{
   $erro = "Erro: Nao foi especificado grau de parentesco do responsavel";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if (strlen($nomeResponsavel) == 0 && strlen($grauParentescoResponsavel) != 0)
{
   $erro = "Erro: Foi especificado grau de parentesco para responsavel nao digitado";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

/*
if (strlen($cpfUsuario) == 0    &&
    (
     $cpfComprovado   == '1'  ||
     $cpfDigitalizado == '1'
    ))
{
   $erro = "Erro: Consta como comprovado ou digitalizado cpf nao declarado";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if (strlen($cpfUsuario) != 0   && $cpfComprovado   == '0')
{
   $erro = "Erro: Nao consta como comprovado cpf declarado";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($cpfComprovado == '0' && $cpfDigitalizado == '1')
{
   $erro = "Erro: declarado digitalizado cpf n�o comprovado";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

*/

// verifica cpf

if (strlen($cpfUsuario) != 0)
{
   $cpfVerifica =  substr($cpfUsuario,0,3) .
                   substr($cpfUsuario,4,3) .
                   substr($cpfUsuario,8,3) .
                   substr($cpfUsuario,12,2) ;
   if(!is_numeric($cpfVerifica))
   {
     $cpfValido = '0';
   }
   else
   {
     if( ($cpfVerifica == '11111111111') ||
         ($cpfVerifica == '22222222222') ||
         ($cpfVerifica == '33333333333') ||
         ($cpfVerifica == '44444444444') ||
         ($cpfVerifica == '55555555555') ||
         ($cpfVerifica == '66666666666') ||
         ($cpfVerifica == '77777777777') ||
         ($cpfVerifica == '88888888888') ||
         ($cpfVerifica == '99999999999') ||
         ($cpfVerifica == '00000000000')
       )
     {
        $cpfValido = '0';
     }
     else
     {
        $digitoVerificador = substr($cpfVerifica, 9,2);
        for($i=0; $i<=8; $i++)
        {
           $digito[$i] = substr($cpfVerifica, $i,1);
        }
        $posicao = 10;
        $soma = 0;
        for($i=0; $i<=8; $i++)
        {
           $soma = $soma + $digito[$i] * $posicao;
           $posicao = $posicao - 1;
        }
        $digito[9] = $soma % 11;
        if($digito[9] < 2)
        {
           $digito[9] = 0;
        }
        else
        {
           $digito[9] = 11 - $digito[9];
        }
        $posicao = 11;
        $soma = 0;
        for ($i=0; $i<=9; $i++)
        {
           $soma = $soma + $digito[$i] * $posicao;
           $posicao = $posicao - 1;
        }
        $digito[10] = $soma % 11;
        if ($digito[10] < 2)
        {
            $digito[10] = 0;
        }
        else
        {
            $digito[10] = 11 - $digito[10];
        }
        $dv = $digito[9] * 10 + $digito[10];
       if ($dv != $digitoVerificador)
       {
           $cpfValido = '0';
       }
       else
       {
        $cpfValido = '1';
       }
     }
   }
   if ($cpfValido == '0')
   {
      $erro = "Erro: cpf invalido";
      $_SESSION["f_retorno"]= $erro;
      pg_close($dbh);
      header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
      exit;
   }
}

if ($responsavelMatricula == '1'   &&
    (
      strlen($nomePai) == 0             ||
      strlen($numDocIdPai) == 0         ||
      strlen($tipoDocIdPai) == 0
    ))
{
   $erro = "Erro: Dados responsavel (pai) pela matricula nao digitados";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($responsavelMatricula == '2'   &&
    (
      strlen($nomeMae) == 0             ||
      strlen($numDocIdMae) == 0         ||
      strlen($tipoDocIdMae) == 0
    ))
{
   $erro = "Erro: Dados responsavel (mae) pela matricula nao digitados";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($responsavelMatricula == '3'    &&
    (
      strlen($nomeResponsavel) == 0      ||
      strlen($numDocIdResponsavel) == 0  ||
      strlen($tipoDocIdResponsavel) == 0
    ))
{
   $erro = "Erro: Dados responsavel (pessoa/parente) por matricula nao digitados";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($especialUsuario == '1'  && strlen($tipoNecessidadeEspecial[0]) == 0)
{
   $erro = "Erro: Indicacao de especial, mas omitido qual tipo de necessidade especial";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($especialUsuario == '0'  && strlen($tipoNecessidadeEspecial[0]) != 0)
{
   $erro = "Erro: Informado tipo de necessidade especial para um  Usuario, sem especificar se especial ou nao";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($especialUsuario == '1'  && strlen($tipoNecessidadeEspecial[0]) == 0)
{
   $erro = "Erro: Nao informado tipo de necessidade especial para um  Usuario declarado ser especial";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($especialUsuario == '0' && $comprovadoEspecial == '1')
{
   $erro = "Erro: Comprovado portador necessidade especial sem especificar que Usuario � especial";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($digitalizadoEspecial == '1' && $comprovadoEspecial == '0')
{
   $erro = "Erro: Informou digitaliza��o de documento de portador nde necessidade especial sem que fosse comprovado";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($comprovadoEspecialUsuario == '1'  && strlen($tipoNecessidadeEspecial[0]) == 0)
{
   $erro = "Erro: Informado que foi comprovada a necessidade especial sem especificar o tipo de necessidade ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

/*

if ($especialUsuario == '1' && strlen($comprovadoEspecial) == 0)
{
   $erro = "Erro: Nao especificado apresentacao  de documento comprobatorio de necessidade especial ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($especialUsuario == '1' && strlen($digitalizadoEspecial) == 0)
{
   $erro = "Erro: Nao especificado digitalizacao de documento comprobatorio de necessidade especial ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

*/

if($corRacaUsuario == '')
{
   $erro = "Erro: Informar cor/raca do Usuario";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if (strlen($dataNascimentoUsuario) == 0)
{
   $erro = "Erro: Data de Nascimento nao digitada";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($nacionalidadeUsuario == '')
{
   $erro = "Erro: Nao especificou uma nacionalidade para oUsuario ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($nacionalidadeUsuario == '1'  && $codigoPaisUsuario != '10')
{
   $erro = "Erro: Informado pais diferente de Brasil para nacionalidade brasileira ou naturalizada ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if (($nacionalidadeUsuario == '2' || $nacionalidadeUsuario == '3')  &&
     $codigoPaisUsuario == '10')
{
   $erro = "Erro: Informado  Brasil como pais para Usuario com nacionalidade estrangeira ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}
/*
if (strlen($dataIngressoUsuarioEscola) != 0 &&
    ($dataIngressoUsuarioEscola > $dataMatricula))
{
   $erro = "Erro: Informada data de ingresso na escola posterior a data de matricula ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}
*/

if ($UsuarioTransferido == '1' && $tipoEscolaOrigem == '')
{
   $erro = "Erro: Nao foi informado o tipo de escolade transferencia";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

/* Rtirada temporariamente

if ($UsuarioTransferido == '0'                &&
    (
      $tipoEscolaOrigem != '0'              ||
      strlen($outrosTiposEscolaOrigem) != 0 ||
      strlen($nomeEscolaOrigem) != 0
    ))
{
   $erro = "Erro: Informados dados de uma escola origem anterior sem registrar que houve transferencia";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}
*/

if ($tipoEscolaOrigem == '6' && strlen($outrosTiposEscolaOrigem) == 0)
{
   $erro = "Erro: Nao especificou outro tipo para escola origem da transferencia";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($UsuarioTransferido == '1' && strlen($nomeEscolaOrigem) == 0)
{
   $erro = "Erro: Nao foi especificada a unidade de origem do Usuario na transferencia ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($possuiIrmaoEscolaMunicipal == '0'  &&
    (
      strlen($nomeIrmao1) != 0     ||
      strlen($nomeIrmao2) != 0     ||
      strlen($nomeIrmao3) != 0     ||
      strlen($nomeIrmao4) != 0     ||
      strlen($nomeIrmao5) != 0
    ))
{
   $erro = "Erro: Informacao sobre irmaos em escolas municipais inconsistente";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($tipoEscolaOrigem != '6' && strlen($outrosTiposEscolaOrigem) != 0)
{
   $erro = "Erro: Especificou outro tipo para escola origem sem assinalar que era outro tipo de escola";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if (strlen($telefoneFixoUsuario) != 0 && $possuiTelefoneFixo == '1')
{
   $erro = "Erro: Informou nao possuir telefone fixo , mas numero do telefone foi digitado ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if (strlen($telefoneCelularUsuario) != 0 && $possuiTelefoneCelular == '1')
{
   $erro = "Erro: Informou nao possuir telefone celular , mas numero do telefone foi digitado ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if (strlen($telefoneRecadoUsuario) != 0 && $possuiTelefoneRecado == '1')
{
   $erro = "Erro: Informou nao possuir telefone de recado , mas numero do telefone foi digitado ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if (strlen($telefoneFixoUsuario) != 0 && $possuiemail == '1')
{
   $erro = "Erro: Informou nao possuir email , mas numero do telefone foi digitado ";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if (strlen($logradouroGeoiguacuUsuario) != 0 && $logradouroNaoCadastrado == '1')
{
   $erro = "Erro: Foi informado o geoiguacu, mas declarado o imovel ou logradouro ser nao cadastrado";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if (strlen($logradouroGeoiguacuUsuario) == 0 && $logradouroNaoCadastrado != '1')
{
   $erro = "Erro: Imovel ou logradouro foi informado ser cadastrado no geoiguacu,mas nao foi informado o numero do cadastro";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ($logradouroNaoCadastrado == '1' && strlen($logradouroGeoiguacuJustificativa) == 0)
{
   $erro = "Erro: Faltou justificativa para logradouro nao cadastrado";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

/*

if (strlen($logradouroGeoIguacuUsuario) !=0 && strcmp($logradouroMunicipioUsuario, '3303500') != 0)
{
   $erro = "Erro: Digitado codigo geoiguacu para logradouro/imovel nao situado Nova Iguacu";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

 */
/*
if ((strlen($nomeEscolaAnterior) == 0 || strlen($codigoEscolaAnterior)) == 0 &&
    $tipoEscolaAnterior == '')
{
   $erro = "Erro: Especificar o tipo da escola referente a matricula anterior";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ((strlen($nomeEscolaAnterior) != 0 || strlen($codigoEscolaAnterior)) != 0 &&
     $escolaridadeAnterior == '')
{
   $erro = "Erro: Nao especificou escolaridade relativa ao ano anterior";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}
*/
/*

if ((strlen($nomeEscolaAnterior) != 0 || strlen($codigoEscolaAnterior)) != 0 &&
     $aprovadoAnterior == '')
{
   $erro = "Erro: Nao especificou se Usuario foi aprovado ou nao na matricula anterior";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ((strlen($nomeEscolaAnterior) != 0 || strlen($codigoEscolaAnterior)) != 0 &&
     strlen($turnoAnterior) == 0)
{
   $erro = "Erro: Nao especificou turno relativo a matricula anterior";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ((strlen($nomeEscolaAnterior) != 0 || strlen($codigoEscolaAnterior)) != 0 &&
     $comprovadoAnterior == '')
{
   $erro = "Erro: Nao especificou se comprovou matricula anterior ou nao";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ((strlen($nomeEscolaAnterior) != 0 || strlen($codigoEscolaAnterior)) != 0 &&
     $turnoAnterior == '')
{
   $erro = "Erro: Nao especificou horario integral relativo a matricula anterior";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ((strlen($nomeEscolaAnterior) != 0 || strlen($codigoEscolaAnterior)) != 0 &&
     $horarioIntegralAnterior == '')
{
   $erro = "Erro: Nao especificou turno relativo a matricula anterior";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

*/
/*
if ((strlen($nomeEscolaAnterior) == 0 && strlen($codigoEscolaAnterior) == 0) &&
     $escolaridadeAnterior != '')
{
   $erro = "Erro: Especificou escolaridade relativa ao ano anterior sem discriminar escola ou codigo de escola anterior";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

if ((strlen($nomeEscolaAnterior) == 0 && strlen($codigoEscolaAnterior) == 0) &&
     $aprovadoAnterior != '')
{
   $erro = "Erro: Especificou que Usuario foi aprovado, ou nao, na matricula anterior sem especificar escola anterior";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}
*/
/*

if ((strlen($nomeEscolaAnterior) == 0 && strlen($codigoEscolaAnterior) == 0) &&
     $turnoAnterior != '')
{
   $erro = "Erro: Especificou turno relativo a matricula anterior sem discriminar escolaou codgo de escola anterior";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

*/
/*
if ((strlen($nomeEscolaAnterior) == 0 && strlen($codigoEscolaAnterior) == 0) &&
     $comprovadoAnterior != '')
{
   $erro = "Erro: Especificou comprovacao de  matricula anterior sem citar escola ou codigo de escola";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}
*/
/*

if ((strlen($nomeEscolaAnterior) == 0 && strlen($codigoEscolaAnterior) == 0) &&
     $horarioIntegralAnterior != '')
{
   $erro = "Erro: Especificou horario integral relativo a matricula anterior sem citar escola ou codigo de escola anterior";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;


}
*/
/* -----------------------------------------------------------

     Define Inicio da reinser��o dos dados na base de dados.

     Caso aconte�a algum problema durante a reinser��o dos
     dados, o procedimento ROLLback permite o retorno ao estado
     anterior da base de dados.

------------------------------------------------------------- */

// Grava Tabela Usuario
// Grava Tabela Usuario

$nome = "";
$indiceNome = 0;
$tamanhoNome=strlen($nomeUsuario);

while ($indiceNome != $tamanhoNome)
{
   if ($nomeUsuario[$indiceNome] == ' ')
   {
       $nome = $nome . " ";
   }
   else
   {
       $nomeUsuario[$indiceNome] = preg_replace("[^a-zA-Z0-9_.]", "",
       strtr($nomeUsuario[$indiceNome], "�������������������������� ",
       "aaaaeeiooouucAAAAEEIOOOUUC_"));
       $nome = $nome . $nomeUsuario[$indiceNome];
   }
   $indiceNome+=1;
}





$nomeUsuario = strtoupper($nome);
$sql = "INSERT INTO Usuario
(
   cartaoSus,
   nomeUsuario,
   sexoUsuario,
   dataNascimentoUsuario,
   ufNascimentoUsuario,
   codigoMunicipioNascimentoUsuario,
   certidaoTipo,
   certidaoNascimentoCartorio,
   certidaoNascimentoTermo,
   certidaoNascimentoFolha,
   certidaoNascimentoLivro,
   certidaoNascimentoEmissao,
   certidaoNascimentoEstado,
   certidaoApresentada,
   certidaoDigitalizada,
   existeRegistroPai,
   existeRegistroMae,
   cpfUsuario,
   cpfComprovado,
   cpfDigitalizado,
   inepUsuario,
   especialUsuario,
   nisUsuario,
   nacionalidadeUsuario,
   codigoPaisUsuario,
   corRacaUsuario,
   grupoSanguineoUsuario,
   possuiIrmaoEscolaMunicipal,
   logradouroTipoUsuario,
   logradouroNomeUsuario,
   logradouroNumeroUsuario,
   logradouroComplementoUsuario,
   logradouroBairroUsuario,
   logradouroCidadeUsuario,
   logradouroUfUsuario,
   logradouroCepUsuario,
   logradouroGeoiguacuUsuario,
   logradouroNaoCadastrado,
   logradouroGeoiguacuJustificativa,
   logradouroPontoReferenciaUsuario,
   telefoneFixoUsuario,
   telefoneCelularUsuario,
   telefoneRecadoUsuario,
   emailUsuario,
   possuiTelefoneFixo,
   possuiTelefonecelular,
   possuiTelefonerecado,
   possuiEmail,
   comprovadoEspecial,
   digitalizadoEspecial

) VALUES (

   '$cartaoSus',
   '$nomeUsuario',
   '$sexoUsuario',
   '$dataNascimentoUsuario',
   '$ufNascimentoUsuario',
   '$codigoMunicipioNascimentoUsuario',
   '$certidaoTipo',
   '$certidaoNascimentoCartorio',
   '$certidaoNascimentoTermo',
   '$certidaoNascimentoFolha',
   '$certidaoNascimentoLivro',
   '$certidaoNascimentoEmissao',
   '$certidaoNascimentoEstado',
   '$certidaoApresentada'    ,
   '$certidaoDigitalizada',
   '$existeRegistroPai',
   '$existeRegistroMae',
   '$cpfUsuario',
   '$cpfComprovado',
   '$cpfDigitalizado',
   '$inepUsuario' ,
   '$especialUsuario',
   '$nisUsuario',
   '$nacionalidadeUsuario',
   '$codigoPaisUsuario',
   '$corRacaUsuario',
   '$grupoSanguineoUsuario',
   '$possuiIrmaoEscolaMunicipal',
   '$logradouroTipoUsuario',
   '$logradouroNomeUsuario',
   '$logradouroNumeroUsuario',
   '$logradouroComplementoUsuario',
   '$logradouroBairroUsuario',
   '$logradouroCidadeUsuario',
   '$logradouroUfUsuario',
   '$logradouroCepUsuario',
   '$logradouroGeoiguacuUsuario',
   '$logradouroNaoCadastrado',
   '$logradouroGeoiguacuJustificativa',
   '$logradouroPontoReferenciaUsuario',
   '$telefoneFixoUsuario',
   '$telefoneCelularUsuario',
   '$telefoneRecadoUsuario',
   '$emailUsuario',
   '$possuiTelefoneFixo',
   '$possuiTelefoneCelular',
   '$possuiTelefoneRecado',
   '$possuiEmail',
   '$comprovadoEspecial',
   '$digitalizadoEspecial'
)";

$result = pg_query($dbh, $sql);

if (!$result)
{
   $result = pg_query($dbh, "ROLLBACK");
   if (!$result)
   {
      $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
      $SESSION["f_retornoFatal"] = $erroFatal;
   }
   $erro = "Erro na Gravacao de Usuario";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

// Inclusao da Tabela Responsavel e Responsavel-Usuario

if (strlen($nomePai) != 0)
{

   $sqlResp = "select * from responsavel
               where tipodocidresponsavel = '$tipoDocIdPai' and
                     numdocidresponsavel  = '$numDocIdPai'";
   $resultResp = pg_query($dbh, $sqlResp);

   if (!$resultResp)
   {
      $result = pg_query($dbh,"ROLLBACK");
      if (!$result)
      {
         $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
         $_SESSION["f_retornoFatal"] = $erroFatal;
         exit;
      }
      $erro = "Erro aotentar recuperar Responsavel - Pai";
      $_SESSION["f_retorno"]= $erro;
      pg_close($dbh);
      header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
      exit;
   }

   if (!($responsavel = pg_fetch_array($resultResp)))  // responsavel nao encontrado
   {
      $sql = "INSERT INTO responsavel
      (
         tipoDocIdResponsavel,
         outroDocIdResponsavel,
         numDocIdResponsavel,
         ufDocIdResponsavel,
         emissaoDocIdResponsavel,
         orgaoEmissorDocIdResponsavel,
         docResponsavelComprovado,
         docResponsavelDigitalizado,
         nomeResponsavel,
         grauParentescoResponsavel

      ) VALUES (

         '$tipoDocIdPai',
         '$outroDocIdPai',
         '$numDocIdPai',
         '$ufDocIdPai',
         '$emissaoDocIdPai',
         '$orgaoEmissorDocIdPai',
         '$docPaiComprovado',
         '$docPaiDigitalizado',
         '$nomePai',
         '1'
      )";

      $result = pg_query($dbh, $sql);
      if (!$result)
      {
         $result = pg_query($dbh,"ROLLBACK");
         if (!$result)
         {
            $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
            $_SESSION["f_retornoFatal"] = $erroFatal;
            exit;
         }
         $erro = "Erro na Grava��o de Responsavel - Pai";
         $_SESSION["f_retorno"]= $erro;
         pg_close($dbh);
         header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
         exit;
      }
   }
   $sql = "INSERT INTO responsavelUsuario
   (
      tipoDocIdResponsavel,
      numDocIdResponsavel,
      inepUsuario

   ) VALUES (

      '$tipoDocIdPai',
      '$numDocIdPai',
      '$inepUsuario'
   )";

   $result = pg_query($dbh, $sql);
   if (!$result)
   {
      $result = pg_query($dbh,"ROLLBACK");
      if (!$result)
      {
         $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
         $_SESSION["f_retornoFatal"] = $erroFatal;
         exit;
      }
      $erro = "Erro na Grava��o de Responsavel Usuario - Pai";
      $_SESSION["f_retorno"]= $erro;
      pg_close($dbh);
      header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
      exit;
   }
}


if (strlen($nomeMae) != 0)
{
   $sqlResp = "select * from responsavel
               where tipodocidresponsavel = '$tipoDocIdPai' and
                     numdocidresponsavel  = '$numDocIdMae'";
   $resultResp = pg_query($dbh, $sqlResp);

   if (!$resultResp)
   {
      $result = pg_query($dbh,"ROLLBACK");
      if (!$result)
      {
         $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
         $_SESSION["f_retornoFatal"] = $erroFatal;
         exit;
      }
      $erro = "Erro ao tentar recuperar Responsavel - Mae";
      $_SESSION["f_retorno"]= $erro;
      pg_close($dbh);
      header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
      exit;
   }

   if (!($responsavel = pg_fetch_array($resultResp)))  // responsavel nao encontrado
   {
      $sql = "INSERT INTO responsavel
      (
         tipoDocIdResponsavel,
         outroDocIdResponsavel,
         numDocIdResponsavel,
         ufDocIdResponsavel,
         emissaoDocIdResponsavel,
         orgaoEmissorDocIdResponsavel,
         docResponsavelComprovado,
         docResponsavelDigitalizado,
         nomeResponsavel,
         grauParentescoResponsavel


      ) VALUES (

         '$tipoDocIdMae',
         '$outroDocIdMae',
         '$numDocIdMae',
         '$ufDocIdMae',
         '$emissaoDocIdMae',
         '$orgaoEmissorDocIdMae',
         '$docPaiComprovado',
         '$docPaiDigitalizado',
         '$nomeMae',
         '2'
      )";

      $result = pg_query($dbh, $sql);
      if (!$result)
      {
         $result = pg_query($dbh,"ROLLBACK");
         if (!$result)
         {
            $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
            $_SESSION["f_retornoFatal"] = $erroFatal;
            exit;
         }
         $erro = "Erro na Grava��o de Responsavel - Mae";
         $_SESSION["f_retorno"]= $erro;
         pg_close($dbh);
         header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
         exit;
      }
   }
   $sql = "INSERT INTO responsavelUsuario
   (
      tipoDocIdResponsavel,
      numDocIdResponsavel,
      inepUsuario

   ) VALUES (

      '$tipoDocIdMae',
      '$numDocIdMae',
      '$inepUsuario'
   )";

   $result = pg_query($dbh, $sql);
   if (!$result)
   {
      $result = pg_query($dbh,"ROLLBACK");
      if (!$result)
      {
         $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
         $_SESSION["f_retornoFatal"] = $erroFatal;
         exit;
      }
      $erro = "Erro na Grava��o de Responsavel Usuario - Mae";
      $_SESSION["f_retorno"]= $erro;
      pg_close($dbh);
      header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
      exit;
   }
}


if (strlen($nomeResponsavel) != 0)
{
   $sqlResp = "select * from responsavel
               where tipodocidresponsavel = '$tipoDocIdPai' and
                     numdocidresponsavel  = '$numDocIdResponsavel'";
   $resultResp = pg_query($dbh, $sqlResp);

   if (!$resultResp)
   {
      $result = pg_query($dbh,"ROLLBACK");
      if (!$result)
      {
         $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
         $_SESSION["f_retornoFatal"] = $erroFatal;
         exit;
      }
      $erro = "Erro ao tentar recuperar Responsavel - Responsavel";
      $_SESSION["f_retorno"]= $erro;
      pg_close($dbh);
      header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
      exit;
   }

   if (!($responsavel = pg_fetch_array($resultResp)))  // responsavel nao encontrado
   {
      $sql = "INSERT INTO responsavel
      (
         tipoDocIdResponsavel,
         outroDocIdResponsavel,
         numDocIdResponsavel,
         ufDocIdResponsavel,
         emissaoDocIdResponsavel,
         orgaoEmissorDocIdResponsavel,
         docResponsavelComprovado,
         docResponsavelDigitalizado,
         nomeResponsavel,
         grauParentescoResponsavel


      ) VALUES (

         '$tipoDocIdResponsavel',
         '$outroDocIdResponsavel',
         '$numDocIdResponsavel',
         '$ufDocIdResponsavel',
         '$emissaoDocIdResponsavel',
         '$orgaoEmissorDocIdResponsavel',
         '$docPaiComprovado',
         '$docPaiDigitalizado',
         '$nomeResponsavel',
         '$grauParentescoResponsavel'
      )";

      $result = pg_query($dbh, $sql);
      if (!$result)
      {
         $result = pg_query($dbh,"ROLLBACK");
         if (!$result)
         {
            $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
            $_SESSION["f_retornoFatal"] = $erroFatal;
            exit;
         }
         $erro = "Erro na Grava��o de Responsavel - Responsavel";
         $_SESSION["f_retorno"]= $erro;
         pg_close($dbh);
         header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
         exit;
      }
   }
   $sql = "INSERT INTO responsavelUsuario
   (
      tipoDocIdResponsavel,
      numDocIdResponsavel,
      inepUsuario

   ) VALUES (

      '$tipoDocIdResponsavel',
      '$numDocIdResponsavel',
      '$inepUsuario'
   )";

   $result = pg_query($dbh, $sql);
   if (!$result)
   {
      $result = pg_query($dbh,"ROLLBACK");
      if (!$result)
      {
         $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
         $_SESSION["f_retornoFatal"] = $erroFatal;
         exit;
      }
      $erro = "Erro na Grava��o de Responsavel Usuario - Responsavel";
      $_SESSION["f_retorno"]= $erro;
      pg_close($dbh);
      header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
      exit;
   }
}

// Grava Tabela Matricula Atual

if ($responsavelMatricula == '1')
{
   $tipoDocIdResponsavelMatricula = $tipoDocIdPai;
   $numDocIdResponsavelMatricula  = $numDocIdPai;
}

if ($responsavelMatricula == '2')
{
   $tipoDocIdResponsavelMatricula = $TipoDocIdMae;
   $numDocIdResponsavelMatricula  = $numDocIdMae;
}

if ($responsavelMatricula == '3')
{
   $tipoDocResponsavelMatricula = $TipoDocIdResponsavel;
   $numDocResponsavelMatricula  = $numDocIdResponsavel;
}

$sql = "INSERT INTO matriculaAtual
(
   cartaoSus,
   inepUsuario,
   codigoEscolaMatricula,
   responsavelMatricula,
   datamatricula,
   escolaridadeMatricula,
   tipoDocIdResponsavelMatricula,
   numDocIdResponsavelMatricula,
   dataIngressoUsuarioEscola,
   primeiraMatricula

) values (

   '$cartaoSus',
   '$inepUsuario',
   '$codigoEscolaMatricula',
   '$responsavelMatricula',
   '$dataMatricula',
   '$escolaridadeMatricula',
   '$tipoDocIdResponsavelMatricula',
   '$numDocIdResponsavelMatricula',
   '$dataIngressoUsuarioEscola',
   '$primeiraMatricula'
)";

$result = pg_query($dbh, $sql);
if (!$result)
{
   $result = pg_query($dbh, "ROLLBACK");
   if (!$result)
   {
      $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
      $SESSION["f_retornoFatal"] = $erroFatal;
   }
   $erro = "Erro na Grava��o de MatriculaAtual";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

// Grava Tabela Matricula Anterior

if (strlen($codigoEscolaAnterior) != 0 ||
     strlen($nomeEscolaAnterior)  != 0)
{
 $sql = "INSERT INTO matriculaAnterior (

   cartaoSus,
   inepUsuario,
   codigoEscolaAnterior,
   nomeEscolaAnterior,
   bairroEscolaAnterior,
   tipoEscolaAnterior,
   escolaridadeAnterior,
   turmaAnterior,
   turnoAnterior,
   horarioIntegralAnterior,
   aprovadoAnterior,
   comprovadoAnterior

 ) values (

   '$cartaoSus',
   '$inepUsuario',
   '$codigoEscolaAnterior',
   '$nomeEscolaAnterior',
   '$bairroEscolaAnterior',
   '$tipoEscolaAnterior',
   '$escolaridadeAnterior',
   '$turmaAnterior',
   '$turnoAnterior',
   '$horarioIntegralAnterior',
   '$aprovadoAnterior',
   '$comprovadoAnterior'
 )";

 $result = pg_query($dbh, $sql);
 if (!$result)
 {
   $result = pg_query($dbh, "ROLLBACK");
   if (!$result) {
      $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
      $SESSION["f_retornoFatal"] = $erroFatal;
   }
   $erro = "Erro na Grava��o de Matricula Anterior";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
 }
}

// Grava Informacoes Complementares

 $UsuarioTransferido = $UsuarioTransferido != 1 ? 0 : 1;

$sql = "INSERT INTO infoComplementar
(
   cartaoSus,
   inepUsuario,
   codigoEscolaPreferencia,
   turnoPreferencia,
   desejaHorarioIntegral,
   UsuarioNecessitaPasseEscolar,
   responsavelNecessitaPasseEscolar,
   UsuarioTransferido,
   tipoEscolaOrigem,
   outrosTiposEscolaOrigem,
   codigoEscolaOrigem,
   nomeEscolaOrigem,
   bolsaFamilia

) values (

   '$cartaoSus',
   '$inepUsuario',
   '$codigoEscolaPreferencia',
   '$turnoPreferencia',
   '$desejaHorarioIntegral',
   '$UsuarioNecessitaPasseEscolar',
   '$responsavelNecessitaPasseEscolar',
   '$UsuarioTransferido',
   '$tipoEscolaOrigem',
   '$outrosTiposEscolaOrigem',
   '$codigoEscolaOrigem',
   '$nomeEscolaOrigem',
   '$bolsaFamilia'
)";

$result = pg_query($dbh, $sql);
if (!$result)
{
   echo ($sql);
   var_dump($sql);
   $result = pg_query($dbh, "ROLLBACK");
   if (!$result) {
      $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
      $SESSION["f_retornoFatal"] = $erroFatal;
   }
   $erro = "Erro na Grava��o de Informacoes Complementares";
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

// Grava Tabela de Irmaos

if ($possuiIrmaoEscolaMunicipal == '1')
{

 if (strlen($nomeIrmao1) != 0)
 {
   $sql = "INSERT INTO irmaosUsuario
   (
     cartaoSus,
     inepUsuario,
     nomeIrmao,
     escolaIrmao,
     codigoEscolaIrmao,
     escolaridadeIrmao

   ) values (

     '$cartaoSus',
     '$inepUsuario',
     '$nomeIrmao1',
     '$escolaIrmao1',
     '$codigoEscolaIrmao1',
     '$escolaridadeIrmao1'
   )";

   $result = pg_query($dbh, $sql);
   if (!$result)
   {
     $result = pg_query($dbh, "ROLLBACK");
     if (!$result)
     {
       $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
       $SESSION["f_retornoFatal"] = $erroFatal;
     }
     $erro = "Erro na Grava��o de Irmao 1";
     $_SESSION["f_retorno"]= $erro;
     pg_close($dbh);
     header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
     exit;
   }
 }

 if (strlen($nomeIrmao2) != 0)
 {
  $sql = "INSERT INTO irmaosUsuario
  (
    cartaoSus,
    inepUsuario,
    nomeIrmao,
    escolaIrmao,
    codigoEscolaIrmao,
    escolaridadeIrmao

  ) values (

    '$cartaoSus',
    '$inepUsuario',
    '$nomeIrmao2',
    '$escolaIrmao2',
    '$codigoEscolaIrmao2',
    '$escolaridadeIrmao2'
  )";

  $result = pg_query($dbh, $sql);
  if (!$result)
  {
    $result = pg_query($dbh, "ROLLBACK");
    if (!$result)
    {
       $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
       $SESSION["f_retornoFatal"] = $erroFatal;
    }
    $erro = "Erro na Grava��o de Irmao 2r";
    $_SESSION["f_retorno"]= $erro;
    pg_close($dbh);
    header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
    exit;
  }
 }

 if (strlen($nomeIrmao3) != 0)
 {
  $sql = "INSERT INTO irmaosUsuario
  (
    cartaoSus,
    inepUsuario,
    nomeIrmao,
    escolaIrmao,
    codigoEscolaIrmao,
    escolaridadeIrmao

  ) values (

    '$cartaoSus',
    '$inepUsuario',
    '$nomeIrmao3',
    '$escolaIrmao3',
    '$codigoEscolaIrmao3',
    '$escolaridadeIrmao3'
  )";

  $result = pg_query($dbh, $sql);
  if (!$result)
  {
    $result = pg_query($dbh, "ROLLBACK");
    if (!$result)
    {
       $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
       $SESSION["f_retornoFatal"] = $erroFatal;
    }
    $erro = "Erro na Grava��o de Irmao 3";
    $_SESSION["f_retorno"]= $erro;
    pg_close($dbh);
    header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
    exit;
  }
 }

 if (strlen($nomeIrmao4) != 0)
 {
  $sql = "INSERT INTO irmaosUsuario
  (
    cartaoSus,
    inepUsuario,
    nomeIrmao,
    escolaIrmao,
    codigoEscolaIrmao,
    escolaridadeIrmao

  ) values (

    '$cartaoSus',
    '$inepUsuario',
    '$nomeIrmao4',
    '$escolaIrmao4',
    '$codigoEscolaIrmao4',
    '$escolaridadeIrmao4'
  )";

  $result = pg_query($dbh, $sql);
  if (!$result)
  {
    $result = pg_query($dbh, "ROLLBACK");
    if (!$result)
    {
       $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
       $SESSION["f_retornoFatal"] = $erroFatal;
    }
    $erro = "Erro na Grava��o de Irmao 4";
    $_SESSION["f_retorno"]= $erro;
    pg_close($dbh);
    header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
    exit;
  }
 }

 if (strlen($nomeIrmao5) != 0)
 {
  $sql = "INSERT INTO irmaosUsuario
  (
    cartaoSus,
    inepUsuario,
    nomeIrmao,
    escolaIrmao,
    codigoEscolaIrmao,
    escolaridadeIrmao

  ) values (

    '$cartaoSus',
    '$inepUsuario',
    '$nomeIrmao5',
    '$escolaIrmao5',
    '$codigoEscolaIrmao5',
    '$escolaridadeIrmao5'
  )";

  $result = pg_query($dbh, $sql);
  if (!$result)
  {
    $result = pg_query($dbh, "ROLLBACK");
    if (!$result)
    {
       $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
       $SESSION["f_retornoFatal"] = $erroFatal;
    }
    $erro = "Erro na Grava��o de Irmao 5";
    $_SESSION["f_retorno"]= $erro;
    pg_close($dbh);
    header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
    exit;
  }
 }
}

// Carga de Especiais

if ($especialUsuario == '1')
{
 $numeroTiposNecessidadeEspecial = sizeof($tipoNecessidadeEspecial);
 $indiceGravacoes=0;
 while ($indiceGravacoes != $numeroTiposNecessidadeEspecial)
 {

   $sql = "INSERT INTO especial
   (
     cartaoSus,
     inepUsuario,
     tipoNecessidadeEspecial,
     comprovadoEspecial,
     digitalizadoEspecial

   ) values (

     '$cartaoSus',
     '$inepUsuario',
     '$tipoNecessidadeEspecial[$indiceGravacoes]',
     '$comprovadoEspecial',
     '$digitalizadoEspecial'
   )";

   $result = pg_query($dbh, $sql);
   if (!$result)
   {
     $result = pg_query($dbh, "ROLLBACK");
     if (!$result)
     {
        $erroFatal = "Erro em Transa��o Interna do Sistema - Informar Administrador";
        $SESSION["f_retornoFatal"] = $erroFatal;
     }
     $erro = "Erro na Grava��o de Portador de Necessidades Especiais";
     $_SESSION["f_retorno"]= $erro;
     pg_close($dbh);
     header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
     exit;
   }
   $indiceGravacoes+=1;
 }
}

$result = pg_query($dbh, "COMMIT");
if (!$result)
{
   $erro= "Houve algum Problema na Grava��o Final dos Dados - Tente Novamente";
   $result = pg_query($dbh, "ROLLBACK");
   if (!$result) {
      $erro = "Erro em Transa��o Interna do Sistema - Informar Administrador";
   }
   $_SESSION["f_retorno"]= $erro;
   pg_close($dbh);
   header('location:recadastra.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);
   exit;
}

include "includes/end.php";
$retorno="Gravou com Sucesso!";
$_SESSION["f_retorno"]= $retorno;
header('location:main.php?reacao=retorno&acao=atualizar&inepUsuario='.$inepUsuario);


?>
