#! /bin/sh

# chkconfig:   345 60 40

PATH=/sbin:/usr/sbin:/bin:/usr/bin
NAME=jaga-background
PIDFILE="/var/run/$NAME.pid"
USER=apache
JAGA_DIR=/home/phalcon/jaga-phalcon
DAEMON="/usr/bin/php cli/cli.php Background"

cd $JAGA_DIR
. /etc/rc.d/init.d/functions

check_pidfile()
{
		if [ -f $PIDFILE ]; then
			PID="`cat "$PIDFILE"`"
			if [ -n "$PID" ] && [ "`ps -p "$PID" --no-headers -o comm`" != "php" ]; then
					rm -f $PIDFILE &> /dev/null
			fi
		fi        
}

start()
{
        echo -n $"Starting $NAME: "
        check_pidfile
        if [ -f $PIDFILE ];
        then
                echo -n $"$NAME: already running"
                success
                echo
                exit 0;
        fi

        daemon --pidfile "$PIDFILE" --user "$USER" --check $NAME "$DAEMON >/dev/null 2>&1 & ";
		PID=`ps aux | grep -v 'grep' | grep "$DAEMON" | awk '{print $2}'`;
        RETVAL=$?
        if [ $RETVAL -eq 0 ];
        then
                echo $PID > $PIDFILE
                touch /var/lock/subsys/$NAME && success || failure
                echo
        else
                rm -f $PIDFILE
                rm -f /var/lock/subsys/$NAME
                exit 7;
        fi
}

stop()
{

        echo -n $"Stopping $NAME: "
		PID="`cat "$PIDFILE"`"
        [ -n "$PID" ] && kill -9 "$PID" >/dev/null 2>&1

        # remove pid files
        if [ $RETVAL -eq 0 ];
        then
                rm -f /var/lock/subsys/$NAME
                rm -f /var/run/$NAME.pid
        fi

        if [ $RETVAL -eq 0 ];
        then
                success
        else
                failure
                RETVAL=1
        fi
        echo
}

restart ()
{
        stop
        start
}

status ()
{
        check_pidfile
        if [ -f $PIDFILE ];
        then
                echo -n "$NAME is running..."
                success
                echo
        else
                echo -n "$NAME is not running..."
                failure
                echo
        fi
        exit 0;
}

RETVAL=0

case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  restart|force-reload)
    restart
    ;;
  status)
    status
    ;;
  *)
    echo "Usage: $0 {start|stop|status|restart|force-reload}"
    RETVAL=1
esac

exit $RETVAL