config base del proyecto
This commit is contained in:
@@ -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
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user