<?php 
//En este modelo se encuentran todas las consultas realizadas en la tabla de usuarios(Administrador general)
class UsuariosA_model extends CI_Model { 
   public function __construct() {
      parent::__construct();
   }
   //Consulta que hace el registro de los usuarios
   public function GuardarUsuario($parametro){
      $campos=array(
         'NombreUsuario' => $parametro['NombreUsuario'],
         'Usuario' => $parametro['Usuario'],
         'Contrasenia' => md5($parametro['Contrasenia']),
         'Estatus' => ($parametro['Estatus']),
         'FechaNacimiento' => $parametro['FechaNacimiento'],
         'NumeroTelefonicoUsuario' => $parametro['NumeroTelefonicoUsuario'],  
         'DireccionUsuario' => $parametro['DireccionUsuario'],
         'Rol_IdRol' => $parametro['Rol_IdRol'],
         'ProfesionUsuario' => $parametro['ProfesionUsuario'],
         'Franquicias_IdFranquicias'=>$parametro['Franquicias_IdFranquicias'],
      );
      $this->db->insert('usuarios',$campos);
      $id=  $this->db->insert_id();
      //Valida que se haya hecho la consulta
        $res=$this->db->affected_rows();
          if($res==1){
            //Muestra una alerta de que los datos se guardarón correctamente
            // echo "<script>alert('Datos guardados correctamente');</script>";
            // redirect(base_url().'usuarios/Administrador/UsuariosA','refresh');
            echo "<script>alert('Datos guardados correctamente');
                 window.location.href='".base_url()."usuarios/Administrador/UsuariosA';
                 </script>";
          }else{
            //Muestra una alerta de que los datos no se guardarón correctamente
            // echo "<script>alert('Los datos no se pudierón ser guardados correctamente debido a que el usuario ya existe'');</script>";
            // redirect(base_url().'usuarios/Administrador/UsuariosA/agregar','refresh');
            echo "<script>alert('Los datos no se pudierón ser guardados correctamente debido a que el usuario ya existe');
                 window.location.href='".base_url()."usuarios/Administrador/UsuariosA/agregar';
                 </script>";
          }
    }

    public function eliminar ($id){
      $this->db->where('IdUsuarios',$id);
      $this->db->delete('usuarios');
      $res=$this->db->affected_rows();
      //Valida que se haya hecho la consulta
      if($res==0){
        //Muestra una alerta de que los datos no se eliminarón correctamente
       // echo "<script>alert('Error, no se pudierón eliminar los datos debido a que se estan usuando en otras tablas');</script>";
       //  redirect(base_url().'usuarios/Administrador/usuariosA','refresh');
      echo "<script>alert('Error, no se pudierón eliminar los datos debido a que se estan usando en otras tablas');
                 window.location.href='".base_url()."usuarios/Administrador/usuariosA';
                 </script>";
      }else{
        //Muestra una alerta de que los datos se eliminarón correctamente
        // echo "<script>alert('Los datos se han eliminado correctamente');</script>";
        // redirect(base_url().'usuarios/Administrador/usuariosA','refresh');
        echo "<script>alert('Los datos se han eliminado correctamente');
                 window.location.href='".base_url()."usuarios/Administrador/UsuariosA';
                 </script>";
      }
   
 }
    //Consulta que hace la busqueda del usuario seleccionado
    public function obtenerenlace ($id)
    {
      $this->db->where('IdUsuarios', $id);
      $query=$this->db->get('usuarios');
      if($query->num_rows()>0){
         return $query;
      }else{
         return FALSE;
      }
   }
   //Consulta que hace la busqueda del usuario seleccionado dependiendo la franquicia
    public function obtenerFranquicia ($id,$query){
      $this->db->join('franquicias','Franquicias_IdFranquicias = IdFranquicias','inner');
      $this->db->where('Franquicias_IdFranquicias', $id);
      $this->db->like('NombreUsuario', $query);
      $query=$this->db->get('Usuarios');
      if($query->num_rows()>0){
         return $query;

      }else{
         return FALSE;
      }

   }


