feat: Botón Guardar Todo en conceptos y mejoras Docker

Cambios realizados:
- concept_view.php: Agregado botón 'Guardar Todo' arriba y abajo de la tabla, eliminado botón individual por fila
- dashboard.php: Agregado endpoint save_all_concept_payments para guardar múltiples pagos
- docker-entrypoint.sh: Corregidos permisos de volúmenes para ZimaOS/CasaOS (cambia dueño a www-data)
- docker/Dockerfile: Corregida ruta del entrypoint
- build-and-push.sh: Script interactivo para crear imagen Docker con opción de caché/sin caché

Los cambios permiten guardar todos los pagos de conceptos de una sola vez y mejoran la compatibilidad con despliegues en ZimaOS.
This commit is contained in:
2026-02-13 23:09:45 -06:00
parent 8f2f04951f
commit 23b527d3f5
27 changed files with 1517 additions and 19 deletions

65
docker/docker-entrypoint.sh Executable file
View File

@@ -0,0 +1,65 @@
#!/bin/bash
# Script de entrada para Docker
set -e
# Función para crear archivo .env desde variables de entorno
create_env_file() {
if [ ! -f /var/www/html/ibiza/.env ] || [ ! -s /var/www/html/ibiza/.env ]; then
echo "Creando archivo .env desde variables de entorno..."
cat > /var/www/html/ibiza/.env << EOF
# Entorno de aplicación
APP_ENV=${APP_ENV:-local}
SITE_URL=${SITE_URL:-http://localhost}
# Base de datos
DB_HOST=${DB_HOST:-localhost}
DB_PORT=${DB_PORT:-3306}
DB_USER=${DB_USER:-root}
DB_PASS=${DB_PASS:-}
DB_NAME=${DB_NAME:-ibiza_db}
# Base de datos local/desarrollo
LOCAL_DB_HOST=${DB_HOST:-localhost}
LOCAL_DB_PORT=${DB_PORT:-3306}
LOCAL_DB_USER=${DB_USER:-root}
LOCAL_DB_PASS=${DB_PASS:-}
LOCAL_DB_NAME=${DB_NAME:-ibiza_db}
# Base de datos de producción
SERVER_DB_HOST=${DB_HOST:-localhost}
SERVER_DB_PORT=${DB_PORT:-3306}
SERVER_DB_USER=${DB_USER:-root}
SERVER_DB_PASS=${DB_PASS:-}
SERVER_DB_NAME=${DB_NAME:-ibiza_db}
# Configuración de sesión
SESSION_TIMEOUT=${SESSION_TIMEOUT:-28800}
JWT_SECRET=${JWT_SECRET:-ibiza_jwt_secret_key_CHANGE_IN_PRODUCTION_2025!@#}
JWT_EXPIRATION=${JWT_EXPIRATION:-86400}
EOF
echo "Archivo .env creado exitosamente"
chown www-data:www-data /var/www/html/ibiza/.env
fi
}
# Crear archivo .env si no existe
create_env_file
# Corregir permisos de volúmenes montados (importante para ZimaOS/CasaOS)
echo "Corrigiendo permisos de volúmenes montados..."
chown -R www-data:www-data /var/www/html/ibiza || true
chmod -R 755 /var/www/html/ibiza || true
chmod -R 777 /var/www/html/ibiza/uploads 2>/dev/null || true
chmod 777 /var/www/html/ibiza/.env 2>/dev/null || true
# Configurar Apache para correr como www-data
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
echo "Permisos corregidos. Iniciando Apache..."
# Iniciar Apache en primer plano
exec /usr/sbin/apache2ctl -D FOREGROUND