<?php
require('fpdf/fpdf.php');
include "conexion/conex.php";
$f1=$_GET['fecha1'];
$f2=$_GET['fecha2'];
class PDF extends FPDF
{
var $widths;
var $aligns;

function SetWidths($w)
{
	//Set the array of column widths
	$this->widths=$w;
}

function SetAligns($a)
{
	//Set the array of column alignments
	$this->aligns=$a;
}

function Row2($data)
{
	//Calculate the height of the row
	$nb=0;
	for($i=0;$i<count($data);$i++)
		$nb=max($nb,$this->NbLines($this->widths[$i],$data[$i]));
	$h=5*$nb;
	//Issue a page break first if needed
	$this->CheckPageBreak($h);
	//Draw the cells of the row
	for($i=0;$i<count($data);$i++)
	{
		$w=$this->widths[$i];
		$a=isset($this->aligns[$i]) ? $this->aligns[$i] : 'C';
		//Save the current position
		$x=$this->GetX();
		$y=$this->GetY();
		//Draw the border
		
		$this->Rect($x,$y,$w,$h);

		//$this->MultiCell($w,5,$data[$i],0,$a,'true');
		$this->MultiCell($w,5,$data[$i],0,$a,'true');
		//Put the position to the right of the cell
		$this->SetXY($x+$w,$y);
	}
	//Go to the next line
	$this->Ln($h);
}


function Row($data)
{
	//Calculate the height of the row
	$nb=0;
	for($i=0;$i<count($data);$i++)
		$nb=max($nb,$this->NbLines($this->widths[$i],$data[$i]));
	$h=5*$nb;
	//Issue a page break first if needed
	$this->CheckPageBreak($h);
	//Draw the cells of the row
	for($i=0;$i<count($data);$i++)
	{
		$w=$this->widths[$i];
		$a=isset($this->aligns[$i]) ? $this->aligns[$i] : 'C';
		//Save the current position
		$x=$this->GetX();
		$y=$this->GetY();
		//Draw the border
		
		$this->Rect($x,$y,$w,$h);

		//$this->MultiCell($w,5,$data[$i],0,$a,'true');
		$this->MultiCell($w,5,$data[$i],0,$a,0);
		//Put the position to the right of the cell
		$this->SetXY($x+$w,$y);
	}
	//Go to the next line
	$this->Ln($h);
}
function CheckPageBreak($h)
{
	//If the height h would cause an overflow, add a new page immediately
	if($this->GetY()+$h>$this->PageBreakTrigger)
		$this->AddPage($this->CurOrientation);
}

function NbLines($w,$txt)
{
	//Computes the number of lines a MultiCell of width w will take
	$cw=&$this->CurrentFont['cw'];
	if($w==0)
		$w=$this->w-$this->rMargin-$this->x;
	$wmax=($w-2*$this->cMargin)*1000/$this->FontSize;
	$s=str_replace("\r",'',$txt);
	$nb=strlen($s);
	if($nb>0 and $s[$nb-1]=="\n")
		$nb--;
	$sep=-1;
	$i=0;
	$j=0;
	$l=0;
	$nl=1;
	while($i<$nb)
	{
		$c=$s[$i];
		if($c=="\n")
		{
			$i++;
			$sep=-1;
			$j=$i;
			$l=0;
			$nl++;
			continue;
		}
		if($c==' ')
			$sep=$i;
		$l+=$cw[$c];
		if($l>$wmax)
		{
			if($sep==-1)
			{
				if($i==$j)
					$i++;
			}
			else
				$i=$sep+1;
			$sep=-1;
			$j=$i;
			$l=0;
			$nl++;
		}
		else
			$i++;
	}
	return $nl;
}


// Cabecera de página
function Header()
{
	// Logo
	$this->Image('logo.png',10,8,33);
	// Arial bold 15
	$this->SetFont('Arial','B',15);
	// Movernos a la derecha
	//$this->Cell(10);
	// Título
	$titulo="CONTRALORÍA DEL ESTADO BOLIVARIANO DE MÉRIDA";
	$titulo2="Dirección Técnica, Planficación y Control de Gestión";
	$this->Cell(0,10,$titulo,0,2,'C');
	$this->Cell(0,5,$titulo2,0,1,'C');
	$this->Ln(15);
	$this->SetFont('Arial','B',10);
	$sub="REGISTRO Y CONTROL DE MANTENIMIENTOS, ASISTENCIA Y SOPORTES TÉCNICOS A LOS EQUIPOS TECNOLÓGICOS";
	$sub2=" DE LA CEBM POR FUNCIONARIOS ADSCRITOS AL ÁREA DE INFORMÁTICA Y SOPORTE TÉCNICO";
	$this->Cell(0,5,$sub,0,2,'C');
	$this->Cell(0,5,$sub2,0,1,'C');
	$this->Cell(0,5,'Fecha: '.date('d/m/Y').'',0,1,'R');
	// Salto de línea
	//$this->Ln(20);
	$this->Cell(0,10,'-----------------------------------------------------------------------------------------------------------------------------------------------------------',0,1,'C');
}

// Pie de página
function Footer()
{
	// Posición: a 1,5 cm del final
	$this->SetY(-15);
	// Arial italic 8
	$this->SetFont('Arial','I',8);
	// Número de página
	$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
}
}

