<?php require_once('../../Connections/cn.php'); ?>
<?php 
//Aqui quito caracteres que estan demas en el filtro que viene de otra pagina 
set_time_limit(0);
$sqlr = str_replace("`", "", $sqlr); 
$sqlr = str_replace("\'", '"', $sqlr); 

$periodo=$_GET['periodo'];
$semestre=$_GET['semestre'];
$carrera=$_GET['carrera'];
$pensum=$_GET['pensum'];
$mencion=$_GET['mencion'];
$materia=$_GET['materia'];

if($turno==1)$nombre_turno="MATUTINO";
if($turno==2)$nombre_turno="VESPERTINO";
if($turno==4)$nombre_turno="NOCTURNO";

if($mencion=="CIU") $nombre_mencion="CURSO DE INICIACIÓN UNIVERSITARIA";
if($mencion=="CG") $nombre_mencion="COMPONENTE GENERAL";
if($mencion=="ACE") $nombre_mencion="ADUANAS Y COMERCIO EXTERIOR";
if($mencion=="FIN") $nombre_mencion="FINANZAS PÚBLICAS";
if($mencion=="RT") $nombre_mencion="RENTAS";

if(($mencion=='CG') || ($mencion=='CIU')) $mencion='COMUN';

$corte=$_GET['corte'];
// Selecciono la Base de Datos. 
mysql_select_db($database_cn); 
mysql_query ("SET NAMES 'utf8'");

// Datos de la Materia.
$sql1 = "select nombre_materia from materias where id_materia='$materia' and id_carrera='$carrera'";
$rs1=mysql_query($sql1,$cn);
$row1=mysql_fetch_array($rs1);
$nom_materia=$row1['nombre_materia'];

// Datos del Per�odo.
$sql2 = "select * from periodos where id_periodo='$periodo'";
$rs2=mysql_query($sql2,$cn);
$row2=mysql_fetch_array($rs2);
$descripcion='('.$row2['mes_inicio'].'-'.$row2['mes_fin'].')';
$codigo_periodo=$row2['codigo'];
$tipo_periodo=$row2['tipo'];
$status_periodo=$row2['status'];

// Limpia el record tenporal del estudiante
if($status_periodo=="CERRADO"){
   $sql = "delete from historico_notas_lapso";
   mysql_query($sql, $cn) or die(mysql_error());
	 
   // Crea el historico temporal del lapso. 
   $sql = "insert into historico_notas_lapso select * from historico_notas where  id_periodo='$periodo'";
   mysql_query($sql, $cn) or die(mysql_error());
}

//Datos de la Sede
$sql2 = "select * from sedes where codigo='$sede'";
$rs2=mysql_query($sql2,$cn);
$row2=mysql_fetch_array($rs2);
$nombre_sede=$row2['nombre_sede'];

// Datos de la Carrera.
$sql3 = "select nombre_carrera from carreras where id_carrera='$carrera'";
$rs3=mysql_query($sql3,$cn);
$row3=mysql_fetch_array($rs3);
$nom_carrera=$row3['nombre_carrera'];
// Incluye la calses que se requieren para el reporte. 
error_reporting(E_ALL); 
include('class.ezpdf.php'); 
require('numerosALetras.class.php');

// Se establece el tipo de p�gina y el formato de impresi�n.
$pdf = & new Cezpdf('letter','landscape'); 
$pdf->selectFont('./fonts/Helvetica'); 
// Se inicializa el contador de paginas en 1 y se especifica en que lugar se va a imprimir 
$pdf->ezStartPageNumbers(580,750,9,'','{PAGENUM}/{TOTALPAGENUM}',1); 

// coloca una linea arriba y abajo de todas las paginas 
$fechs = date("d/m/y"); 
$all = $pdf->openObject(); 
$pdf->saveState(); 
$pdf->setStrokeColor(0,0,0,1); 
// Se define el query de los datos que contendr� el reporte.

$query = "SELECT DISTINCT id_materia, semestre,turno,sede,mencion,nmateria,id_seccion FROM oferta_academica WHERE id_periodo = '$periodo'
ORDER By semestre,id_seccion,nmateria";

