#!/bin/bash

LOG_FILE="/var/www/html/wordpress-manager-v2/logs/permissions_debug.log"
mkdir -p "$(dirname "$LOG_FILE")"
exec > >(tee -a ${LOG_FILE}) 2>&1

echo "--- Ejecución: $(date) ---"
echo "Script: $0 | Proyecto: $1"

PROJECT_NAME="$1"
SITE_BASE="/var/www/html"
SITE="$SITE_BASE/$PROJECT_NAME"

if [ -z "$PROJECT_NAME" ]; then
    echo "Error: Debes especificar el nombre del proyecto. Uso: $0 nombre_proyecto"
    exit 1
fi

if [ ! -d "$SITE" ]; then
    echo "Error: El directorio $SITE no existe."
    exit 1
fi

chattr -R -i "$SITE" 2>/dev/null
chown -R www-data:www-data "$SITE"

find "$SITE" -type d -exec chmod 755 {} \;
find "$SITE" -type f -exec chmod 644 {} \;

if [ -f "$SITE/wp-config.php" ]; then
    if ! grep -q "FS_METHOD" "$SITE/wp-config.php"; then
        sed -i "/wp-settings.php/i define('FS_METHOD', 'direct');" "$SITE/wp-config.php"
    fi
fi

sudo systemctl reload apache2 2>/dev/null
sudo systemctl restart php*-fpm 2>/dev/null

echo "Permisos y configuración aplicados correctamente para: $PROJECT_NAME"