#!/usr/bin/env bash
#
# Symlinks the Git hooks from the coding standards library into the project
#
# @author      Carwyn Balch
# @copyright   Copyright (c) 2021 Solviq Ltd
# @license     MIT

PROJECT_DIR=`git rev-parse --show-toplevel`
PROJECT_HOOKS_DIR="${PROJECT_DIR}/.git/hooks"

CWD="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
STANDARDS_HOOKS_DIR=$(realpath "${CWD}/../git/hooks")

for hookfile in ${STANDARDS_HOOKS_DIR}/*; do
  hookname="${hookfile##*/}"
  if [[ ! -e "${PROJECT_HOOKS_DIR}/${hookname}" ]]; then
    echo Installing Git hook $(realpath --relative-to="${PROJECT_DIR}" "${hookfile}")
    ln -s $(realpath --relative-to="${PROJECT_HOOKS_DIR}" "${hookfile}") "${PROJECT_HOOKS_DIR}/${hookname}"
  fi

  chmod 0755 "${hookfile}"
done
