#!/bin/sh
# Linux Standard Base comments
### BEGIN INIT INFO
# Provides:          ZNC
# Required-Start:    $local_fs $network $remote_fs
# Required-Stop:     $local_fs $network $remote_fs
# Should-Start:
# Should-Stop:
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: ZNC
# Description:       ZNC
### END INIT INFO

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="ZNC"
NAME=znc
DAEMON=/home/jocke/bin/znc/znc-install/bin/$NAME
USER=jocke

# Gracefully exit if the package has been removed.
[ -x $DAEMON ] || exit 0

d_start() {
	echo "Starting $NAME..."
	
	# already running?
	is_running=`ps aux|grep -i "znc"|grep -viE "(screen|grep|bash|init)"|wc -l`
	
	if [ $is_running -eq 0 ]; then
		su - $USER -c "$DAEMON"
	else 
		echo "$NAME is already running."
	fi
}

d_stop() {
	echo "Stopping $NAME..."

	# already running?
        is_running=`ps aux|grep -i "znc"|grep -viE "(screen|grep|bash|init)"|wc -l`

        if [ $is_running -ne 0 ]; then
		# First, find PID
        	pid=`ps -eo pid,args | grep -i "znc" | grep -viE "(grep|screen|bash|init)" | cut -c1-6 | perl -wple 's| ||g'`

		if [ ! -z $pid ]; then
        		# Then we kill it
        		echo "Killing $NAME with PID $pid..."
        		kill $pid &
        	else
        		echo "No PID found. Not killed."
        	fi
        else
                echo "$NAME is not running."
        fi
}


case "$1" in
  start)
	d_start
	;;
  stop)
	d_stop
	;;
  restart|force-reload)
	echo -n "Restarting $NAME"
	d_stop
	sleep 1
	d_start
	;;
  *)
	echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
	exit 1
	;;
esac

exit 0
