<?php
$$est=$_GET["estado"];
$q=$_GET["otro"];
$z=$_GET["insumo"];

require_once ("config/db.php");//Contiene las variables de configuracion para conectar a la base de datos
require_once ("config/conexion.php");//Contiene funcion que conecta a la base de datos


//CONSULTA
if($z==NULL AND $q == NULL)
   {
	 
     $consulta=mysqli_query($con,"SELECT * FROM beneficiados ORDER BY linea ASC");
     $tituloReporte = "Lista de Asignaciones de Insumos en el estado ".$est."";
   }
   
   
   else if($q!=NULL AND $z==NULL)
   {
	  
     $consulta=mysqli_query($con,"SELECT * FROM beneficiados where estado='$est' AND (placa LIKE '%$q%' or cedula LIKE '%$q%' or producto_asig LIKE '%$q%') ORDER BY linea ASC");
     $tituloReporte = "Lista de Asignaciones en el estado ".$est." por el campo ".$q."";
   }
   
   else if($q==NULL AND $z!=NULL)
   {
      
     $consulta=mysqli_query($con,"SELECT * FROM beneficiados where estado='$est' AND (tipo_insumo LIKE '%$z%') ORDER BY linea ASC");
      $tituloReporte = "Lista de Asignaciones de ".$z." en el estado ".$est."";
   }
   

   else if($q !=NULL AND $z!=NULL)
   {
     
     $consulta=mysqli_query($con,"SELECT * FROM beneficiados where estado='$est' AND (placa LIKE '%$q%' or cedula LIKE '%$q%' or producto_asig LIKE '%$q%') AND (tipo_insumo LIKE '%$z%') ORDER BY linea ASC");
   $tituloReporte = "Lista de Asignaciones de ".$z." en el estado ".$est." y por el campo: ".$q."";
   }
   
   
   else 
   {}

		/** Se agrega la libreria PHPExcel */
		require_once 'lib/PHPExcel/PHPExcel.php';

		// Se crea el objeto PHPExcel
		$objPHPExcel = new PHPExcel();

		// Se asignan las propiedades del libro
		$objPHPExcel->getProperties()->setCreator("Fontur") //Autor
							 ->setLastModifiedBy("Tecnologia") //Ultimo usuario que lo modificó
							 ->setTitle("Reporte en Excel")
							 ->setSubject("Reporte en Excel")
							 ->setDescription("Lista de Asignaciones")
							 ->setKeywords("Lista de Asignaciones de insumos")
							 ->setCategory("Reporte excel");

		
		$titulosColumnas = array('CEDULA', 'NOMBRE', 'PLACA', 'TIPO DE INSUMO', 'PRODUCTO','CANTIDAD', 'ESTADO', 'MUNICIPIO', 'LINEA',);
		
		$objPHPExcel->setActiveSheetIndex(0)
        		    ->mergeCells('A1:I1');
						
		// Se agregan los titulos del reporte
		$objPHPExcel->setActiveSheetIndex(0)
					->setCellValue('A1',$tituloReporte)
        		    ->setCellValue('A3',  $titulosColumnas[0])
		            ->setCellValue('B3',  $titulosColumnas[1])
					->setCellValue('C3',  $titulosColumnas[2])
        		    ->setCellValue('D3',  $titulosColumnas[3])
            		->setCellValue('E3',  $titulosColumnas[4])
					->setCellValue('F3',  $titulosColumnas[5])
		            ->setCellValue('G3',  $titulosColumnas[6])
        		    ->setCellValue('H3',  $titulosColumnas[7])
            		->setCellValue('I3',  $titulosColumnas[8]);
					
        		   
		
		//Se agregan los datos de los alumnos
		$i = 4;
		while($fila=mysqli_fetch_array($consulta)){
			$objPHPExcel->setActiveSheetIndex(0)
        		    ->setCellValue('A'.$i,  $fila['cedula'])
		            ->setCellValue('B'.$i,  $fila['cliente'])
					->setCellValue('C'.$i,  $fila['placa'])
        		    ->setCellValue('D'.$i,  $fila['tipo_insumo'])
            		->setCellValue('E'.$i, $fila['producto'])
					->setCellValue('F'.$i,  $fila['cantidad'])
		            ->setCellValue('G'.$i,  $fila['estado'])
        		    ->setCellValue('H'.$i,  $fila['municipio'])
            		->setCellValue('I'.$i, $fila['linea']);			
					
					$i++;
		}
		
		$estiloTituloReporte = array(
        	'font' => array(
	        	'name'      => 'Verdana',
    	        'bold'      => true,
        	    'italic'    => false,
                'strike'    => false,
               	'size' =>16,
	            	'color'     => array(
    	            	'rgb' => 'FFFFFF'
        	       	)
            ),
	        'fill' => array(
				'type'	=> PHPExcel_Style_Fill::FILL_SOLID,
				'color'	=> array('rgb' => 'F00000')
			),
            'borders' => array(
               	'allborders' => array(
                	'style' => PHPExcel_Style_Border::BORDER_NONE                    
               	)
            ), 
            'alignment' =>  array(
        			'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
        			'vertical'   => PHPExcel_Style_Alignment::VERTICAL_CENTER,
        			'rotation'   => 0,
        			'wrap'          => TRUE
    		)
        );

		$estiloTituloColumnas = array(
            'font' => array(
                'name'      => 'Arial',
                'bold'      => true,                          
                'color'     => array(
                    'rgb' => 'FFFFFF'
                )
            ),
            'fill' => array(
				'type'	=> PHPExcel_Style_Fill::FILL_SOLID,
				'color'	=> array('rgb' => 'F00000')
			),
            'borders' => array(
            	'top'     => array(
                    'style' => PHPExcel_Style_Border::BORDER_MEDIUM ,
                    'color' => array(
                        'rgb' => '143860'
                    )
                ),
                'bottom'     => array(
                    'style' => PHPExcel_Style_Border::BORDER_MEDIUM ,
                    'color' => array(
                        'rgb' => '143860'
                    )
                )
            ),
			'alignment' =>  array(
        			'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
        			'vertical'   => PHPExcel_Style_Alignment::VERTICAL_CENTER,
        			'wrap'          => TRUE
    		));
			
		$estiloInformacion = new PHPExcel_Style();
		$estiloInformacion->applyFromArray(
			array(
           		'font' => array(
               	'name'      => 'Arial',               
               	'color'     => array(
                   	'rgb' => '000000'
               	)
           	),
           	
           	'borders' => array(
               	'left'     => array(
                   	'style' => PHPExcel_Style_Border::BORDER_THIN ,
	                'color' => array(
    	            	'rgb' => '3a2a47'
                   	)
               	)             
           	)
        ));
		 
		$objPHPExcel->getActiveSheet()->getStyle('A1:I1')->applyFromArray($estiloTituloReporte);
		$objPHPExcel->getActiveSheet()->getStyle('A3:I3')->applyFromArray($estiloTituloColumnas);		
		$objPHPExcel->getActiveSheet()->setSharedStyle($estiloInformacion, "A4:I".($i-1));
				
		for($i = 'A'; $i <= 'I'; $i++){
			$objPHPExcel->setActiveSheetIndex(0)			
				->getColumnDimension($i)->setAutoSize(TRUE);
		}
		
		// Se asigna el nombre a la hoja
		$objPHPExcel->getActiveSheet()->setTitle('ASIGNACIONES');

		// Se activa la hoja para que sea la que se muestre cuando el archivo se abre
		$objPHPExcel->setActiveSheetIndex(0);
		// Inmovilizar paneles 
		//$objPHPExcel->getActiveSheet(0)->freezePane('A4');
		$objPHPExcel->getActiveSheet(0)->freezePaneByColumnAndRow(0,4);

		// Se manda el archivo al navegador web, con el nombre que se indica (Excel2007)
		header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
		header('Content-Disposition: attachment;filename="lista de Asignaciones.xlsx"');
		header('Cache-Control: max-age=0');

		$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
		$objWriter->save('php://output');
		exit;
		
?>