<?php
//En este modelo se encuentran todas las consultas realizadas en la tabla de productosgenerales(Administrador general)
class ProductoPublicoA_model extends CI_Model { 
   public function __construct() {
      parent::__construct();
   }

   //Cosulta que hace el registros de productos al público en la base de datos
   public function guardar($parametro){
      $campos=array(
         'IdProductosGenerales' => $parametro['IdProductosGenerales'],
         'NombreProducto' => $parametro['NombreProducto'],
         'TipoProducto_IdTipoProducto' => $parametro['TipoProducto_IdTipoProducto'],
         'Categoria_IdCategoria' => $parametro['Categoria_IdCategoria'],
         'StockMinimo' => $parametro['StockMinimo'],
         'PrecioVenta' => $parametro['PrecioVenta'],
         'PrecioCompra' => $parametro['PrecioCompra'],
         'DescripcionProducto' => $parametro['DescripcionProducto']
      );
      $this->db->insert('productosgenerales',$campos);
      $res=$this->db->affected_rows();
      //Verifica que la consulta se realizo 
      if($res==1){
         //Muestra una alerta cuando no se realizo
         // echo "<script>alert('Datos guardados correctamente');</script>";
         // redirect('productos/Administrador/productoPublico','refresh');
         echo "<script>alert('Datos guardados correctamente');
                 window.location.href='".base_url()."productos/Administrador/productoPublico';
                 </script>";
      }else{
        //Verifica que la consulta se realizo 
      //   echo "<script>alert('Los datos no pudierón ser guardados correctamente');</script>";
      // redirect('productos/Administrador/productoPublico','refresh');
      echo "<script>alert('Los datos no pudierón ser guardados correctamente');
                 window.location.href='".base_url()."productos/Administrador/productoPublico';
                 </script>";
    }
  
   }

    //Consulta que elimina los productos 
   public function eliminar ($id){
      
      $this->db->where('IdProductosGenerales', $id);
      $this->db->delete('productosgenerales');
      $res=$this->db->affected_rows();
      if($res>0){
        //Muestra una alerta cuando se realizo
      // echo "<script>alert('Los datos se han eliminado correctamente');</script>";
      // redirect('productos/Administrador/productoPublico','refresh');
      echo "<script>alert('Los datos se han eliminado correctamente');
                 window.location.href='".base_url()."productos/Administrador/productoPublico';
                 </script>";

      }else{
        //Muestra una alerta cuando no se realizo
      // echo "<script>alert('Error, no se pudierón eliminar los datos debido a que se estan usuando en otras tablas');</script>";
      // redirect('productos/Administrador/productoPublico','refresh');
       echo "<script>alert('Error, no se pudierón eliminar los datos debido a que se estan usuando en otras tablas');
                 window.location.href='".base_url()."productos/Administrador/productoPublico';
                 </script>";
      }
   }

    //Consulta que hace la busqueda del producto seleccionado 
    public function obtenerenlace ($id){
      $this->db->where('IdProductosGenerales', $id);
      $query=$this->db->get('productosgenerales');
      if($query->num_rows()>0){
         return $query;

      }else{
         return FALSE;
      }

   }

    //Consulta que hace la actualización del producto seleccionado
    function editarenlace ($IdProductosGenerales, $data)
   {
      $this->db->where('IdProductosGenerales', $IdProductosGenerales);
      $this->db->update('productosgenerales', $data);
        $res=$this->db->affected_rows();
       //Verifica que la consulta se realizo
      if($res==1){
        //Muestra una alerta cuando se realizo
        // echo "<script>alert('Datos guardados correctamente');</script>";
        // redirect('productos/Administrador/productoPublico','refresh');
         echo "<script>alert('Datos guardados correctamente');
                 window.location.href='".base_url()."productos/Administrador/productoPublico';
                 </script>";
      }else if($res==-1){
        //Muestra una alerta cuando no se realizo
       //  echo "<script>alert('Los datos no pudierón ser guardados correctamente');</script>";
       // redirect("productos/Administrador/productoPublico/editar/$IdProductosGenerales",'refresh');
        echo "<script>alert('Los datos no pudierón ser guardados correctamente');
                 window.location.href='".base_url()."productos/Administrador/productoPublico/editar/$IdProductosGenerales';
                 </script>";
      }else {
        // echo "<script>alert('No se hizo nungun cambio');</script>";
        //  redirect('productos/Administrador/productoPublico','refresh');
          echo "<script>alert('No se hizo nungun cambio');
                 window.location.href='".base_url()."productos/Administrador/productoPublico';
                 </script>";
      }
   }

  //Consulta que hace la busqueda de los productos
   function buscar($query) {
   $this->db->SELECT('*');
    $this->db->FROM('productosgenerales');
    $this->db->WHERE('TipoProducto_IdTipoProducto','2');
    $this->db->like('NombreProducto', $query);
    $query=$this->db->get();
    if ($query->num_rows() > 0){
      return $query;
    }else{
      // echo "<script>alert('No se encontrarón los datos solicitados');</script>";
      //   redirect('productos/Administrador/productoPublico','refresh');
      echo "<script>alert('No se encontrarón los datos solicitados');
                 window.location.href='".base_url()."productos/Administrador/productoPublico';
                 </script>";
    }
  }

    //Consulta que hace la busqueda de todos los productos de tipo público
    function mostrar($query) {
    $query=$this->db->query('SELECT * FROM productosgenerales WHERE TipoProducto_IdTipoProducto=2');
    if ($query->num_rows() > 0){
      return $query;
    }else{
      return FALSE;
    }
  }

    //Consulta que hace la busqueda de ls tipos de productos
    public function BuscarTipo(){
     $query = $this->db-> query('SELECT IdTipoProducto,NombreTipoProducto FROM tipoproducto WHERE IdTipoProducto = 2'); 
       if ($query->num_rows() > 0) { 
        foreach($query->result() as $row) 
         $arrDatos[htmlspecialchars($row->IdTipoProducto, ENT_QUOTES)] = htmlspecialchars($row->NombreTipoProducto, ENT_QUOTES); 
            $query->free_result(); 
            return $arrDatos; }
         }


  //Consulta que hace la busqueda de la categoría de los productos 
  public function BuscarCategoria(){
     $query = $this->db-> query('SELECT IdCategoria,NombreCategoria FROM categoria'); 
       if ($query->num_rows() > 0) { 
        foreach($query->result() as $row) 
         $arrDatos[htmlspecialchars($row->IdCategoria, ENT_QUOTES)] = htmlspecialchars($row->NombreCategoria, ENT_QUOTES); 
            $query->free_result(); 
            return $arrDatos; }
         }
}
