<?php
header("Content-Type: text/html;charset=utf-8");
if (session_status() === PHP_SESSION_NONE) {
    session_start();
}

require_once("../data/Conexion.php");
require_once("../data/Tablas.php");
require_once("../clases/cls_unidad_medida.php");

if (isset($_POST["accion"])){
    if ($_POST["accion"] == "lista"){
		$respuestas = array("estado"=>"error", "mensaje"=>"", "datos"=>array());
		if (isset($_POST["buscar"])){
			$items_pagina = 0;
			$items_cantidad = 0;
			$buscar = $_POST["buscar"];
			$ordendireccion = "ASC";
			if (isset($_POST["orden"])){
				$ordendireccion = $_POST["orden"];
			}
			if (isset($_POST["items_pagina"])){
				$items_pagina = $_POST["items_pagina"];
			}
			if (isset($_POST["items_cantidad"])){
				$items_cantidad = $_POST["items_cantidad"];
			}
			$datos = cls_Group_Unidad_Medida::Buscar($buscar, $ordendireccion);
			$datos->cargar_datos($items_pagina, $items_cantidad);
			$lista = array();
			for ($idx=0; $idx<$datos->get_cantidad_cargados(); $idx++){
				array_push($lista, array(
					"unidad_medida_id"=>$datos->get_unidad_medida_id($idx),
					"nombre"=>$datos->get_nombre($idx),
					"simbolo"=>$datos->get_simbolo($idx),
				));
			}
			$respuestas["datos"] = $lista;
			$respuestas["estado"]  = "ok";
			$respuestas["mensaje"]  = "Los datos se cargaron correctamente";
		} else {
			$respuestas["mensaje"]  = "Ocurrió un error recibiendo los datos.";
		}
		echo(json_encode($respuestas));
	} else if ($_POST["accion"] == "datos"){
		$respuestas = array("estado"=>"error", "mensaje"=>"", "datos"=>array());
		if (isset($_POST["buscar"])){
			$codigo = $_POST["buscar"];
			$datos = cls_Unidad_Medida::Indice($codigo);
			$respuestas["datos"] = array(
					"unidad_medida_id"=>$datos->get_unidad_medida_id(),
					"nombre"=>$datos->get_nombre(),
					"simbolo"=>$datos->get_simbolo(),
			);
			$respuestas["estado"]  = "ok";
			$respuestas["mensaje"]  = "Los datos se cargaron correctamente";
		} else {
			$respuestas["mensaje"]  = "Ocurrió un error recibiendo los datos.";
		}
		echo(json_encode($respuestas));
    } else if ($_POST["accion"] == "registrar"){
		$respuestas = array("estado"=>"error", "mensaje"=>"", "codigo"=>0);
		$usuario_editor = 0;
		$codigo = 0;
		$activo = true;
		if (isset($_SESSION["usuario_editor"])){
			$usuario_editor = $_SESSION["usuario_editor"];
		}
		if (isset($_POST["txt_codigo"])){
			$codigo = $_POST["txt_codigo"];
		}
		if (isset($_POST["activo"])){
			$activo = $_POST["activo"];
		}
		$simbolo = $_POST["txt_unid_simbolo"];
		$nombre = $_POST["txt_unid_nombre"];
		$registrar = true;
		$datos = cls_Unidad_Medida::Indice($codigo);
		if ($registrar === true){
			$datos->set_simbolo($simbolo);
			$datos->set_nombre($nombre);
			$datos->set_activo($activo);
			if ($datos->registrar($usuario_editor)){
				$respuestas["codigo"] = $datos->get_unidad_medida_id();
				$respuestas["estado"]  = "ok";
				$respuestas["mensaje"]  = "Los datos se cargaron correctamente";
			} else {
				$respuestas["mensaje"]  = "Ocurrió un error registrando los datos.";
			}
		}
		echo(json_encode($respuestas));
    } else if ($_POST["accion"] == "eliminar"){
		$respuestas = array("estado"=>"error", "mensaje"=>"");
		if (isset($_POST["buscar"])){
			$usuario_editor = 0;
			if (isset($_SESSION["usuario_editor"])){
				$usuario_editor = $_SESSION["usuario_editor"];
			}
			$codigo = $_POST["buscar"];
			$datos = cls_Group_Unidad_Medida::Indice($codigo);
			if ($datos->eliminar($usuario_editor)){
				$respuestas["estado"]  = "ok";
				$respuestas["mensaje"]  = "Los datos se eliminaron correctamente";
			} else {
				$respuestas["mensaje"]  = "No se pudo eliminar los datos correctamente";
			}
		} else {
			$respuestas["mensaje"]  = "Ocurrió un error recibiendo los datos.";
		}
		echo(json_encode($respuestas));
	}
}
?>