// echo $query;
// Ejecuta el Query.
$result = mysql_query ($query,$cn) or die (mysql_error()); 
$rstHistorico = mysql_fetch_assoc($result);
// Numero de Filas.
$totalRows = mysql_num_rows($result);


// Reinicia la ejecuci�n del query.
$result = mysql_query ($query,$cn) or die (mysql_error()); 
// Inicio del Encabezado.
//$imagen=ImageCreatefromjpeg('../../imagenes/iuta.jpg');
//$pdf->addImage($imagen,35,$pdf->y-55,100,0);
// Inicio del Encabezado.
$imagen=ImageCreatefromjpeg('../../imagenes/logo_mpppf.jpg');
$pdf->addImage($imagen,60,$pdf->y-25,500,0);
$pdf->selectFont('/fonts/Helvetica.afm');
$diff=array(225=>'aacute',233=>'eacute',
            237=>'iacute',243=>'oacute',
            250=>'uacute',252=>'udieresis',
            241=>'ntilde',209=>'Ntilde');
$pdf->selectFont('fonts/Helvetica.afm',array('encoding'=>'WinAnsiEncoding','differences'=>$diff));
$pdf->ezsetdy(-25);
$pdf->ezText(utf8_decode("<b>Dirección de Secretaría General - Unidad de Control de Estudios de Pregrado</b>"),9,array('justification'=>'center'));
$pdf->ezsetdy(-20);
$pdf->ezText(utf8_decode("<b>"."RENDIMIENTO ACADÉMICO POR UNIDAD CURRICULAR"."</b>"),13,array('justification'=>'center'));
$pdf->ezsetdy(-20);
$pdf->ezText('<b>'.utf8_decode("    LAPSO ACADÉMICO: ").'</b>'.utf8_decode($codigo_periodo).' ('.$tipo_periodo.')',10,array('justification'=>'left'));
$pdf->ezsetdy(-2);

$pdf->ezText('<b>'."    CARRERA: ".'</b>'." LICENCIATURA EN CIENCIAS FISCALES",10,array('justification'=>'left'));
$pdf->ezsetdy(-2);
$pdf->ezText(utf8_decode("<b>"."    FECHA DE IMPRESIÓN: "."</b>").date("d/m/Y"),10,array('justification'=>'left'));



// Fin del Encabezado.
// Inicio del Pie de P�gina.
//pie_pagina($pdf, $cedula_docente, $nom_docente);
// Fin del Pie de P�gina.

// Se restaura el objeto y se cierra, para que de el salto de p�gina.
$pdf->restoreState(); 
$pdf->closeObject(); 
// Establece los margenes para imprimir el cuerpo del reporte.
$pdf->ezSetCmMargins(6,1.5,2,1.5);
// Superior,Inferior,Derecho,Izquierdo
$pdf->addObject($all,'all'); 

// Inicializa array 
$data = array(); 
//Aqui se coloca el header de la Tabla 
$cols = array('nro'=>"<b>".'NRO.'."</b>", 
			  'sede'=>"<b>".utf8_decode('SEDE')."</b>", 
			  'turno'=>"<b>".utf8_decode('TURNO')."</b>",
			  'sem'=>"<b>".utf8_decode('SEM.')."</b>",
			  'sec'=>"<b>".utf8_decode('SEC.')."</b>",
			  'cod'=>"<b>".utf8_decode('CÓDIGO')."</b>",
			  'uc'=>"<b>".utf8_decode('UNIDAD CURRICULAR')."</b>", 
              'inscritos'=>"<b>".'INSCRITOS'."</b>",
			  'aprobados'=>"<b>".'APROB.'."</b>",
			  'paprobados'=>"<b>".'%   '."</b>",
			  'aplazados'=>"<b>".'APLAZ.'."</b>",
			  'paplazados'=>"<b>".'%   '."</b>"); 
$smc = 0; 
// Convierte la Nota a Letras.

