### Generic variables and functions
### -------------------------------

if [ -z "${SYNOPKG_PKGNAME}" ] || [ -z "${SYNOPKG_DSM_VERSION_MAJOR}" ]; then
  echo "Error: Environment variables are not set." 1>&2;
  echo "Please run me using synopkg instead. Example: \"synopkg start [packagename]\"" 1>&2;
  exit 1
fi

USER="iVentoy"
EFF_USER="iVentoy"

# start-stop-status script redirect stdout/stderr to LOG_FILE
LOG_FILE="${SYNOPKG_PKGVAR}/${SYNOPKG_PKGNAME}.log"

# Service command has to deliver its pid into PID_FILE
if [[ `id -u` -eq 0 ]]; then
    PID_FILE="/var/run/iventoy.pid"
else
   PID_FILE="${SYNOPKG_PKGVAR}/${SYNOPKG_PKGNAME}.pid" 
fi


### Package specific variables and functions
### ----------------------------------------

rootPath="/var/packages/iVentoy/shares/iVentoy"

SVC_CWD="${SYNOPKG_PKGDEST}"
SERVICE_COMMAND="./iventoy.sh -R start"
SVC_BACKGROUND=y
SVC_WRITE_PID=y

service_postinst () {
    for dir in data doc iso log user; do
        if [ ! -d "${rootPath}/${dir}" ]; then
            $MKDIR "${rootPath}/${dir}"
        fi
        $CP "${SYNOPKG_PKGDEST}/${dir}/." "${rootPath}/${dir}/"
        $RM "${SYNOPKG_PKGDEST}/${dir}"
        $LN "${rootPath}/${dir}" "${SYNOPKG_PKGDEST}/${dir}"
    done
}

service_postupgrade () {
    for dir in data doc iso log user; do
        if [ ! -d "${rootPath}/${dir}" ]; then
            $MKDIR "${rootPath}/${dir}"
        fi
        $CP "${SYNOPKG_PKGDEST}/${dir}/." "${rootPath}/${dir}/"
        $RM "${SYNOPKG_PKGDEST}/${dir}"
        $LN "${rootPath}/${dir}" "${SYNOPKG_PKGDEST}/${dir}"
    done
}
