<?php
require_once("DBManager.class.php");

class Falta{
	private $idfalta;
	private $idafiliado;///
	private $fecha;
	private $especifica;
	private $justifica;
		
	///////////////////////////////////////////
	public function Crear($idafi,$fecha,$nom,$justifica)
	{
		$resp=false;		
		$db= new DBManager();	
		$fecha = implode("-", array_reverse(explode("-", $fecha)));	
		if($db->_execute("INSERT INTO faltas(idfalta,idafiliado,fecha,especifica,justifica) VALUES(null,".$idafi.",'".$fecha."','".$nom."','".$justifica."')"))   
		{
			$resp=true;
		}
		return $resp;		
	}
	
	
	public function ListarPorFecha($v)
	{
		$vector=null;		
		$db= new DBManager();	
		$v = implode("-", array_reverse(explode("-", $v)));		
		$rs=$db->execute("select idfalta,idafiliado,DATE_FORMAT(fecha,'%d-%m-%Y') AS fecha,especifica,justifica from faltas where(fecha ='".$v."')");
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$row=0;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) 
			{
   				$vector[$row]=array("idfalta"	    => $rs->fields["idfalta"],
									"idafiliado"	    => $rs->fields["idafiliado"],
									"fecha" 	    => $rs->fields["fecha"],
									"especifica" 	=> $rs->fields["especifica"],
									"justifica" 	=> $rs->fields["justifica"]);
									
                $row++;
				$rs->nextRow(); // Nota: nextRow() Esta situado al final				
         	}			
        	return $vector;			
		}else return null;
		$rs->close(); 
		$db->closeConnection();//opcional cierra el enlace de la Base de Datos              						
	}
	
	
	public function BuscarPorCodigo($vcod)
	{
		
		$resp=false;
		$num_rows=0;//numero de filas afectada por la consulta
		$db= new DBManager();
		$rs=$db->execute("select idfalta,idafiliado,fecha,especifica,justifica from faltas where(idfalta = ".$vcod.")");
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$resp=true;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) {
                // Coleccion de campos accesible mediante arrays asociativos también
	                 $this->idfalta=$rs->fields["idfalta"];
					  $this->idafiliado=$rs->fields["idafiliado"];
					  $this->fecha=$rs->fields["fecha"];
				      $this->especifica=$rs->fields["especifica"];
					  $this->justifica=$rs->fields["justifica"];
					  
 				$rs->nextRow(); // Nota: nextRow() Esta situado al final				
        	}			
		}
		$rs->close(); 
		$db->closeConnection();//opcional cierra el enlace de la Base de Datos              
		return $resp;							
	}
	
	////////////////////////////////////////////	
	
	public function Actualizar($idd,$fecha,$nom,$fn,$justifica)			
	{
		$resp=false;		
		$db= new DBManager();	
		$fn = implode("-",array_reverse(explode("-",$fn)));	
		if($db->_execute("update faltas set fecha='".$fn."',especifica = '".$nom."', justifica=".$justifica." where (idfalta=".$idd.") "))//si es exitosa la consulta			   
		{
		  $resp=true; 
		}	
		return $resp;
	}
	
	/////////////////////////////////
	public function ListaPorIdafiliado($id)
	{
		$vector=null;
		$db= new DBManager();		
		$rs=$db->execute("select idfalta,idafiliado,DATE_FORMAT(fecha,'%d-%m-%Y') AS fecha,especifica,justifica from faltas where (idafiliado=".$id.") ");
		$num_rows=$rs->getNumOfRows();
		if($num_rows>0)
		{	$row=0;
			$rs->firstRow(); // opcional, pero recomendado
			while (!$rs->EOF) {
                $vector[$row]=array("idfalta"	    => $rs->fields["idfalta"],
									"idafiliado"	    => $rs->fields["idafiliado"],
									"fecha" 	    => $rs->fields["fecha"],
									"especifica" 	=> $rs->fields["especifica"],
									"justifica" 	=> $rs->fields["justifica"]);
									
                $row++;
				$rs->nextRow(); // Nota: nextRow() Esta situado al final				
        	}			
        	return $vector;			
		}else return null;
		
		$rs->close(); 
		$db->closeConnection();//opcional cierra el enlace de la Base de Datos              						
	}
	

	//////////////////////////////
	public function Eliminar($vcod)
	{
		$resp=false;		
		$db= new DBManager();		
		if($db->_execute("DELETE FROM faltas WHERE (idfalta=".$vcod.");"))   
		{
			$resp=true;
		}
		return $resp;		
	}	
	/////////////////////////////////////////						
	public function getidfalta(){ return $this->idfalta;}
	public function getidafiliado(){ return $this->idafiliado;}
	public function getespecifica(){ return $this->especifica;}
	public function getfecha(){ return $this->fecha;}
	public function getjustifica(){ return $this->justifica;}
	
	}
?>
