<?php
require_once "../vendor/autoload.php";

use Controladores\ControladorProductos;

class AjaxProductos
{


    public function ajaxCrearProducto()
    {

        $productos = $_POST;
        $file = $_FILES;
        $respuesta = ControladorProductos::ctrCrearProducto($productos, $file);
        // var_dump($file);
        echo $respuesta;
    }

    public function ajaxCrearCodigoProducto()
    {

        $item = "id_categoria";
        $valor = $this->idCategoria;
        $respuesta = ControladorProductos::ctrMostrarProductos($item, $valor);

        echo json_encode($respuesta);
    }
    // EDITAR PRODUCTO Y SELECCIONAR PRODUCTO
    public $idProducto;
    public function ajaxAgregarProducto()
    {

        $item = "id";
        $valor = $this->idProducto;
        $respuesta = ControladorProductos::ctrMostrarProductos($item, $valor);
        echo json_encode($respuesta);
    }
    //GENERAR CÓDIGO BARRA
    public function ajaxGenerarCodigoBarra($cantidad, $longitud, $incluyeNum=true) {
    {
        $caracteres = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; 
        if($incluyeNum) 
            $caracteres .= "1234567890"; 
         
        $arrPassResult=array(); 
        $index=0; 
        while($index<$cantidad){ 
            $tmp=""; 
            for($i=0;$i<$longitud;$i++){ 
                $tmp.=$caracteres[rand(0,strlen($caracteres)-1)]; 
            } 
            if(!in_array($tmp, $arrPassResult)){ 
                $arrPassResult[]=$tmp; 
                $index++; 
            } 
        } 
        echo $tmp; 
    }
}
    // SELECCIONAR PRODUCTO CODIGO BARRA
    public function ajaxATraerProducto()
    {

        $item = "codigo";
        $valor = trim($_POST['codigobarra']);
        $respuesta = ControladorProductos::ctrMostrarProductos($item, $valor);

        echo json_encode($respuesta);
    }
    //  ELIMINAR PRODUCTO BETA
    public $idEliminarProducto;
    public $codigo;
    public $imagen;
    public function ajaxEliminarProducto()
    {

        $datosEliminar = array(
            'idProducto' => $this->idEliminarProducto,
            'codigo' => $this->codigo,
            'imagen' => $this->imagen
        );

        $resultado = ControladorProductos::ctrEliminarProducto($datosEliminar);
    }

    public function ajaxActivaDesactivaUnidadMedida()
    {
        $datos = array(
            "id" => $_POST['idUnidad'],
            "modo" => $_POST['modo']
        );
        $resultado = ControladorProductos::ctrActivaDesactivaUnidadMedida($datos);
    }
}
if (isset($_POST['codigobarra'])) {
    $actDesa = new AjaxProductos();
    $actDesa->ajaxATraerProducto();
}
if (isset($_POST['codigobr'])) {
    $actDesa = new AjaxProductos();
    $actDesa->ajaxGenerarCodigoBarra(1,7);
}
if (isset($_POST['nuevaDescripcion'])) {
    $actDesa = new AjaxProductos();
    $actDesa->ajaxCrearProducto();
}
// GENERAR CÓDIGO DESDE LA idCategoria
if (isset($_POST['idCategoria'])) {
    $codigoProducto = new AjaxProductos();
    $codigoProducto->idCategoria = $_POST['idCategoria'];
    $codigoProducto->ajaxCrearCodigoProducto();
}
// EDITAR PRODUCTO
if (isset($_POST['idProducto'])) {
    $editarProducto = new AjaxProductos();
    $editarProducto->idProducto = $_POST['idProducto'];
    $editarProducto->ajaxAgregarProducto();
}
// ELIMINAR PRODUCTO
if (isset($_POST['idEliminarProducto'])) {

    $eliminar = new AjaxProductos();
    $eliminar->idEliminarProducto = $_POST['idEliminarProducto'];
    $eliminar->codigo = $_POST['codigo'];
    $eliminar->imagen = $_POST['imagen'];
    $eliminar->ajaxEliminarProducto();
}
if (isset($_POST['idUnidad'])) {
    $actDesa = new AjaxProductos();
    $actDesa->ajaxActivaDesactivaUnidadMedida();
}
