FROM php:8.0.5-apache

# 1. Cambiar repositorios a 'archive' porque Debian Buster ya es EOL
RUN sed -i 's/deb.debian.org/archive.debian.org/g' /etc/apt/sources.list && \
    sed -i 's|security.debian.org/debian-security|archive.debian.org/debian-security|g' /etc/apt/sources.list && \
    sed -i '/stretch-updates/d' /etc/apt/sources.list && \
    sed -i '/buster-updates/d' /etc/apt/sources.list

# 2. Instalar dependencias necesarias para CI4
RUN apt-get update && apt-get install -y \
    libicu-dev \
    libpng-dev \
    libzip-dev \
    zip \
    unzip \
    git \
    && docker-php-ext-configure intl \
    && docker-php-ext-install intl mysqli pdo_mysql zip \
    && a2enmod rewrite

# 3. Configurar ServerName para eliminar el warning
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf

# 4. Configurar DocumentRoot hacia /public (obligatorio para CI4)
ENV APACHE_DOCUMENT_ROOT /var/www/html/public
RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf
RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf

# 5. Configurar AllowOverride All para habilitar .htaccess (CRUCIAL para CI4)
RUN sed -i '/<Directory ${APACHE_DOCUMENT_ROOT}>/,/<\/Directory>/ s/AllowOverride None/AllowOverride All/' /etc/apache2/apache2.conf

# 6. Instalar Composer
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer

# 7. Configurar variables de entorno para CI4
ENV CI_ENVIRONMENT=development
ENV APP_ENV=development

WORKDIR /var/www/html