FROM php:8.3-apache

# Install dependencies and PHP extensions
RUN apt-get update && apt-get install -y \
    libpq-dev \
    curl \
    git \
    libzip-dev \
    && curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - \
    && apt-get install -y nodejs \
    && docker-php-ext-install pdo pdo_pgsql pcntl zip

# Enable Apache mod_rewrite
RUN a2enmod rewrite

# Set working directory
WORKDIR /var/www/html

# Copy only package files, install node deps (faster caches)
COPY package*.json ./
RUN npm ci --unsafe-perm

# Make git accept repo path (prevents dubious ownership)
RUN git config --global --add safe.directory /var/www/html

# Now copy app code
COPY . .

# Install composer
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer