#!/usr/bin/env bash

_docker_devbox_env_symlink() {
FILEPATH="$1"

DIRNAME=$(dirname -- "$DOCKER_DEVBOX_DIR/$FILEPATH")
FILENAME=$(basename -- "$DOCKER_DEVBOX_DIR/$FILEPATH")
EXTENSION="${FILENAME##*.}"
FILENAME="${FILENAME%.*}"

ACTIVE_ENV=0
MESSAGE="[30-env-symlinks] $DIRNAME/$FILENAME.$DOCKER_DEVBOX_ENV.$EXTENSION -> $DIRNAME/$FILENAME.$EXTENSION. (Symlink has not been created)"

for ENV in $DOCKER_DEVBOX_ENV_LIST; do
  if [ "$ENV" = "$DOCKER_DEVBOX_ENV" ]; then
    ACTIVE_ENV=1;
  fi
  if [ $ACTIVE_ENV = 1 ]; then
    if [ -f "$DIRNAME/$FILENAME.$ENV.$EXTENSION" ] && ([ ! -f "$DIRNAME/$FILENAME.$EXTENSION" ] || [ -h "$DIRNAME/$FILENAME.$EXTENSION" ]); then
      ln -rfs "$DIRNAME/$FILENAME.$ENV.$EXTENSION" "$DIRNAME/$FILENAME.$EXTENSION"
      MESSAGE="[30-env-symlinks] $DIRNAME/$FILENAME.$ENV.$EXTENSION -> $DIRNAME/$FILENAME.$EXTENSION"
      break
    fi
  fi
done

echo "$MESSAGE"
}

for env_file in $DOCKER_DEVBOX_ENV_SYMLINKS; do
  _docker_devbox_env_symlink "$env_file"
done
