<?php 
require_once('../modelos/Cliente.php');

$cliente=new Cliente();

$idpersona=isset($_POST["idpersona"])? limpiarCadena($_POST["idpersona"]):"";
$nombre=isset($_POST["nombre"])? limpiarCadena($_POST["nombre"]):"";
$nombre_nicho=isset($_POST["nombre_nicho"])? limpiarCadena($_POST["nombre_nicho"]):"";
$idtipo_documento=isset($_POST["idtipo_documento"])? limpiarCadena($_POST["idtipo_documento"]):"";
$num_documento=isset($_POST["num_documento"])? limpiarCadena($_POST["num_documento"]):"";
$numero_celular=isset($_POST["numero_celular"])? limpiarCadena($_POST["numero_celular"]):"";
$direccion=isset($_POST["direccion"])? limpiarCadena($_POST["direccion"]):"";
$estado=isset($_POST["estado"])? limpiarCadena($_POST["estado"]):"";

switch ($_GET["op"])
{
    case 'guardaryeditar':
      if(empty($idpersona))
      {
        $rspta=$cliente->insertar($nombre,$nombre_nicho,$idtipo_documento,$num_documento,$direccion,$numero_celular,$estado);
        echo $rspta ? "Cliente Registrado" : "Cliente no se pudo registrar";
      }
      else {
        {
          $rspta=$cliente->editar($idpersona,$nombre,$nombre_nicho,$idtipo_documento,$num_documento,$direccion,$numero_celular,$estado);
          echo $rspta ? "Cliente Actualizada" : "Cliente no se pudo actualizar";
        }
      }
    break;

    case 'guardaryeditarEmpleado':
      if(empty($idpersona))
      {
        $rspta=$cliente->insertarEmpleado($nombre,$idtipo_documento,$num_documento,$direccion,$numero_celular,$estado);
        echo $rspta ? "Empleado Registrado" : "Empleado no se pudo registrar";
      }
      else {
        {
          $rspta=$cliente->editarEmpleado($idpersona,$nombre,$idtipo_documento,$num_documento,$direccion,$numero_celular,$estado);
          echo $rspta ? "Empleado Actualizada" : "Empleado no se pudo actualizar";
        }
      }
    break;


    case 'guardarCliente':
      
        $rspta=$cliente->insertar_cliente($nombre,$nombre_nicho,$idtipo_documento,$num_documento,$direccion,$numero_celular);
        echo $rspta ? "Cliente Registrado" : "Cliente no se pudo registrar";
     
    break;

    case 'mostrar':
      $rspta=$cliente->mostrar($idpersona);
       //Codificar el resultado utilizando json
       echo json_encode($rspta);
    break;

    case 'eliminar':
      $rspta=$cliente->eliminar($idpersona);
       //Codificar el resultado utilizando json
       echo json_encode($rspta);
    break;

    case 'listarcliente':
      $rspta=$cliente->listarcliente();
      //Vamos a declarar un array
      $data=Array();
      while($reg=$rspta->fetch_object())
      {
        $estado = ($reg->estado == 1) 
            ? '<button class="btn btn-success btn-xs btn-flat">Activa</button>' 
            : '<button class="btn btn-danger btn-xs btn-flat">Inactiva</button>';

        $data[]=array(
          "0"=>$reg->idpersona,
          "1"=>$reg->nombre,
          "2" => (!empty($reg->nombre_nicho) && $reg->nombre_nicho !== "0") ? $reg->nombre_nicho : "-",
          "3"=>$reg->nombredocumento,
          "4"=>$reg->num_documento,
          "5"=>$reg->celular,
          "6"=>$reg->direccion,
          "7"=>$estado,
          "8"=>'<a href="create.php?idpersona=' . $reg->idpersona . '" class="btn btn-warning btn-xs btn-flat"><i class="fa fa-edit"></i></a>' .
          ' <button class="btn btn-danger btn-xs btn-flat" onclick="eliminar(' . $reg->idpersona . ')"><i class="fas fa-trash-alt"></i></button>'
        );
      }
      $results= array(
        "sEcho"=>1, //Informacion para el datatable
        "iTotalRecords"=>count($data),//Enviamos el total de registtros en el datatable
        "iTotalDisplayRecords"=>count($data),//enviamos el total de registros a visualizar
        "aaData"=>$data);
      echo json_encode($results);

    break;

    case 'listarEmpleado':
      $rspta=$cliente->listarEmpleado();
      //Vamos a declarar un array
      $data=Array();
      while($reg=$rspta->fetch_object())
      {
        $estado = ($reg->estado == 1) 
            ? '<button class="btn btn-success btn-xs btn-flat">Activa</button>' 
            : '<button class="btn btn-danger btn-xs btn-flat">Inactiva</button>';

        $data[]=array(
          "0"=>$reg->idpersona,
          "1"=>$reg->nombre,
          "2"=>$reg->nombredocumento,
          "3"=>$reg->num_documento,
          "4"=>$reg->celular,
          "5"=>$reg->direccion,
          "6"=>$estado,
          "7"=>'<a href="create.php?idpersona=' . $reg->idpersona . '" class="btn btn-warning btn-xs btn-flat"><i class="fa fa-edit"></i></a>' 
          
        );
      }
      $results= array(
        "sEcho"=>1, //Informacion para el datatable
        "iTotalRecords"=>count($data),//Enviamos el total de registtros en el datatable
        "iTotalDisplayRecords"=>count($data),//enviamos el total de registros a visualizar
        "aaData"=>$data);
      echo json_encode($results);

    break;


    case 'selectTipoDocumento': 
      $rspta = $cliente->selectTipoDocumento();
      if ($rspta) {
          while ($reg = $rspta->fetch_object()) {
              echo "<option value='" . htmlspecialchars($reg->idtipo_documento, ENT_QUOTES, 'UTF-8') . "'>" . htmlspecialchars($reg->nombre, ENT_QUOTES, 'UTF-8') . "</option>";
          }
      } else {
          echo "<option value=''>No hay documentos disponibles</option>";
      }
      break;


        case 'selectCliente':
          $rspta = $cliente->selectCliente();
          if ($rspta) {
            while ($reg = $rspta->fetch_object()) {
                //echo "<option value='" . htmlspecialchars($reg->idpersona, ENT_QUOTES, 'UTF-8') . "'>" . htmlspecialchars($reg->nombre, ENT_QUOTES, 'UTF-8') . "</option>";
                echo "<option value='" . htmlspecialchars($reg->idpersona, ENT_QUOTES, 'UTF-8') . "'>" . htmlspecialchars($reg->nombre, ENT_QUOTES, 'UTF-8') . " </option>";
            }
        } else {
            echo "<option value=''>No hay cliente disponibles</option>";
        }
        break;

        case 'selectEmpleado':
          $rspta = $cliente->selectEmpleado();
          if ($rspta) {
            while ($reg = $rspta->fetch_object()) {
                //echo "<option value='" . htmlspecialchars($reg->idpersona, ENT_QUOTES, 'UTF-8') . "'>" . htmlspecialchars($reg->nombre, ENT_QUOTES, 'UTF-8') . "</option>";
                echo "<option value='" . htmlspecialchars($reg->idpersona, ENT_QUOTES, 'UTF-8') . "'>" . htmlspecialchars($reg->nombre, ENT_QUOTES, 'UTF-8') . " </option>";
            }
        } else {
            echo "<option value=''>No hay empleado disponibles</option>";
        }
        break;
      

         case 'consultarDNI':
          $dni = isset($_POST['dni']) ? trim($_POST['dni']) : '';
           $resultado = $cliente->consultarDNI($dni);

        if ($resultado) {
            echo json_encode([
                'existe' => true,
                'idpersona' => $resultado['idpersona'],
                'nombre' => $resultado['nombre'],
                'numero_documento' => $resultado['numero_documento'],
                'idtipo_documento' => $resultado['idtipo_documento'],
                'direccion' => $resultado['direccion'],
                'iddepartamento' => $resultado['iddepartamento'],
                'idprovincia' => $resultado['idprovincia'],
                'iddistrito' => $resultado['iddistrito'],
                'email' => $resultado['email'],
                'numero_celular' => $resultado['numero_celular']

            ]);
        } else {
            echo json_encode([
                'existe' => false
            ]);
        }
        break;

      
}
?>