<?php
  session_start();
 //error_reporting(E_ALL);
error_reporting(0);

 set_time_limit(0);
  ini_set('memory_limit','256M'); 
  

  ob_start();
	
  define('__ROOT__', dirname(dirname(__FILE__))); 
//  require_once(__ROOT__.'/siga_postgrado/html/ClsGeneradorHtml.class.php'); 
//  require_once(__ROOT__.'/siga_postgrado/Connections/dbms.class.php');
//  require_once(__ROOT__.'/siga_postgrado/Connections/dbmy.class.php');

  require_once('html/ClsGeneradorHtml.class.php'); 
  require_once('Connections/dbms.class.php');
  require_once('Connections/dbmy.class.php');
  require_once('clsObjetodeDatos.class.php'); 

  
	
	extract ($_POST); ///EXTRAE VARIABLES DE POST A VARIABLES SIMPLES CON EL MISMO NOMBRE
	extract ($_GET);

	function celda_color($letrai,$posi,$letraf,$posf,$valor,$hojaActiva,$tamano,$negrita,$encode,$color){
			$hojaActiva->mergeCells($letrai.$posi.':'.$letraf.$posf);
			$x1=$hojaActiva->getStyle($letrai.$posi,$letraf.$posf);
			$x2 =$x1->getAlignment();
			$x2->setWrapText(true);
			$x2->setVertical('center');
			$x2->setHorizontal('center');
			$x3=$x1->getBorders();
			$x4=$x3->getOutline();
			$x4->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
			if(!empty($encode)){
				$hojaActiva->setCellValue($letrai.$posi,utf8_encode($valor));
			}else{
				$hojaActiva->setCellValue($letrai.$posi,$valor);				
			}
			$x5=$x1->getFont();
			$x6=$x5->setBold($negrita);
			$x6->setSize($tamano);		
			if(!empty($color)){
				$x7=$hojaActiva->getStyle($letrai.$posi);
				$x8=$x7->getFill();
				$x8->setFillType('solid');
				$x9 = $x8->getStartColor();
				$x9->setARGB('FF808080');
		  }
	}
	
   function celda($letrai,$posi,$letraf,$posf,$valor,$hojaActiva,$tamano,$negrita){
			$hojaActiva->mergeCells($letrai.$posi.':'.$letraf.$posf);
			$hojaActiva->getStyle($letrai.$posi,$letraf.$posf)->getAlignment()->setWrapText(true);
			$hojaActiva->getStyle($letrai.$posi,$letraf.$posf)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
			$hojaActiva->getStyle($letrai.$posi,$letraf.$posf)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
			$hojaActiva->getStyle($letrai.$posi.':'.$letraf.$posf)->getBorders()->getOutline()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
			$hojaActiva->setCellValue($letrai.$posi,utf8_decode($valor));
			$hojaActiva->getStyle($letrai.$posi.':'.$letraf.$posf)->getFont()->setBold($negrita)->setSize($tamano);

																
	}

	
	/*function celda($letrai,$posi,$letraf,$posf,$valor,$hojaActiva,$tamano,$negrita){
			$hojaActiva->mergeCells($letrai.$posi.':'.$letraf.$posf);
			$x1=$hojaActiva->getStyle($letrai.$posi,$letraf.$posf);
			$x2 =$x1->getAlignment();
			$x2->setWrapText(true);
			$x2->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
			$x2->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
			$x3=$x1->getBorders();
			$x4=$x3->getOutline();
			$x4->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
                        $x3=$x1->getBorders();
			$x4=$x3->getTop();
                        $x4->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
			$hojaActiva->setCellValue($letrai.$posi,utf8_decode($valor));
			$x5=$x1->getFont();
			$x6=$x5->setBold($negrita);
			$x6->setSize($tamano);																	
	}*/
	function celda_marco($letrai,$posi,$letraf,$posf,$valor,$hojaActiva,$tamano,$negrita){
			$hojaActiva->mergeCells($letrai.$posi.':'.$letraf.$posf);
			$x1=$hojaActiva->getStyle($letrai.$posi,$letraf.$posf);
			$x2 =$x1->getAlignment();
			$x2->setWrapText(true);
			$x2->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
			$x2->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
			$x3=$x1->getBorders();
			$x4=$x3->getOutline();
			$x4->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
                       $x3=$x1->getBorders();
			$x4=$x3->getTop();
                        $x4->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
			$hojaActiva->setCellValue($letrai.$posi,utf8_decode($valor));
	 		$x5=$x1->getFont();
			$x6=$x5->setBold($negrita);
			$x6->setSize($tamano);																	
	}
	if (!empty($cmdImprimir)){
		//require_once (__ROOT__.'/siga_postgrado/phpexcel/Classes/PHPExcel/IOFactory.php');
                require_once ('phpexcel/Classes/PHPExcel/IOFactory.php');
		$objPHPExcel = PHPExcel_IOFactory::load("horarios.xls");
		$hojaActiva=$objPHPExcel->setActiveSheetIndex(0);
		$bd =new dbms('mysql','no');
	    
				$hojaActiva->setCellValue('A3',"Período: ".$datos->periodo);
		
				$sql="SELECT  horas.codigo_hora,CONCAT(DATE_FORMAT(`hora_ini`,'%h:%i:%s'),'-',DATE_FORMAT(`hora_fin`,'%h:%i:%s')) as hora   FROM `horas` 
				inner join `turno_horas` on turno_horas.codigo_hora = horas.codigo_hora 
				WHERE turno_horas.`estatus_turno_horas` ='V' and horas.codigo_sede='14-01'";		
				$bd->EjecutarQuery($sql);
				$datosHoras=$bd->DatosArray();
				$posinicial =6;
				$posifinal=8;	

				foreach ($datosHoras as $valuehoras){			
					celda('A',$posinicial,'B',$posifinal,$valuehoras['hora'],$hojaActiva,8,false);
					for($i=1;$i<7;$i++){
						$sql="SELECT materias.`nombre_materia` as materia,
										`horarios`.`codigo_aula`,`desc_aula`,
										`horarios`.`codigo_horario`,
										concat(nombres,' ',apellidos) as Nombres 
										FROM `horarios` inner join 
										`materias` on `horarios`.id_materia = materias.id_materia 
										left join aulas on horarios.codigo_aula = aulas.codigo_aula 
										left join  oferta_academica on `horarios`.seccion= `oferta_academica`.codigo_seccion 
										and `horarios`.id_periodo =`oferta_academica`.`id_periodo` 
										and `horarios`.id_materia =`oferta_academica`.id_materia 
										left join `docentes` on  `oferta_academica`.id_profesor  =  `docentes`.`id_docente` 
						WHERE `horarios`.`codigo_dia`=".$i." and `horarios`.`codigo_hora` = ".$valuehoras['codigo_hora']." 
						and `horarios`.`id_periodo` = ".$datos->id_periodo."    
						and `horarios`.seccion ='".$seccion."'";
						$bd->EjecutarQuery($sql);
						$datosVerificar=$bd->DataObjeto();
						if($bd->count()>0){
							/*if($i==1){
								celda('C',$posinicial,'D',$posifinal,utf8_encode($datosVerificar->materia."\n".$datosVerificar->Nombres."\n"."Aula".$datosVerificar->desc_aula),$hojaActiva,8,false);
						    }elseif($i==2){
								celda('E',$posinicial,'F',$posifinal,utf8_encode($datosVerificar->materia."\n".$datosVerificar->Nombres."\n"."Aula".$datosVerificar->desc_aula),$hojaActiva,8,false);
						    }elseif($i==3){
								celda('G',$posinicial,'H',$posifinal,utf8_encode($datosVerificar->materia."\n".$datosVerificar->Nombres."\n"."Aula".$datosVerificar->desc_aula),$hojaActiva,8,false);
						    }elseif($i==4){
								celda('I',$posinicial,'J',$posifinal,utf8_encode($datosVerificar->materia."\n".$datosVerificar->Nombres."\n"."Aula".$datosVerificar->desc_aula),$hojaActiva,8,false);
						    }elseif($i==5){
								celda('K',$posinicial,'L',$posifinal,utf8_encode($datosVerificar->materia."\n".$datosVerificar->Nombres."\n"."Aula".$datosVerificar->desc_aula),$hojaActiva,8,false);
						    }elseif($i==6){
								celda('M',$posinicial,'N',$posifinal,utf8_encode($datosVerificar->materia."\n".$datosVerificar->Nombres."\n"."Aula".$datosVerificar->desc_aula),$hojaActiva,8,false);
							}*/
							if($i==1){
								celda('C',$posinicial,'D',$posifinal,utf8_encode($datosVerificar->materia."\n"."Aula".$datosVerificar->desc_aula),$hojaActiva,10,false);
						    }elseif($i==2){
								celda('E',$posinicial,'F',$posifinal,utf8_encode($datosVerificar->materia."\n"."Aula".$datosVerificar->desc_aula),$hojaActiva,10,false);
						    }elseif($i==3){
								celda('G',$posinicial,'H',$posifinal,utf8_encode($datosVerificar->materia."\n"."Aula".$datosVerificar->desc_aula),$hojaActiva,10,false);
						    }elseif($i==4){
								celda('I',$posinicial,'J',$posifinal,utf8_encode($datosVerificar->materia."\n"."Aula".$datosVerificar->desc_aula),$hojaActiva,10,false);
						    }elseif($i==5){
								celda('K',$posinicial,'L',$posifinal,utf8_encode($datosVerificar->materia."\n"."Aula".$datosVerificar->desc_aula),$hojaActiva,10,false);
						    }elseif($i==6){
								$sql="SELECT  codigo_hora,CONCAT(`hora_ini`,'-',`hora_fin`) as  horas FROM horas_equivalencia 
										WHERE codigo_hora = ".$valuehoras['codigo_hora'];										
										$bd->EjecutarQuery($sql);
										$datosEquivalencia=$bd->DataObjeto();celda('M',$posinicial,'N',$posifinal,utf8_encode($datosVerificar->materia."\n"."Aula".$datosVerificar->desc_aula."\n".$datosEquivalencia->horas),$hojaActiva,8,false);
							}
						}else{
							if($i==1){
								celda('C',$posinicial,'D',$posifinal,"",$hojaActiva,10,false);
						    }elseif($i==2){
								celda('E',$posinicial,'F',$posifinal,"",$hojaActiva,10,false);
						    }elseif($i==3){
								celda('G',$posinicial,'H',$posifinal,"",$hojaActiva,10,false);
						    }elseif($i==4){
								celda('I',$posinicial,'J',$posifinal,"",$hojaActiva,10,false);
						    }elseif($i==5){
								celda('K',$posinicial,'L',$posifinal,"",$hojaActiva,10,false);
						    }elseif($i==6){
								celda('M',$posinicial,'N',$posifinal,"",$hojaActiva,10,false);
							}							
						}
					}
					$posinicial=$posifinal+1;
					$posifinal=$posifinal+3;

				}
				$posinicial = 6;
				$posifinal=8;					

			
				ob_end_clean();
    
					// Redirect output to a clients web browser (Excel5)
					header('Content-Type: application/vnd.ms-excel;charset=utf-8');
					header('Content-Disposition: attachment;filename="Reporte Horarios.xls"');
					header('Cache-Control: max-age=0');

					$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
					///$objWriter->save('./pdf_files/ICR_'.$mes.'-'.$ano.'.xls');
					$objWriter->save('php://output');
	}else{	
		$bd =new dbms('mysql','no');
		$ClsGeneradorHtml=new ClsGeneradorHtml("","");
		$clsObjetodeDatos = new clsObjetodeDatos($bd,$var_post,$var_get);
		$forma= $ClsGeneradorHtml->Pagina_Top("Gestiona Horarios","",$script);
		
		echo $forma;
		echo $ClsGeneradorHtml->Pagina_Inicio_Body();
	    echo "<FORM  method='POST' name='frmcerrar' target='_self' title='Clientes'>
					<center>";
					
								echo $ClsGeneradorHtml->htmlTr();
										echo $ClsGeneradorHtml->htmlTd("5%").$ClsGeneradorHtml->htmlEtiqueta('Periodo:').$ClsGeneradorHtml->htmlFinTd();
										echo $ClsGeneradorHtml->htmlTd().$ClsGeneradorHtml->htmlSelect($clsObjetodeDatos->GetObjetoDatos($clsObjetodeDatos->GetSelectPeriodo()),"cmbPeriodo","codigo","descripcion",$cmbPeriodo,500,"",false,"cmbPeriodo","width: 206px;").$ClsGeneradorHtml->htmlFinTd();

								echo $ClsGeneradorHtml->htmlFinTr();

					
		echo		  " <img src='imagenes/printer.png' border='0'  onClick='imprimir_alumno();'></a>
			  </center>";
		echo $ClsGeneradorHtml->htmlHidden("hdSeccion",$seccion);

		echo "</FORM>";	
		echo $ClsGeneradorHtml->Pagina_Fin_Body();
		echo $ClsGeneradorHtml->Pagina_Fin_Html();
		

	}
	
	echo '<script type="text/javascript">
			  function imprimir_alumno(){
				//  alert(document.frmcerrar.cmbPeriodo.value);
					var strFeatures = "dialogTop="+((screen.height - 100) / 2)+"; dialogLeft=" + ((screen.width - 250) / 2) +"; dialogWidth=250px;" +
					"dialogHeight=100px; unadorned=0; status=0;  center=yes; help=no; font-family:Arial;" +
					"font-size:12px";
					showModalDialog ("impresion_horarios_alumnos_ventana.php?cmbPeriodo="+document.frmcerrar.cmbPeriodo.value, "",strFeatures);
			  }
	</script>';

?>
