<?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>>
 */

<?

// inicia uma transa��o
bdInicia($dbh);
// controle de erro (j� que as fun��es nativas do php n�o lan�am exce��o)
$erro = false;
$msgErro = "";

$codigoProf_sql = "SELECT COALESCE(MAX(\"codprofessor\"),0)+1 FROM mat_professor";
$resultCod = executaQuery($dbh, $codigoProf_sql);

if(!$resultCod)
{
	$erro = true;
	$msgErro = "Erro ao obter c�digo do professor";
}
else
{
	$row = pg_fetch_row($resultCod);
	$codigoProf = $row[0];
}

if($enderecocorrespomesmo == 'S')
	$enderecocorrespomesmo = 'true';
if($enderecocorrespomesmo == 'N')
	$enderecocorrespomesmo = 'false';
	
if($desviado == 'S')
	$desviado = 'true';
if($desviado == 'N')
	$desviado = 'false';

if($cpfapresentadaProf == 'S')
	$cpfapresentadaProf = 'true';
if($cpfapresentadaProf == 'N')
	$cpfapresentadaProf = 'false';
	
if($cpfdigitalizadaProf == 'S')
	$cpfdigitalizadaProf = 'true';
if($cpfdigitalizadaProf == 'N')
	$cpfdigitalizadaProf = 'false';
	
if(!$erro)
{
	//Obtendo endere�os de fotos e documentos digitalizados do professor
	$fotoDeProfessor = uploadDados(5, $codigoProf,'fotoDeProfessor','form_fotoProfessor');
	$fotoDeDiploma = uploadDados(5, $codigoProf,'fotoDeDiploma','form_fotoDiplomaProf');
	$DocNisProfessorFrente = uploadDados(5, $codigoProf,'DocNisProfessorFrente','form_nisProf1');
	$DocNisProfessorVerso = uploadDados(5, $codigoProf,'DocNisProfessorVerso','form_nisProf2');
	$CpfProfessorFrente = uploadDados(5, $codigoProf,'CpfProfessorFrente','form_cpfProf1');
	$CpfProfessorVerso = uploadDados(5, $codigoProf,'CpfProfessorVerso','form_cpfProf2');
	$DocRgProfessorFrente = uploadDados(5, $codigoProf,'DocRgProfessorFrente','form_rgProf1');
	$DocRgProfessorVerso = uploadDados(5, $codigoProf,'DocRgProfessorVerso','form_rgProf2');
	$CarteiraTrabProfessorFrente = uploadDados(5, $codigoProf,'CarteiraTrabProfessorFrente','form_carteiraTrabProf1');
	$CarteiraTrabProfessorVerso = uploadDados(5, $codigoProf,'CarteiraTrabProfessorVerso','form_carteiraTrabProf2');
	$TituloEleitorProfessorFrente = uploadDados(5, $codigoProf,'TituloEleitorProfessorFrente','form_tituloProf1');
	$TituloEleitorProfessorVerso = uploadDados(5, $codigoProf,'TituloEleitorProfessorVerso','form_tituloProf2');
	$DocPisProfessorFrente = uploadDados(5, $codigoProf,'DocPisProfessorFrente','form_pispasepProf1');
	$DocPisProfessorVerso = uploadDados(5, $codigoProf,'DocPisProfessorVerso','form_pispasepProf2');
}	
	