// Creación del objeto de la clase heredada
$pdf = new PDF('L','mm','A4');
$pdf->AliasNbPages();
$pdf->AddPage();
//$pdf->SetFont('Times','',12);
//CONSULTA A LA BASE DE DATOS
$pdf->Cell(0,10,'Periodo Seleccionado: '.$f1.' al '.$f2,0,1);
$enlace =conectarbase();
$consulta1 = "SELECT * from reporte where Fecha_hora_inicio BETWEEN '$f1' and '$f2'";
$resultado=mysql_query($consulta1);
$fila=mysql_fetch_array($resultado);
// listamos los datos con Cell
$pdf->SetFont('Arial','',8); // definimos el tipo de letra y el tamaño
// Definimos el tamaño de las columnas, tomando en cuenta que las declaramos en milimetros, ya que nuestra hoja esta en milimetros.
$w=array(10,16,25,22,30,36,22,22,35,22,18,13);

$titu= array('ITEM','NUM. BIEN','TIPO ACCION P.','EQUIPO T.','USUARIO S.','UBICACION DEL BIEN','FECHA INICIO','FECHA CUL','BREVE DESCRIPCION','FUNCIONARIO','OPERACION','ESTADO');
$pdf->SetWidths($w);
	$pdf->SetFont('Arial','B',7);
	$pdf->SetFillColor(0,0,0);
    $pdf->SetTextColor(255);

		for($i=0;$i<1;$i++)
			{
				$pdf->Row2($titu);
			}
	$enlace =conectarbase();
	$consulta1 = "SELECT * from reporte where idCodigo_reporte > 0 and Fecha_hora_inicio BETWEEN '$f1' and '$f2' order by idCodigo_reporte asc";
	$resultado=mysql_query($consulta1);
	//$fila=mysql_fetch_array($resultado);
	
	$numfilas = mysql_num_rows($resultado);
	//$pdf->Cell(0,10,'Imprimiendo número '.$numfilas,0,1);
	for ($i=0; $i<$numfilas; $i++)
		{
			$fila = mysql_fetch_array($resultado);
			
			$pdf->SetFont('Arial','',8);
			//$pdf->Cell(0,10,'Imprimiendo línea número '.$i,0,1);
			if($i%2 == 1)
			{
				$pdf->SetFillColor(255,255,255);
    			$pdf->SetTextColor(0);
				$pdf->Row(array($fila['idCodigo_reporte'], $fila['Num_bien'], $fila['Tipo_servicio'], $fila['Equipo_tecnologico'], $fila['Usuario_solicitante'], $fila['Nombre_direccion'], $fila['Fecha_hora_inicio'], $fila['Fecha_hora_culminacion'], $fila['Descripcion_falla'], $fila['Nombre_funcionario'], $fila['Operacion_reporte'], $fila['Estado_reporte']));
			}
			else
			{
				$pdf->SetFillColor(255,255,255);
    			$pdf->SetTextColor(0);
				$pdf->Row(array($fila['idCodigo_reporte'], $fila['Num_bien'], $fila['Tipo_servicio'], $fila['Equipo_tecnologico'], $fila['Usuario_solicitante'], $fila['Nombre_direccion'], $fila['Fecha_hora_inicio'], $fila['Fecha_hora_culminacion'], $fila['Descripcion_falla'], $fila['Nombre_funcionario'], $fila['Operacion_reporte'], $fila['Estado_reporte']));
			}

		}

/*$consulta1 = "SELECT * from estadistica";
$resultado=mysql_query($consulta1);
$fila=mysql_fetch_array($resultado);
$n_m_p=$fila['Numero_m_preventivo'];
$n_m_c=$fila['Numero_m_correctivo'];
$n_a_t=$fila['Numero_asistencia_t'];
$t=$n_m_p+$n_m_c+$n_a_t;
$pdf->Cell(0,10,'Número  Total de Reportes Atendidos : '.$t,0,1);
$pdf->Cell(0,10,'Número de Mantenimientos Correctivos : '.$n_m_c,0,1);
$pdf->Cell(0,10,'Número de Mantenimientos Preventivos : '.$n_m_p,0,1);
$pdf->Cell(0,10,'Número de Asistencia y Soporte Técnico : '.$n_a_t,0,1);*/

//lenando la tsbla con los datos
//for ($i=0; $i< count($w);$i++){
//	$pdf->Cell($w[$i],6,$titu[$i],1,0,'C');
/*Row(array($fila['Codigo_reporte'], $fila['Num_bien'], $fila['tipo_servicio'], $fila['Equipo_tecnologico'], $fila['Usuario_solicitante'], $fila['Nombre_direccion'], $fila['Fecha_hora_inicio'], $fila['Fecha_hora_culminacion'], $fila['Descripcion_falla'], $fila['Nombre_funcionario'], $fila['Operacion_reporte'], $fila['Estado_reporte']));*/
//}
//cargamos los datos

// creamos nuestra fila con las columnas fecha(fecha de la visita al medico), medico(nombre del medico que nos atendio), consultorio y el diagnostico en esa visita.
//for($i=1;$i<=40;$i++)
//	$pdf->Cell(0,10,'Imprimiendo línea número '.$i,0,1);
$pdf->Output();
?>