#!/bin/bash
#################################################################################################
#                                                                                               #
#  Set cinnamons screensaver to external program like 'start-as-screensaver.sh' bash script     #
#                                                                                               #
#  Scripted by Koentje  (remon@cobrasoft.nl)                                                    #
#                                                                                 version 1.3   #
#################################################################################################
#
#  DO NOT EDIT THIS SCRIPT !!!
#

srcpath=$(readlink -f $0)
workdir=$(dirname $srcpath)

arg1="$1"
arg2="$2"

if [ "$arg1" = "" ]; then
  echo -e "\n\e[32;1mSet screensaver to external program/script to run.\n"
  echo -e " Usage:  $(basename $0) set 'sh -c /path/to/start-as-screensaver.sh'    - Manually set to external program"
  echo -e "         $(basename $0) auto                                            - Let script automatically set screensaver"
  echo -e "         $(basename $0) reset                                           - Reset to standard screensaver"
  echo -e "         $(basename $0) read                                            - Show custom command value\e[0m\n"
  exit 1
fi

if [ "${arg1^^}" = "RESET" ]; then
  dconf write /org/cinnamon/desktop/screensaver/custom-screensaver-command "''"
  echo -e "\n\e[32mScreensaver set back to standard.\e[m\n"
  exit 0
elif [ "${arg1^^}" = "READ" ]; then
  echo -e "\n\e[32m Custom Command:  $(dconf read /org/cinnamon/desktop/screensaver/custom-screensaver-command)\e[m\n"
  exit 0
elif [ "${arg1^^}" = "AUTO" ]; then
  dconf write /org/cinnamon/desktop/screensaver/custom-screensaver-command "'$workdir/start-as-screensaver.sh'"
  echo -e "\n\e[32m Screensaver set to:  $(dconf read /org/cinnamon/desktop/screensaver/custom-screensaver-command)\e[m\n"
  exit 0
elif [ "${arg1^^}" = "SET" ]; then
    if [ "$arg2" = "" ]; then
      echo -e "\n\e[32mNo path to extarnal program!\e[m\n"
      exit 1
    else
      dconf write /org/cinnamon/desktop/screensaver/custom-screensaver-command "'$arg2'"
      echo -e "\n\e[32mScreensaver set to external program:  $arg2.\e[m\n"
      exit 0
    fi
fi