while ($row = mysql_fetch_row($result)) { 
    // $seccion      = $row[0];    // cedula 
    $materia  = $row[0]; // apellidos y nombres 
    $semestre  = $row[1];
	$turno  = $row[2];
	$sede=$row[3];
	$mencion=$row[4];
	$seccion=$row[6];
	$nombre_materia=$row[5];
	if($turno==1)$nombre_turno="MATUTINO";
    if($turno==2)$nombre_turno="VESPERTINO";
    if($turno==4)$nombre_turno="NOCTURNO";
	
	$sql2 = "select * from sedes where codigo='$sede'";
    $rs2=mysql_query($sql2,$cn);
    $row2=mysql_fetch_array($rs2);
    $nombre_sede=$row2['nombre_sede'];

    if($status_periodo=="ABIERTO"){
	// NUMERO DE INSCRITOS
    $sql_inscritos = "SELECT id_alumno FROM inscripciones 
	WHERE 
	inscripciones.id_periodo = '$periodo'
	AND inscripciones.id_materia='$materia'
	AND inscripciones.semestre='$semestre'
	AND inscripciones.id_seccion='$seccion'";
	$rst_inscritos = mysql_query ($sql_inscritos,$cn) or die (mysql_error()); 
	$inscritos = mysql_num_rows($rst_inscritos);
	
		 $sql_aprobados = "SELECT distinct id_alumno FROM inscripciones 
		 WHERE 
		 inscripciones.id_periodo = '$periodo'
	AND inscripciones.id_materia='$materia'
	AND inscripciones.semestre='$semestre'
	AND inscripciones.id_seccion='$seccion'
	AND nota>=10";
		$rst_aprobados = mysql_query ($sql_aprobados,$cn) or die (mysql_error()); 
		$aprobados = mysql_num_rows($rst_aprobados);
		
		// APLAZADOS
		 $sql_aplazados = "SELECT distinct id_alumno FROM inscripciones 
		 WHERE 
		 inscripciones.id_periodo = '$periodo'
	AND inscripciones.id_materia='$materia'
	AND inscripciones.semestre='$semestre'
	AND inscripciones.id_seccion='$seccion'
	AND nota<10";
		$rst_aplazados = mysql_query ($sql_aplazados,$cn) or die (mysql_error()); 
		$aplazados = mysql_num_rows($rst_aplazados);
		}
		else{
		// NUMERO DE INSCRITOS
    $sql_inscritos = "SELECT id_alumno FROM historico_notas 
	WHERE 
	historico_notas.id_periodo = '$periodo'
	AND historico_notas.id_materia='$materia'
	AND historico_notas.semestre='$semestre'
	AND historico_notas.id_seccion='$seccion'";

	$rst_inscritos = mysql_query ($sql_inscritos,$cn) or die (mysql_error()); 
	$inscritos = mysql_num_rows($rst_inscritos);
	
	
		 $sql_aprobados = "SELECT distinct id_alumno FROM historico_notas_lapso 
		 WHERE 
		 historico_notas_lapso.id_periodo = '$periodo'
	AND historico_notas_lapso.id_materia='$materia'
	AND historico_notas_lapso.semestre='$semestre'
	AND historico_notas_lapso.id_seccion='$seccion'
	AND nota>=10";
		$rst_aprobados = mysql_query ($sql_aprobados,$cn) or die (mysql_error()); 
		$aprobados = mysql_num_rows($rst_aprobados);
		
		// APLAZADOS
		 $sql_aplazados = "SELECT distinct id_alumno FROM historico_notas_lapso 
		 WHERE 
		 historico_notas_lapso.id_periodo = '$periodo'
	AND historico_notas_lapso.id_materia='$materia'
	AND historico_notas_lapso.semestre='$semestre'
	AND historico_notas_lapso.id_seccion='$seccion'
	AND nota<10";
		$rst_aplazados = mysql_query ($sql_aplazados,$cn) or die (mysql_error()); 
		$aplazados = mysql_num_rows($rst_aplazados);
		
		}
		/* NP
		$sql_np = "SELECT distinct id_alumno FROM inscripciones WHERE inscripciones.id_periodo = '$periodo'
	AND inscripciones.id_materia='$materia'
	AND inscripciones.semestre='$semestre'
	AND inscripciones.turno='$turno'
	AND inscripciones.sede='$sede'
AND inscripciones.id_carrera = '$carrera'
AND inscripciones.pensum = '6'
AND inscripciones.semestre = '$semestre'
AND inscripciones.id_materia = '$materia'
AND inscripciones.mencion = '$mencion' AND nota=0";
		$rst_np = mysql_query ($sql_np,$cn) or die (mysql_error()); 
		$np = mysql_num_rows($rst_np); */
	
		
	
	
    $smc = $smc + 1; 
	$paprobados=0;
	$paplazados=0;
	if($inscritos>0){
       // Aqui se agregan las variables formateadas al array 
	   $paprobados=($aprobados*100)/$inscritos;
	   $paplazados=($aplazados*100)/$inscritos;
    } 
    $data[] = array('nro'=>$smc,
                    'sede'=>utf8_decode($nombre_sede),
					'turno'=>utf8_decode($nombre_turno),
					'sem'=>utf8_decode($semestre),
					'sec'=>utf8_decode($seccion), 
					'cod'=>utf8_decode($materia),
					'uc'=>utf8_decode($nombre_materia),
                    'inscritos'=>number_format($inscritos,0,',','.').'       ', 
                    'aprobados'=>$aprobados.'         ',
					'paprobados'=>number_format($paprobados,2,',','.').' ',
					'aplazados'=>$aplazados.'        ',
					'paplazados'=>number_format($paplazados,2,',','.')); 
} 
					
