<?
session_start();
$time=explode(' ', microtime()); 
$the_time_taken=$time[1]+$time[0]; 
$tipo_local = 1;
include("../../secure/secure.php");
include ('../../conf/configuracao.php');
mysql_connect( $bd_host, $bd_user, $bd_senha )
	or die ( 'Não foi possível conectar ao Servidor.' );
mysql_select_db( $bd_database )
	or die ( 'Não foi possível conectar a Base de Dados.' );
$sql_vestibular = "select * from vestibulares where codigo = $qual_vestibular";
$result = mysql_query($sql_vestibular)
		or die ( 'Não foi possível executar a query vestibular.' );
$info = mysql_fetch_array($result);
$cursos_do_vestibular = $info["cursos"];
$gera_sql = split(",",$cursos_do_vestibular);
$i = 0;
$retorna = 1;
$primeiro = 0;
$sql_cursos = "SELECT * FROM cursos where ";
while ($retorna == 1) {
	if ($gera_sql[$i] == '') {
		$retorna = 0;
	}
	else {
		if ($primeiro == 0) {
			$primeiro = 1;
		}
		else {
			$sql_cursos .= ' or ';
		}
		$sql_cursos .= 'codigo = ' . $gera_sql[$i] . ' ';
	}
	$i++;
}
$sql_cursos .= 'ORDER by codigo_curso ASC';
?>
<br>
<br>
<strong><div align="center"><font face="Verdana" size="2" color="#800000">Gerar Classificação do Processo Seletivo</font></div></strong>
<?
if (!isset($curso)) {
	$sql = $sql_cursos;
	$result = mysql_query($sql)
		or die ( 'Não foi possível executar a query 161 a.' );
	$num = mysql_num_rows($result);
	if ($num == 0 ) {
		echo '<br><br><center>Não existe nenhum curso cadastrado no Sistema!!!</center>';
	}
	else {
		echo '<br><br><center><strong><font face="Verdana" size="2" color="#000000">Escolha o curso</font></strong><br><br>';
		while($info = mysql_fetch_array($result)) {
			echo '<a href="gera_classificacao_nova.php?curso='. $info["codigo"].'"><font color="000000" face="verdana" size="2">' . $info["nome_curso"] . '</font></a><br>';
		}
		echo '</center>';
	}
}
else {
// Gerando Classificacao
	$sql_nota_final = "Select * from resultado_final where curso = '$curso' and codigo_vest = '$qual_vestibular'";
	$result_nota_final = mysql_query($sql_nota_final)
		or die ("Erro interno 1");
	$num_nota_final = mysql_num_rows($result_nota_final);
	if ($num_nota_final == 0) {
		echo "Erro Interno 2 ( Nao processado )";
	}
	else {
		$sql_limpa = "Delete from auxiliar_classificacao";
		mysql_query($sql_limpa)
			or die ("ERRO 10");
		while($info_nota_final = mysql_fetch_array($result_nota_final)) {
			$candidato = $info_nota_final["matricula"];
			$nota_final = $info_nota_final["total_final"];
			$situacao_final =  $info_nota_final["situacao"];
			// Pegando Nota de Redacao
			$sql_nota_redacao = "Select * from notas_redacao where matricula = '$candidato'";
			$result_redacao = mysql_query($sql_nota_redacao)
				or die ("Erro Interno 3");
			while($info_redacao = mysql_fetch_array($result_redacao)) {
				$nota_redacao = $info_redacao["redacao"];
			}
			// Pegando Nota de Portugues
			$sql_nota_pt = "Select * from resultado_parcial where matricula = '$candidato' and cod_materia = '1'";
			$result_pt = mysql_query($sql_nota_pt)
				or die ("Erro Interno 4");
			while($info_pt = mysql_fetch_array($result_pt)) {
				$nota_pt = $info_pt["pontuacao"];
			}
			$mat_1 = $candidato;
			// Pegando Nota expecifica
			if ($curso == 1) { // Geografia -> Historia e Geografia
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '4'";
			}
			if ($curso == 2) { // Historia -> Historia e Geografia
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '4'";
			}
			if ($curso == 3) { // Letras: Pt Ingles -> Lingua
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '2'";
			}
			if ($curso == 4) { // Letras: Pt Fr -> Lingua
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '2'";
			}
			if ($curso == 5) { // Pedagogia -> Lingua
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '2'";
			}
			if ($curso == 6) { // Matematica -> Mat Fis
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '5'";
			}
			if ($curso == 7) { //Fisica -> MAt Fisica
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '5'";
			}
			if ($curso == 8) { // Ed Fisica -> Quim Bio
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '3'";
			}
			if ($curso == 9) { // Admin -> Mat Fisica
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '5'";
			}
			if ($curso == 10) { // Fisioterapia -> Quim Bio
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '3'";
			}
			if ($curso == 18) { // Química -> Quim Bio
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '3'";
			}
			if ($curso == 19) { // Medicina -> Quim Bio
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '3'";
			}
			if ($curso == 20) { // Enfermagem -> Quim Bio
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '3'";
			}
			if ($curso == 21) { // Normal Superior -> Quim Bio
				$sql_esp = "SELECT * FROM resultado_parcial where matricula= '$mat_1' and cod_materia = '3'";
			}
			$result_esp = mysql_query($sql_esp)
				or die ( 'Erro interno 5' );
			$info_esp = mysql_fetch_array($result_esp);
			$nota_esp = $info_esp["pontuacao"];
			// Pegando Idade
			$sql_nas = "SELECT nascimento FROM candidato where codigo = $mat_1";
			$result_nas = mysql_query($sql_nas)
				or die ( 'Erro interno 6' );
			$info_nas = mysql_fetch_array($result_nas);
			$nota_1_nas_aux = $info_nas["nascimento"];
			$nas_aux = split('/',$nota_1_nas_aux);
			$nota_1_nas = $nas_aux[1] . '/' . $nas_aux[0] . '/' .$nas_aux[2];
			$idade = strtotime($nota_2_nas);
			// Nome dos campos
			/*
			echo "MAT = $candidato<br>";
			echo "NF = $nota_final<br>";
			echo "SIT = $situacao_final<br>";
			echo "RED = $nota_redacao<br>";
			echo "NP = $nota_pt<br>";
			echo "NE = $nota_esp<br>";
			echo "ID = $idade<br><br>";
			*/
			if ($nota_redacao == '') {
				$nota_redacao = 0;
			}
			$sql_atualiza = "insert into auxiliar_classificacao (nota_total_candidato, nota_pt, nota_redacao, nota_especifico, idade, situacao, matricula) values ($nota_final, $nota_pt, $nota_redacao, $nota_esp, '$idade', '$situacao_final', '$candidato')";
			$query_atualizacao = mysql_query($sql_atualiza)	or die ( mysql_error());
		}
		///////
		// Iniciando Classificacao
		///////
		//Obetendo numero de vagas
		$sql_vagas = "select * from cursos where codigo = $curso";
		$result_vagas = mysql_query($sql_vagas)
			or die ("Error 13");
		$info_vagas = mysql_fetch_array($result_vagas);
		$vagas = $info_vagas["vagas"];
		$sql_classifica = "Select * from auxiliar_classificacao where situacao = '1' or situacao = '3' order by nota_total_candidato DESC ,nota_pt DESC, nota_redacao DESC, nota_especifico DESC";
		$resultado = mysql_query($sql_classifica) or die (mysql_error());
		$i = 1;
		// Situacao == 1;
		while($info_resultado = mysql_fetch_array($resultado)) {
			if ($i <= $vagas) {
				//echo $i . ' - ' . $info_resultado["matricula"] . ' - ' . $info_resultado["nota_total_candidato"]. ' - ' . $info_resultado["nota_pt"]. ' - ' . $info_resultado["nota_redacao"]. ' - ' . $info_resultado["nota_especifico"]. ' - ' . $info_resultado["idade"]. $info_resultado["situacao"]. '<br>';
				$mat_cand = $info_resultado["matricula"];
				$sql_atualiza_classificacao = "update resultado_final set colocacao= '$i' where matricula = $mat_cand";
				$resultado_atualizacao = mysql_query($sql_atualiza_classificacao) or die (mysql_error());
				$i++;
			}
		}
		//echo '<hr>';
		// Excedentes
		// Situacao = 3;
		$i--;
		$sql_numero = "select * from auxiliar_classificacao";
		$result_numero = mysql_query ($sql_numero)
			or die ("ERROR 15");
		$numero_total = mysql_num_rows($result_numero);
		$sql_classifica = "Select * from auxiliar_classificacao where situacao = '3' or situacao = '1' order by nota_total_candidato DESC ,nota_pt DESC, nota_redacao DESC, nota_especifico DESC";
		$resultado = mysql_query($sql_classifica) or die (mysql_error());
		$posicao = $i + 1;
		$i = 1;
		while($info_resultado = mysql_fetch_array($resultado)) {
			if ($i > $vagas) {
				//echo $posicao . ' - ' . $info_resultado["matricula"] . ' - ' . $info_resultado["nota_total_candidato"]. ' - ' . $info_resultado["nota_pt"]. ' - ' . $info_resultado["nota_redacao"]. ' - ' . $info_resultado["nota_especifico"]. ' - ' . $info_resultado["idade"]. $info_resultado["situacao"]. '<br>';
				$mat_cand = $info_resultado["matricula"];
				$sql_atualiza_classificacao = "update resultado_final set colocacao= '$posicao',situacao = '3' where matricula = $mat_cand";
				$resultado_atualizacao = mysql_query($sql_atualiza_classificacao) or die (mysql_error());
				$posicao++;
			}
			$i++;
		}
		//echo '<hr>';
		// desclassificados
		$sql_desclassificados = "select * from resultado_final where (situacao = '0' or situacao = '2') and (codigo_vest = '$qual_vestibular' and curso = '$curso')order by total_final DESC";
		$result_desclassificados = mysql_query($sql_desclassificados)
			or die ("ERROR 16");
		while($info_desc = mysql_fetch_array($result_desclassificados)) {
			//echo $posicao . ' - ' . $info_desc["matricula"] . ' - ' . $info_desc["total_final"] . ' - ' . $info_desc["situacao"]. '<br>';
			$mat_cand = $info_desc["matricula"];
			$sql_atualiza_classificacao = "update resultado_final set colocacao= '$posicao' where matricula = $mat_cand";
			$resultado_atualizacao = mysql_query($sql_atualiza_classificacao) or die (mysql_error());
			$posicao++;
		}
	}

}

	// place at the bottom 
	$time=explode(' ',microtime()); 
	$time=$time[1]+$time[0]; 
	$a=($time-$the_time_taken); 
	//echo "<br><br><div align=\"center\">pagina gerada em <b>$a</b> segundos<br></div>"; 
	//exit;
	if (isset($curso)) {
		echo '<strong><div align="center"><font face="Verdana" size="2" color="#FF0000"><br><br>Classificação concluida tempo gasto: <font color="000000">' . $a  . '</font> segundos</font></div></strong>';
	}
?>