if(!$erro)
{
	$sql_prof = "INSERT INTO mat_professor
	(
		\"codprofessor\",
		\"nomeprofessor\",
	   	\"cartaosus\",
	   	\"fotoprofessor\",
	   	\"sexoprofessor\",
	   	\"datanascimentoprofessor\",
	   	\"nacionalidadeprofessor\",
	   	\"codigopaisprofessor\",
	   	\"ufnascimentoprofessor\",
	   	\"codigomunicipionascimentoprofessor\",
	   	\"matriculaprofessor\",
	   	\"dataadmissaoprofessor\",
	   	\"numeroconcursoprofessor\",
	   	\"anoconcursoprofessor\",
	   	\"regimecontratacaoprofessor\",
	   	\"disciplinaingressoprofessor\",
	   	\"formacaoacademicaprofessor\",
	   	\"blreadaptadoprofessor\",
	   	\"datareadaptacaoprofessor\",
	   	\"datareadaptacaofinalprofessor\",
	   	\"telefonefixoprofessor\",
	   	\"bltelefonefixoprofessor\",
	   	\"celularprofessor\",
	   	\"blcelularprofessor\",
	   	\"telefonerecadoprofessor\",
	   	\"bltelefonerecadoprofessor\",
	   	\"emailprofessor\",
	   	\"blemailprofessor\",
	   	\"blmesmoenderecocorrespondencia\",
	   	\"nomemaeprofessor\",
	   	\"cargoprofessor\",
	   	\"corprofessor\",
	   	\"numeroinepprofessor\",
	   	\"desviado\",
	   	\"nummemoprofessor\"
	   	
	) VALUES (
	
	   $codigoProf,
	   '$nomeProfessor',
	   '$cartaoSus',
	   '$fotoDeProfessor',
	   '$sexoProfessor',
	   '$dataNascimentoProfessor',
	   '$nacionalidadeProfessor',
	   '$codigoPaisProfessor',
	   '$ufNascimentoProfessor',
	   '$codigoMunicipioNascimentoProfessor',
	   '$matriculaProf',
	   '$dataAdmissaoProfessor',
	   '$numeroConcursoProf',
	   $anoConcursoProf,
	   $regimeContratacao,
	   $disciplinaIngresso,
	   $formacaoAcademica,
	   '$professorReadaptado',
	   $dataReadaptacao,
	   $dataReadaptacaoFinal,
	   '$telefoneFixoProf',
	   '$possuiTelefoneFixo',
	   '$telefoneCelularProf',
	   '$possuiTelefoneCelular',
	   '$telefoneRecadoProf',
	   '$possuiTelefoneRecado',
	   '$emailProf',
	   '$possuiEmail',
	   '$enderecocorrespomesmo',
	   '$nomeMaeProfessor',
	   '$cargo',
	   '$corRacaProf',
	   '$inepProf',
	   '$desviado',
	   $numMemoProf
	   
	)";
	
	//echo nl2br($sql_prof); exit;
	
	$result = executaQuery($dbh, $sql_prof);
	if(!$result)
	{
		$erro = true;
		$msgErro = "Erro ao inserir dados do professor.";
	}
}
if(!$erro)
{
	$sql_profEscola = "--DELETE FROM \"mat_professorEscola\" WHERE codprofessor = '$codigoProf';
		INSERT INTO \"mat_professorEscola\"(codprofessor, codescola) VALUES ('$codigoProf', '$escolaProf');";
	
	$result = executaQuery($dbh, $sql_profEscola);
	
	if(!$result)
	{
		$erro = true;
		$msgErro = "Erro ao relacionar professor com escola";
	}
}

if(!$erro)
{
	$sql_disciplina = "";
	for($i = 0; $i <= 5; $i++)
	{
		if($disciplinaApta[$i] != '')
		{
			$sql_disciplina .= "INSERT INTO mat_professordisciplina(codprofessor, iddisciplina) VALUES ('$codigoProf', '$disciplinaApta[$i]');";
		}
	}
	if($sql_disciplina != "")
	{
		$result = executaQuery($dbh, $sql_disciplina);
		if(!$result)
		{
			$erro = true;
			$msgErro = "Erro ao relacionar professor com disciplinas aptas";
		}
	}
}
if(!$erro)
{
	$result = insereEndere�oBd (5,
								$codigoProf,
								$logradouroGeoIguacuProf,
							   	$logradouroTipoProf,
							   	$logradouroNomeProf,
							   	$logradouroNumeroProf,
							   	$logradouroComplementoProf,
							   	$logradouroUfProf,
								$logradouroCidadeProf,
							   	$logradouroBairroProf,
							   	$logradouroCepProf,
							   	$logradouroNaoCadastrado,
							   	$logradourojustificativausuario,
							   	$logradouroPontoReferenciaProf,
							   	$logradourotipojustificativa,
							   	$dbh,
							   	$tipoendereco);
	if(!$result)
	{
		$erro = true;
		$msgErro = "Erro ao inserir endere�o principal do professor";
	}
}
							   	
