#!/bin/bash

if [ -n "$PHP_EXTENSIONS" ]; then
	for extension in $PHP_EXTENSIONS; do
		if ! php -m | grep -q $extension; then
			docker-php-ext-install $PHP_EXTENSIONS
		fi
	done
fi

if ! id -u "user" >/dev/null ; then
	useradd -u 1000 -m user
	mkdir /var/www/html/vendor
	chown -R user:user /var/www/html/vendor
fi

if [ ! -x /usr/bin/unzip ]; then
	apt update && apt install unzip
fi

if [ ! -x /usr/local/bin/wp ]; then
	curl -z /usr/local/bin/wp -o /usr/local/bin/wp https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
	chmod +x /usr/local/bin/wp
fi

if [ ! -x /usr/local/bin/composer ]; then
	mkdir -p /var/www/.composer
	chown user:user /var/www/.composer

	curl https://getcomposer.org/installer -o /tmp/composer-setup.php
	php -r "if (hash_file('sha384', '/tmp/composer-setup.php') === 'e21205b207c3ff031906575712edab6f13eb0b361f2085f1f1237b7126d785e826a450292b6cfd1d64d92e6563bbde02') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
	php /tmp/composer-setup.php
	rm /tmp/composer-setup.php

	mv /var/www/html/composer.phar /usr/local/bin/composer
fi

export APACHE_RUN_USER=user
export APACHE_RUN_GROUP=user

# Increase PHP memory limiit because it's A HOG
echo 'memory_limit = 256M' >> /usr/local/etc/php/conf.d/docker-php-memlimit.ini;

if [ -n "$@" ]; then
	"$@"
fi

# Upstream ENTRYPOINT
# https://github.com/docker-library/wordpress/blob/master/php7.4/apache/Dockerfile#L120
/usr/local/bin/docker-entrypoint.sh apache2-foreground
