#!/bin/bash
while getopts ":s:" opt; do
    case $opt in
        s)
            SITE="$OPTARG"
            ;;
        \?)
            echo "Invalid option: -$OPTARG" >&2
            echo "Usage: $0 -s coffeeparts.ku.io" >&2
            echo "" >&2
            echo "    Options:" >&2
            echo "             -s    <SITE_NAME> to create folders for the given site in /var/www. Eg.: coffeeparts.sku.io" >&2
            echo "" >&2
            exit 1
            ;;
        :)
            echo "Option -$OPTARG requires an argument." >&2
            exit 1
            ;;
    esac
done

if [[ -z "${SITE}" ]]
    then
    echo "You must specify site name with -s <SITE>" >&2
    exit 1
fi

echo "Building folder tree: /var/www/${SITE}"

mkdir -p /var/www/${SITE}
cd /var/www/${SITE}
mkdir -p builds storage
mkdir -p storage/app/public storage/exports storage/framework storage/imports storage/logs
chmod -R 777 storage
mkdir -p /var/www/${SITE}/builds/1/public
ln -sn /var/www/${SITE}/storage/logs           /var/www/${SITE}/logs #2> /dev/null
ln -sn /var/www/${SITE}/builds/1               /var/www/${SITE}/builds/current #2> /dev/null
ln -sn /var/www/${SITE}/builds/current         /var/www/${SITE}/current #2> /dev/null
ln -sn /var/www/${SITE}/storage                /var/www/${SITE}/builds/current/storage #2> /dev/null
ln -sn /var/www/${SITE}/builds/current/public  /var/www/${SITE}/release #2> /dev/null
ln -sn /var/www/${SITE}/storage/app/public     /var/www/${SITE}/current/public/storage #2> /dev/null

chown sku:sku   /var/www/${SITE}
chown sku:sku   /var/www/${SITE}/current
chown sku:sku   /var/www/${SITE}/logs
chown sku:sku   /var/www/${SITE}/release
chown sku:sku   /var/www/${SITE}/builds
chown sku:sku   /var/www/${SITE}/builds/current
chown -R sku:sku   /var/www/${SITE}/builds/1
chown -R www-data:www-data storage

