#!/bin/bash
# to execute: /opt/bitnami/apache2/htdocs/global/libraries/scssphp/bin/inotifywait.sh&
## we need '&' at the end to run in daemon mode.
# to kill:
## ps -ef | grep inotifywait
## >>> you will always see one result! (which represents the act of grep-searching for 'inotifywait' itself)
## kill 1234  (where 1234 = process id)
## https://unix.stackexchange.com/questions/62182/please-explain-this-output-of-ps-ef-command

# DOES NOT auto-restart when system is rebooted!

# documentation:
## https://linux.die.net/man/1/inotifywait
## https://askubuntu.com/questions/819265/bash-script-to-monitor-file-change-and-execute-command

# -d flag = daemon
# -q flag = quiet (does not spit out "Setting up watches" messaging)
# -r flag = recursive (all subdirectories)

CURPATH=`pwd`

inotifywait -qrm --daemon -o /dev/stdout --timefmt '%d/%m/%y %H:%M' --format '%T %w %f' \
-e modify /opt/bitnami/apache2/htdocs/8balldevelopment.com/css /opt/bitnami/apache2/htdocs/openwebproject.org/css | while read date time dir file; do
if [[ $file == *".scss"* ]]; then
  
  FILECHANGE=${dir}${file}
  # convert absolute path to relative
  #FILECHANGEREL=`echo "$FILECHANGE" | sed 's_'$CURPATH'/__'`
  file_css="${FILECHANGE/.scss/.css}";
  
  #echo "At ${time} on ${date}, file $FILECHANGE was modified"
  #echo ".....writing comp to file ${file_css}"
  #echo "At ${time} on ${date}, file $FILECHANGE was modified" >> "/opt/bitnami/apache2/htdocs/grapevine.today/_debug-log"
  #echo ".....writing comp to file ${file_css}" >> "/opt/bitnami/apache2/htdocs/grapevine.today/_debug-log"
  /opt/bitnami/apache2/htdocs/global/libraries/scssphp/bin/pscss $FILECHANGE >$file_css

fi
done

# inotifywait -qm --daemon -o /dev/stdout --timefmt '%d/%m/%y %H:%M' --format '%T %w %f' \
# -e modify /opt/bitnami/apache2/htdocs/grapevine.today/virtual | while read date time dir file; do
# if [[ $file == *"-scss.php"* ]]; then
# 
#   FILECHANGE=${dir}${file}
#   file_css="${FILECHANGE/.php/.css}";
#   /opt/bitnami/apache2/htdocs/grapevine.today/libraries/scssphp/bin/pscss $FILECHANGE >$file_css
# 
# fi
# done