config base del proyecto

This commit is contained in:
Brisa
2026-06-30 14:56:33 -03:00
commit e1233c76cc
3 changed files with 117 additions and 0 deletions
+101
View File
@@ -0,0 +1,101 @@
<?php
// Incluimos las credenciales desde el archivo local excluido
if (!file_exists(__DIR__ . '/config.php')) {
die("Error crítico: No se encontró el archivo 'config.php'. Duplicá 'config.example.php', renombralo a 'config.php' y configurá tus credenciales.");
}
include(__DIR__ . '/config.php');
// ─── Configuración general del sistema ───────────
define('NOMBRE_SISTEMA', 'La Pecosa');
define('TIMEZONE', 'America/Argentina/Buenos_Aires');
define('EMAIL_ADMIN', 'admin@lapecosa.com');
if (session_status() === PHP_SESSION_NONE) {
session_start();
}
if (!isset($_SESSION['carrito'])) {
$_SESSION['carrito'] = [];
}
//Creamos la conexión
$conexion = mysqli_connect(DB_HOST, DB_USUARIO, DB_PASSWORD, DB_NOMBRE);
//Verificamos si la conexión falló
if (!$conexion) {
die("Error al conectar con la base de datos: " . mysqli_connect_error());
}
//Configuramos tildes y eñes
mysqli_set_charset($conexion, "utf8mb4");
//Logs del sistema
function escribir_log($mensaje) {
date_default_timezone_set(TIMEZONE);
$carpeta = __DIR__ . '/logs-sistema-lapecosa';
if (!file_exists($carpeta)) {
mkdir($carpeta, 0777, true);
}
$archivo = $carpeta . "/registro_actividad_" . date("Y-m-d") . ".log";
$fecha_hora = date("d-m-Y H:i:s");
$ip = $_SERVER['REMOTE_ADDR'];
$texto = "[$fecha_hora] [IP: $ip] - $mensaje" . PHP_EOL;
file_put_contents($archivo, $texto, FILE_APPEND);
}
function es_horario_comercial($conexion) {
// 1. REGLA MANUAL: Verificar si el administrador lo cerró a la fuerza
$query = mysqli_query($conexion, "SELECT valor FROM ajustes WHERE clave = 'estado_manual'");
// CONTROL DE SEGURIDAD: Si la consulta falla (devuelve false), evitamos el Fatal Error
if (!$query) {
die("Error en la consulta de ajustes: " . mysqli_error($conexion));
}
$resultado = mysqli_fetch_assoc($query);
if ($resultado && $resultado['valor'] === 'cerrado') {
return "manual_cerrado"; // Cerrado de forma manual desde el panel
}
// 2. CONFIGURACIÓN DE REGION
date_default_timezone_set('America/Argentina/Buenos_Aires');
$dia_semana = date('N'); // 1 (Lunes) a 7 (Domingo)
$hora_actual = date('H:i');
// 3. REGLA AUTOMÁTICA: DOMINGOS (09:00 a 13:00)
if ($dia_semana == 7) {
$apertura_dom = "09:00";
$cierre_dom = "13:00";
if ($hora_actual >= $apertura_dom && $hora_actual <= $cierre_dom) {
return "abierto";
}
return "hora_cerrado";
}
// 4. REGLA AUTOMÁTICA: LUNES A SÁBADOS (Horario Partido)
// Turno Mañana: 08:30 a 13:30
$manana_apertura = "08:30";
$manana_cierre = "13:30";
// Turno Tarde/Noche: 17:30 a 21:00
$tarde_apertura = "17:30";
$tarde_cierre = "21:00";
// Validamos si la hora actual cae en el rango de la mañana O en el rango de la tarde
$esta_en_manana = ($hora_actual >= $manana_apertura && $hora_actual <= $manana_cierre);
$esta_en_tarde = ($hora_actual >= $tarde_apertura && $hora_actual <= $tarde_cierre);
if ($esta_en_manana || $esta_en_tarde) {
return "abierto"; // ¡El local está operativo!
}
return "hora_cerrado"; // Estamos en el bache de la siesta o ya cerró a la noche
}
?>