#!/bin/bash

source /app/vagrant/provision/common.sh

# Variabel
ENV_FILE="/app/.env"
ENV_EXAMPLE="/app/.env.example"

# Engine configuration
echo "Configure timezone"
timedatectl set-timezone $(echo "$1") --no-ask-password
echo "Done!"

echo "Enabling site configuration"
ln -s /app/vagrant/nginx/default.conf /etc/nginx/default.conf
ln -s /app/vagrant/nginx/app.conf /etc/nginx/sites-enabled/app.conf
echo "Done!"
# End engine configuration

# App configuration
echo "Install project dependencies"
cd /app
composer --no-progress --prefer-dist install
echo "Done!"

if [ ! -f "$ENV_FILE" ]; then
    echo "Create .env"
    cp "$ENV_EXAMPLE" "$ENV_FILE"
    echo "Done!"
fi

export $(grep -v '^#' "$ENV_FILE" | xargs)

echo "Generate Key"
php /app/artisan key:generate
echo "Done!"

echo "Update .env"
sudo sed -i "s|APP_URL=.*|APP_URL=http://$(echo "$3")|" "$ENV_FILE"
sudo sed -i "s|DB_DATABASE=.*|DB_DATABASE=$(echo "$2")|" "$ENV_FILE"
sudo sed -i "s|DB_USERNAME=.*|DB_USERNAME=$(echo "$2")|" "$ENV_FILE"
sudo sed -i "s|DB_PASSWORD=.*|DB_PASSWORD=$(echo "$2")|" "$ENV_FILE"
sudo sed -i "s|MAIL_HOST=.*|MAIL_HOST=$(echo "$3")|" "$ENV_FILE"
echo "Done!"

export $(grep -v '^#' "$ENV_FILE" | xargs)

echo "Change to php8.1"
sudo update-alternatives --set php /usr/bin/php8.1
echo "Done Change to php8.1!"

echo "Initializing databases for MySQL!"
mysql -u homestead -psecret -e "CREATE DATABASE IF NOT EXISTS ${DB_DATABASE} DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_unicode_ci;"
mysql -u homestead -psecret -e "CREATE DATABASE IF NOT EXISTS testing DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_unicode_ci;"
mysql -u homestead -psecret -e "CREATE USER IF NOT EXISTS '${DB_USERNAME}'@'%' IDENTIFIED BY '${DB_PASSWORD}';"
mysql -u homestead -psecret -e "GRANT ALL PRIVILEGES ON ${DB_DATABASE}.* TO '${DB_USERNAME}'@'%';"
mysql -u homestead -psecret -e "GRANT ALL PRIVILEGES ON testing.* TO '${DB_USERNAME}'@'%';"
echo "Done!"

echo "Importing database pixartsi_monggopro 13/01/2024"
mysql -u "${DB_USERNAME}" -p"${DB_PASSWORD}" "${DB_DATABASE}" < /app/database/backup/pixartsi_monggopro.sql
echo "Database import completed"

# echo "Migrate DB"
# php /app/artisan migrate --seed
# echo "Done!"
#End app configuration
