<?php   
require("../../modelos/Administrador/Usuario.class.php");

$usuario = new Usuario; //Creamos nuestro objeto

//======================================================================================================//
    //Definicion de todas las variables
    $op = isset($_GET["op"]) ? limpiarCadena($_GET["op"]) : "";// $_GET
    $usuarios = isset($_POST["usuario"]) ? limpiarNumero(limpiarCadena($_POST["usuario"])) : "";
    $nombre = isset($_POST["nombre"]) ? limpiarCadena($_POST["nombre"]) : "";
    $apellido = isset($_POST["apellido"]) ? limpiarCadena($_POST["apellido"]) : "";
    $correo = isset($_POST["correo"]) ? limpiarCadena($_POST["correo"]) : "";
    $telefono = isset($_POST["telefono"]) ? limpiarCadena($_POST["telefono"]) : ""; 
    $tipo_usuario = isset($_POST["tipo_usuario"]) ? limpiarCadena($_POST["tipo_usuario"]) : "";
    $status = isset($_POST["status"]) ? limpiarCadena($_POST["status"]) : "";
        $login = isset($_POST["login"]) ? limpiarCadena($_POST["login"]) : "";
//=====================================================================================//
    

$password = isset($_POST["password"]) ? limpiarCadena($_POST["password"]) : "";
$passwordMD5 = !empty($password) ? md5($password) : "";

    //Recibir clave y Encriptarla (caso: cambio de clave)
    $password_act = isset($_POST["clave_actual"]) ? limpiarCadena($_POST["clave_actual"]) : "";
    $password_actual = md5($password_act);//encriptar con md5


    $id_usuario = isset($_POST["id_usuario"]) ? limpiarCadena($_POST["id_usuario"]) : "";
//======================================================================================================//

switch ($op){

 case 'validarUsuario':
    $rspta=$usuario->validarUsuario($usuarios);

   if ($rspta == "existe_usuario") {
        echo "existe usuario";
    } 

    if ($rspta == "no_existe_usuario") {
        echo "no existe usuario";
    }

    break;

    case 'buscar':
    $rspta=$usuario->listar();

    $data = [];
    while ($row = $rspta->fetch_assoc()) {
       $data[] = [
    "0" => $row['usuario'],
    "1" => $row['nombre'],
    "2" => $row['apellido'],
    "3" => $row['correo'],
    "4" => $row['telefono'],
    "5" => $row['tipo_usuario'],
    "6" => ($row['status'] != 0 ? '<span class="right badge badge-success" align="center">Activo</span>' : '<span class="right badge badge-danger" align="center">Inactivo</span>'),
    "7" => '
        <div class="text-center">
            <button class="btn btn-primary btn-custom" onclick="mostrar('.$row['id'].')"><i class="fa fa-edit"></i></button>' . 
            ($row['status'] != 0 ? '<button class="btn btn-danger btn-custom" onclick="eliminar('.$row['id'].')"><i class="fa fa-trash"></i></button>' : '') . 
        '</div>',
];

    }
    $results = [
        "sEcho" => 1,
        "iTotalRecords" => count($data),
        "iTotalDisplayRecords" => count($data),
        "aaData" => $data
    ];

    echo json_encode($results);//Retornar el resultado utilizando json
    break;
    
case 'guardaryeditar':
if (empty($id_usuario)){
        $rspta=$usuario->guardar($usuarios,$nombre, $apellido, $correo, $passwordMD5, $telefono, $tipo_usuario);
        echo $rspta ? "Registro exitoso" : "No se pudo registrar";
    }else{
        //echo $passwordR; exit;
        $rspta=$usuario->editar($id_usuario,$usuarios,$nombre, $apellido, $correo, $passwordMD5, $telefono, $tipo_usuario,$status);
        echo $rspta ? "Registro actualizado" : "No se pudo actualizar";
    }
    break;

 case 'mostrar':
        $rspta=$usuario->mostrar($id_usuario);
        echo json_encode($rspta);//Retornar el resultado utilizando json
    break;

 case 'eliminar':
        $rspta=$usuario->eliminar($id_usuario);
        echo $rspta ? "Registro eliminado" : "No se pudo eliminar";
    break;

case 'cambio_clave':
     $rspta=$usuario->cambio_clave($id_usuario,$login, $password_actual, $passwordMD5);
        echo $rspta;
    break; 


}// FIN switch
?>