<?php

require_once __DIR__ . '/../models/UsuarioModel.php';


class UsuarioController{
    private static $usuarioModel = null;

    public static function inicializar() {
        if (self::$usuarioModel === null) {
            self::$usuarioModel = new UsuarioModel();
        }
    }

    public static function obtenerUsuarios(){
        return self::$usuarioModel->obtenerUsuarios();
    }

    public static function iniciarSesion($usuario, $contrasena){
        return self::$usuarioModel->iniciarSesion($usuario, $contrasena);
    }

    public static function existeUsuario($usuario){
        $usuario = self::$usuarioModel->buscarUsuario($usuario);
        if ( isset($usuario['usuario']) ) {
            return true;
        } else {
            return false;
        }
    }

    public static function crearUsuario($usuario, $contrasena){
        if ( self::existeUsuario($usuario) ) {
            return [
                'estado' => 'error',
                'mensaje' => 'El usuario ya existe.'
            ];
        } else {
            return self::$usuarioModel->crearUsuario($usuario, $contrasena);
        }
    }

    public static function eliminarUsuario($id_usuario){
        return self::$usuarioModel->eliminarUsuario($id_usuario);
    }

    public static function actualizarUsuario($id, $usuario, $contrasena){
        return self::$usuarioModel->actualizarUsuario($id, $usuario, $contrasena);
    }

}

# Instanciar el modelo al cargar el controlador
UsuarioController::inicializar();

?>