Current File : /var/www/pharmacius/controller/productos_controller.php |
<?php
session_start();
require_once("model/productos_model.php");
$productoModel = new Productos_model();
// Acción principal: mostrar productos
function home()
{
global $productoModel;
// Obtener todos los productos
$productos = $productoModel->get_productos();
// Filtrar si hay búsqueda
if (isset($_GET['search']) && !empty(trim($_GET['search']))) {
$searchTerm = strtolower(trim($_GET['search']));
$searchType = $_GET['search_type'] ?? 'producto';
$productos = array_filter($productos, function ($item) use ($searchTerm, $searchType) {
switch ($searchType) {
case 'producto':
return (string)$item['IDProducto'] === $searchTerm;
case 'marca':
return isset($item['NombreMarca']) && stripos(strtolower($item['NombreMarca']), $searchTerm) !== false;
case 'categoria':
return isset($item['categorias']) && stripos(strtolower($item['categorias']), $searchTerm) !== false;
case 'referencia':
return isset($item['Referencia']) && strtolower($item['Referencia']) === $searchTerm;
default:
return false;
}
});
}
require("view/productos_view.php");
}
// Acción para eliminar producto
function eliminar()
{
global $productoModel;
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST["IDProducto"])) {
$idProducto = $_POST["IDProducto"];
if ($productoModel->eliminar_producto($idProducto)) {
$_SESSION['message'] = "Producto borrado correctamente";
} else {
$_SESSION['message'] = "Error al borrar el producto";
}
} else {
$_SESSION['message'] = "Solicitud de eliminación inválida";
}
header("Location: index.php?controlador=productos&action=home");
exit();
}