$pdf->ezTable($data,$cols,'',array('width'=>'700','fontSize'=>9, 
'cols'=>array('nro'=>array('justification'=>'center') 
			 ,'sede'=>array('justification'=>'center') 
			 ,'turno'=>array('justification'=>'center')
			 ,'sem'=>array('justification'=>'center')
			 ,'cod'=>array('justification'=>'left') 
              ,'uc'=>array('justification'=>'left')
             ,'inscritos'=>array('justification'=>'right') 
             ,'aprobados'=>array('justification'=>'right')
			 ,'paprobados'=>array('justification'=>'right')
			 ,'aplazados'=>array('justification'=>'right')
			 ,'paplazados'=>array('justification'=>'right')) 
));// salida 

if (isset($d) && $d){ 
	$pdfcode = $pdf->ezOutput(); 
	$pdfcode = str_replace('\n','\n<br>',htmlspecialchars($pdfcode)); 
	echo '<html><body>'; 
	echo trim($pdfcode); 
	echo '</body></html>'; 
} else { 
	$pdf->ezStream(); 
} 

function pie_pagina($pdf, $id_docente, $nom_docente)
{
    // Facilitador(a).
	


}

function nota_en_letras($nota)
{
   // Extraigo la parte entera y la parte decimal de la Nota.
   $entero=substr($nota,0,1);
   $decimal=substr($nota,2,2);
  
   // Convierto la Parte entera de la Nota en letras.
   switch ($entero)
   {
   	   case 0:
	    $entero_en_letras='CERO';
		break;	
	  case 1:
	    $entero_en_letras='UNO';
		break;	
	  case 2:
	  	$entero_en_letras='DOS';
		break;
	  case 3:
	  	$entero_en_letras='TRES';
		break;
	  case 4:
	  	$entero_en_letras='CUATRO';
		break;
	  case 5:
	  	$entero_en_letras='CINCO';
		break;
   }
   // Convierto la Parte Decimal de la Nota en letras. 
   switch ($decimal)
   {
    case 00:
	    $decimal_en_letras='';
		break;					 
	case 01:
	    $decimal_en_letras='CERO UNO';
		break;	
	case 02:
	    $decimal_en_letras='CERO DOS';
		break;	
	case 03:
	    $decimal_en_letras='CERO TRES';
		break;
	case 04:
	    $decimal_en_letras='CERO CUATRO';
		break;	
	case 05:
	    $decimal_en_letras='CERO CINCO';
		break;	
	case 06:
	    $decimal_en_letras='CERO SEIS';
		break;	
	case 07:
	    $decimal_en_letras='CERO SIETE';
		break;	
	case 08:
	    $decimal_en_letras='CERO OCHO';
		break;	
	case 09:
	    $decimal_en_letras='CERO NUEVE';
		break;	
	case 10:
	    $decimal_en_letras='DIEZ';
		break;	
	case 11:
	    $decimal_en_letras='ONCE';
		break;	
	case 12:
	    $decimal_en_letras='DOCE';
		break;	
	case 13:
	    $decimal_en_letras='TRECE';
		break;	
	case 14:
	    $decimal_en_letras='CATORCE';
		break;	
	case 15:
	    $decimal_en_letras='QUINCE';
		break;	
	case 16:
	    $decimal_en_letras='DIECISEIS';
		break;	
	case 17:
	    $decimal_en_letras='DIECISIETE';
		break;	
	case 18:
	    $decimal_en_letras='DIECIOCHO';
		break;	
	case 19:
	    $decimal_en_letras='DIECINUEVE';
		break;	
	case 20:
	    $decimal_en_letras='VEINTE';
		break;	
	case 21:
	    $decimal_en_letras='VEINTIUNO';
		break;	
	case 22:
	    $decimal_en_letras='VEINTIDOS';
		break;
	case 23:
	    $decimal_en_letras='VEINTITRES';
		break;
	case 24:
	    $decimal_en_letras='VEINTICUATRO';
		break;
	case 25:
	    $decimal_en_letras='VEINTICINCO';
		break;
	case 26:
	    $decimal_en_letras='VEINTISEIS';
		break;
	case 27:
	    $decimal_en_letras='VEINTISIETE';
		break;
	case 28:
	    $decimal_en_letras='VEINTIOCHO';
		break;
	case 29:
	    $decimal_en_letras='VEINTINUEVE';
		break;
	case 30:
	    $decimal_en_letras='TREINTA';
		break;	
	case 31:
	    $decimal_en_letras='TREINTA Y UNO';
		break;
	case 32:
	    $decimal_en_letras='TREINTA Y DOS';
		break;
	case 33:
	    $decimal_en_letras='TREINTA Y TRES';
		break;
	case 34:
	    $decimal_en_letras='TREINTA Y CUATRO';
		break;
	case 35:
	    $decimal_en_letras='TREINTA Y CINCO';
		break;
	case 36:
	    $decimal_en_letras='TREINTA Y SEIS';
		break;
	case 37:
	    $decimal_en_letras='TREINTA Y SIETE';
		break;
	case 38:
	    $decimal_en_letras='TREINTA Y OCHO';
		break;	
	case 39:
	    $decimal_en_letras='TREINTA Y NUEVE';
		break;	
	case 40:
	    $decimal_en_letras='CUARENTA';
		break;	
	case 41:
	    $decimal_en_letras='CUARENTA Y UNO';
		break;	
	case 42:
	    $decimal_en_letras='CUARENTA Y DOS';
		break;	
	case 43:
	    $decimal_en_letras='CUARENTA Y TRES';
		break;	
	case 44:
	    $decimal_en_letras='CUARENTA Y CUATRO';
		break;	
	case 45:
	    $decimal_en_letras='CUARENTA Y CINCO';
		break;	
	case 46:
	    $decimal_en_letras='CUARENTA Y SEIS';
		break;	
	case 47:
	    $decimal_en_letras='CUARENTA Y SIETE';
		break;	
	case 48:
	    $decimal_en_letras='CUARENTA Y OCHO';
		break;	
	case 49:
	    $decimal_en_letras='CUARENTA Y NUEVE ';
		break;	
	case 50:
	    $decimal_en_letras='CINCUENTA';
		break;	
	case 51:
	    $decimal_en_letras='CINCUENTA Y UNO';
		break;	
	case 52:
	    $decimal_en_letras='CINCUENTA Y DOS';
		break;	
	case 53:
	    $decimal_en_letras='CINCUENTA Y TRES';
		break;	
	case 54:
	    $decimal_en_letras='CINCUENTA Y CUATRO';
		break;	
	case 55:
	    $decimal_en_letras='CINCUENTA Y CINCO';
		break;	
	case 56:
	    $decimal_en_letras='CINCUENTA Y SEIS';
		break;	
	case 57:
	    $decimal_en_letras='CINCUENTA Y SIETE';
		break;	
	case 58:
	    $decimal_en_letras='CINCUENTA Y OCHO';
		break;	
	case 59:
	    $decimal_en_letras='CINCUENTA Y NUEVE';
		break;	
	case 60:
	    $decimal_en_letras='SESENTA';
		break;	
	case 61:
	    $decimal_en_letras='SESENTA Y UNO';
		break;	
	case 62:
	    $decimal_en_letras='SESENTA Y DOS';
		break;	
	case 63:
	    $decimal_en_letras='SESENTA Y TRES';
		break;	
	case 64:
	    $decimal_en_letras='SESENTA Y CUATRO';
		break;	
	case 65:
	    $decimal_en_letras='SESENTA Y CINCO';
		break;	
	case 66:
	    $decimal_en_letras='SESENTA Y SEIS';
		break;	
	case 67:
	    $decimal_en_letras='SESENTA Y SIETE';
		break;	
	case 68:
	    $decimal_en_letras='SESENTA Y OCHO';
		break;	
	case 69:
	    $decimal_en_letras='SESENTA Y NUEVE';
		break;	
	case 70:
	    $decimal_en_letras='SETENTA';
		break;	
	case 71:
	    $decimal_en_letras='SETENTA Y UNO';
		break;	
	case 72:
	    $decimal_en_letras='SETENTA Y DOS';
		break;	
	case 73:
	    $decimal_en_letras='SETENTA Y TRES';
		break;	
	case 74:
	    $decimal_en_letras='SETENTA Y CUATRO';
		break;	
	case 75:
	    $decimal_en_letras='SETENTA Y CINCO';
		break;	
	case 76:
	    $decimal_en_letras='SETENTA Y SEIS';
		break;	
	case 77:
	    $decimal_en_letras='SETENTA Y SIETE';
		break;	
	case 78:
	    $decimal_en_letras='SETENTA Y OCHO';
		break;	
	case 79:
	    $decimal_en_letras='SETENTA Y NUEVE';
		break;	
	case 80:
	    $decimal_en_letras='OCHENTA';
		break;	
	case 81:
	    $decimal_en_letras='OCHENTA Y UNO';
		break;	
	case 82:
	    $decimal_en_letras='OCHENTA Y DOS';
		break;	
	case 83:
	    $decimal_en_letras='OCHENTA Y TRES';
		break;	
	case 84:
	    $decimal_en_letras='OCHENTA Y CUATRO';
		break;	
	case 85:
	    $decimal_en_letras='OCHENTA Y CINCO';
		break;	
	case 86:
	    $decimal_en_letras='OCHENTA Y SEIS';
		break;	
	case 87:
	    $decimal_en_letras='OCHENTA Y SIETE';
		break;	
	case 88:
	    $decimal_en_letras='OCHENTA Y OCHO';
		break;	
	case 89:
	    $decimal_en_letras='OCHENTA Y NUEVE';
		break;	
	case 90:
	    $decimal_en_letras='NOVENTA';
		break;	
	case 91:
	    $decimal_en_letras='NOVENTA Y UNO';
		break;	
	case 92:
	    $decimal_en_letras='NOVENTA Y DOS';
		break;	
	case 93:
	    $decimal_en_letras='NOVENTA Y TRES';
		break;	
	case 94:
	    $decimal_en_letras='NOVENTA Y CUATRO';
		break;	
	case 95:
	    $decimal_en_letras='NOVENTA Y CINCO';
		break;	
	case 96:
	    $decimal_en_letras='NOVENTA Y SEIS';
		break;	
	case 97:
	    $decimal_en_letras='NOVENTA Y SIETE';
		break;	
	case 98:
	    $decimal_en_letras='NOVENTA Y OCHO';
		break;	
	case 99:
	    $decimal_en_letras='NOVENTA Y NUEVE';
		break;	
	default:    
		$decimal_en_letras='';
		break;	
   }
   $en_letras=$decimal_en_letras;			     
   return $en_letras;
}
?> 