#!/bin/sh

### BEGIN INIT INFO
# Provides:          mpdtaskserver
# Required-Start:    $local_fs $remote_fs $network $syslog
# Required-Stop:     $local_fs $remote_fs $network $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts the recpt1d
# Description: starts the mpdtask (USER=root)
### END INIT INFO

# cp mpdtask /etc/init.d
# cd /etc/init.d
# Auto Start , systemctl enable mpdtask
# Stopped , systemctl disable mpdtask

#TASKSERVER=/var/www/html/mpdweb/mpdtaskserver
TASKSERVER=`find /var/www -name "mpdtaskserver"`
TASKNAME=mpdtaskserver
if [ "${TASKSERVER}" = "" ] ; then
	echo "Module Not Found Initiator Forced stop"
	exit
fi

if [ -d /volumio ]; then
	USER=volumio
	echo -n "mpdtask Volumio mode\n"
else
	USER=""
	echo -n "mpdtask root mode\n"
fi

# define functions
start() {
	PID=`pgrep -f ${TASKSERVER}`
	if [ "${PID}" = "" ] ; then
		echo -n "Start ${TASKNAME} daemon.\n"
	    if [ ! -f /var/run/${TASKNAME}.pid ]; then
			touch /var/run/${TASKNAME}.pid
		fi
		su $USER -c "${TASKSERVER} > /dev/null 2>&1 &"
		RETVAL=$?
	else
		echo -n "${TASKNAME} daemon is running.\n"
		RETVAL=0
	fi
	return ${RETVAL}
}
stop() {
	PID=`pgrep -f ${TASKSERVER}`
	if [ "${PID}" != "" ] ; then
		echo -n "Stop ${TASKNAME} daemon.\n"
		TASKTREM=`find /var/www -name "mpdtaskend"`
		if [ "${TASKTREM}" = "" ] ; then
			echo "Module Not Found Initiator Forced stop"
			exit
			fi
#		/var/www/html/mpdweb/mpdtaskend > /dev/null 2>&1
		${TASKTREM} > /dev/null 2>&1

		RETVAL=$?
		if [ -f /var/run/${TASKNAME}.pid ]; then
			rm -f /var/run/${TASKNAME}.pid
		fi
	else
		echo -n "${TASKNAME} daemon is not running.\n"
		RETVAL=0
	fi
	return ${RETVAL}
}
restart() {
	stop
	start
}

case "$1" in
	start)
		start
	;;
	stop)
		stop
	;;
	restart)
		restart
	;;
	*)
		echo "Usage: $0 {start|stop|restart)\n"
		RETVAL=2
esac