if(!$erro && $enderecocorrespomesmo == '1')
{						   	
	$result = insereEndere�oBd(6,
							   	$codigoProf,
				                "",
				                $logradourocorresptipousuario,
				                $logradourocorrespnomeusuario,
				                $logradourocorrespnumerousuario,
				                $logradourocorrespcomplementousuario,
				                $logradourocorrespufusuario,
				                $logradourocorrespcidadeusuario,
				                $logradourocorrespbairrousuario,
				                $logradourocorrespcepusuario,
				                "false",
				                "",
				                "",
				                "false",                 
				                $dbh);
	if(!$result)
	{
		$erro = true;
		$msgErro = "Erro ao inserir endere�o de correspondencia do professor";
	}
}

if(!$erro)
{
	$result = insereDocumentos ($codigoProf,
								5,
			                  	$temNISProf,
			                  	$nisusuarioProf,
			                  	$nisusuarioapresentadaProf,
			                  	$nisusuariodigitalizadaProf,
			                  	$DocNisProfessorFrente,
			                  	$DocNisProfessorVerso,
			                  	$temCPFProf,
			                  	$cpfusuarioProf,
			                  	$cpfapresentadaProf,
			                  	$cpfdigitalizadaProf,
			                  	$CpfProfessorFrente,
			                  	$CpfProfessorVerso,
			                  	$temRGProf,
			                  	$rgusuarioProf,
			                  	$rgusuarioestadoProf,
			                  	$rgusuariodataemissaoProf,
			                  	$rgusuarioorgaoemissorProf,
			                  	$rgusuarioapresentadaProf,
			                  	$rgusuariodigitalizadaProf,
			                  	$DocRgProfessorFrente,
			                  	$DocRgProfessorVerso,
			                  	$temCarteiraTrabProf,
			                  	$carteiratrabusuarioProf,
			                  	$carteiratrabusuarioserieProf,
			                  	$carteiratrabusuarioestadoProf,
			                  	$carteiratrabusuariodataemissaoProf,
			                  	$carteiratrabusuarioapresentadaProf,
			                  	$carteiratrabusuariodigitalizadaProf,
			                  	$CarteiraTrabProfessorFrente,
			                  	$CarteiraTrabProfessorVerso,
			                  	$temTituloEleitorProf,
			                  	$titeleitorusuarioProf,
			                  	$titeleitorusuariozonaProf,
			                  	$titeleitorusuariosecaoProf,
			                  	$titeleitorusuarioapresentadaProf,
			                  	$titeleitorusuariodigitalizadaProf,
			                  	$TituloEleitorProfessorFrente,
			                  	$TituloEleitorProfessorVerso,
			                  	$temPISProf,
			                  	$pispasepusuarioProf,
			                  	$pispasepusuarioapresentadaProf,
			                  	$pispasepusuariodigitalizadaProf,
			                  	$DocPisProfessorFrente,
			                  	$DocPisProfessorVerso,
			                  	'false',
								null,
								null,
								null,
								null,
								null,
								null,
								null,
								null,
								null,
								null,
			                  	null,
								'false',
								null,
								null,
								null,
								null,
			                  	null,
			                  	$dbh,
			                  	$fotoDeDiploma);
	if(!$result)
	{
		$erro = true;
		$msgErro = "Erro ao inserir documentos do professor";
	}
}						   	

if( $erro )
{
	// Erro! Rollback!
	$_SESSION["f_retorno"]= $msgErro . "<br/>Mensagem:" . pg_last_error($dbh);
   	bdCancela($dbh);
   
   	pg_close($dbh);
   	header('location:../novastelas/cadastroprofessor.php?reacao=retorno');
   	exit;
}

// sem erros. Confirma os dados e volta para a rotina de inclus�o
bdConfirma($dbh);
pg_close($dbh);
//header('location:../novastelas/listagemprofessores.php');