<?php
    if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class PerfilesHotel_Model extends CI_Model
{
    //Constructor 
    function __construct()
    {
        parent::__construct();
        //$this->load->library('encryption');
    }

    // public function getPerfilesHotel()
    // {
    //     //Inicio transaccion    
    //     $this->db->select('*');
    //     $this->db->from('perfiles');

    //     $query = $this->db->get();
    //     return $query;
    // }

    //Buscar Eventos por parametros
    public function getPerfilesHotelforParameter($limit=false,$offset=false,$data)
    {
        $limit ? $this->db->limit($limit, $offset):'';

        $this->load->library('Consultar');
        $conn = $this->CI_Consultar->conexion(APP_SERVERNAME,APP_DBNAME,APP_USER,APP_PASS);
     
        $misql = "EXEC spGetPerfiles @Opcion   = ".$data[0].",
                                     @IdPerfil = ".$data[1].",
                                     @Nombre   = ".$data[2]."";

        $results=$this->CI_Consultar->consultarsp($misql,$conn);
        $results = mb_convert_encoding($results ,'UTF-8', 'HTML-ENTITIES');
        return $results;
    }

    public function savePerfiles($data)
    {
        //Inicio transaccion    
        $this->db->trans_begin();  

        //recorrer el data. 
		$Opcion            = $data['Opcion'];         
		$Nombre            = $data['Nombre'];        
		$IdEstado          = $data['IdEstado'];        
		$Descripcion       = $data['Descripcion'];        
		$Clase             = $data['Clase'];       

		//Llamo al procedimiento almacenado
        $misql='EXEC spInsertPerfil @Opcion      = '.$Opcion.', 
									@Nombre      = '.$Nombre.', 
									@IdEstado    = '.$IdEstado.', 
									@Descripcion = '.$Descripcion.', 
									@Clase       = '.$Clase.'';
       
		//Envio el procedimiento y los parametros
		$result=$this->db->query($misql); 
        
		//Control de transacciones 
		if ($this->db->trans_status() === false) {
			$this->db->trans_rollback();
			return false;
		} else {
			$this->db->trans_commit();
			return true;
		}     
    }

    public function updatePerfiles($data)
    {
         //Inicio transaccion    
         $this->db->trans_begin();  

         //recorrer el data.
         $Opcion      = '1';
         $Nombre      = $data['Nombre'];        
         $IdEstado    = $data['IdEstado'];        
         $Descripcion = $data['Descripcion'];        
         $Clase       = $data['Clase'];   
         $IdPerfil    = $data['IdPerfil'];     
          
         //Llamo al procedimiento almacenado
         $misql='EXEC spUpdatePerfil @Opcion      = '.$Opcion.',
                                     @Nombre      = '.$Nombre.',
                                     @IdEstado    = '.$IdEstado.',  
                                     @Descripcion = '.$Descripcion.', 
                                     @Clase       = '.$Clase.',
                                     @IdPerfil    = '.$IdPerfil.'';

         //Envio el procedimiento y los parametros
         $result=$this->db->query($misql); 
          
         //Control de transacciones 
         if ($this->db->trans_status() === false) {
             $this->db->trans_rollback();
             return false;
         } else {
             $this->db->trans_commit();
             return true;
         }
    }
}
?>