   //Consulta que hace la actualización del usuario seleccionado
   function editarenlace ($IdUsuarios, $data)
   {
      $this->db->where('IdUsuarios', $IdUsuarios);
      $this->db->update('Usuarios', $data);
      $res=$this->db->affected_rows();
      //Valida que se haya hecho la consulta
      if($res==1){
        //Muestra una alerta de que los datos se guardarón correctamente
        // echo "<script>alert('Datos guardados correctamente');</script>";
        //   redirect('usuarios/Administrador/usuariosA','refresh');
           echo "<script>alert('Datos guardados correctamente');
                 window.location.href='".base_url()."usuarios/Administrador/usuariosA';
                 </script>";
      }else if($res==0){
        //Muestra una alerta de que los datos no se guardarón correctamente
        // echo "<script>alert('No se hizo ningun cambio');</script>";
        //   redirect(base_url()."usuarios/Administrador/usuariosA/editar/$IdUsuarios",'refresh');
           echo "<script>alert('No se hizo ningun cambio');
                 window.location.href='".base_url()."usuarios/Administrador/usuariosA/editar/$IdUsuarios';
                 </script>";

      }else {
         // echo "<script>alert('Los datos no se pudierón ser guardados correctamente');</script>";
         //  redirect(base_url()."usuarios/Administrador/usuariosA/editar/$IdUsuarios",'refresh');
           echo "<script>alert('Los datos no se pudierón ser guardados correctamente');
                 window.location.href='".base_url()."usuarios/Administrador/usuariosA/editar/$IdUsuarios';
                 </script>";

      }
   }
  
   //Consulta que hace la busqueda del usuario 
    function buscar($query) {  
    $this->db->join('franquicias','Franquicias_IdFranquicias = IdFranquicias','inner');

    $this->db->join('rol','Rol_IdRol = IdRol','inner');
    $this->db->like('NombreUsuario', $query);
    $query = $this->db->get('usuarios');
    //Valida que se haya hecho la consulta
    if ($query->num_rows() > 0){
      return $query;
    }else{
      // echo "<script>alert('No se encontrarón los datos solicitados');</script>";
      // redirect(base_url().'usuarios/Administrador/usuariosA','refresh');
       echo "<script>alert('No se encontrarón los datos solicitados');
                 window.location.href='".base_url()."usuarios/Administrador/usuariosA';
                 </script>";
    }
  }
    //Consulta que hace la busqueda del usuario dependiendo la franquicia
    public function buscarporfranquicia($query) {
    $this->db->where('Franquicias_IdFranquicias', $query);
     //Valida que se haya hecho la consulta
    $query = $this->db->get('usuarios');
    if ($query->num_rows() > 0){
      return $query;
    }else{
      //  echo "<script>alert('No se encontrarón los datos solicitados');</script>";
      // redirect(base_url().'usuarios/Administrador/usuariosA','refresh');
        echo "<script>alert('No se encontrarón los datos solicitados');
                 window.location.href='".base_url()."usuarios/Administrador/usuariosA';
                 </script>";
    }
  }
    //Consulta que muestra los roles
    public function BuscarRol(){
     $query = $this->db-> query('SELECT IdRol,NombreRol FROM rol WHERE IdRol=2 or IdRol=3'); 
       if ($query->num_rows() > 0) { 
        foreach($query->result() as $row) 
         $arrDatos[htmlspecialchars($row->IdRol, ENT_QUOTES)] = htmlspecialchars($row->NombreRol, ENT_QUOTES); 
            $query->free_result(); 
            return $arrDatos; }
         }
  //Consulta que muestra las franqucias registradas
   public function BuscarFranquicia(){
     $query = $this->db-> query('SELECT IdFranquicias,NombreFranquicia FROM franquicias '); 
       if ($query->num_rows() > 0) { 
        foreach($query->result() as $row) 
         $arrDatos[htmlspecialchars($row->IdFranquicias, ENT_QUOTES)] = htmlspecialchars($row->NombreFranquicia, ENT_QUOTES); 
            $query->free_result(); 
            return $arrDatos; }
         }
  //Consulta que muestra las franqucias registradas   
  public function BuscarFranq(){
     $query = $this->db-> query('SELECT IdFranquicias,NombreFranquicia FROM franquicias ORDER BY NombreFranquicia ASC'); 
       if ($query->num_rows() > 0) { 
        foreach($query->result() as $row) 
         $arrDatos[htmlspecialchars($row->IdFranquicias, ENT_QUOTES)] = htmlspecialchars($row->NombreFranquicia, ENT_QUOTES); 
            $query->free_result(); 
            return $arrDatos; }
         }

  


  
}